Builds a facade for one building's ATA group.
Home API client (carries the device registry).
Identity of the /context building.
Identifier the group is keyed on.
Display name captured at build time.
Resolver returning the cached device facade for a member model.
The building's ATA devices as currently registered; re-resolved on every access so syncs (units added, removed or re-homed) are followed.
The member device models.
Display name of the building, as of the latest sync that still holds one of its devices; the last observed name once emptied.
The user-facing label of the account's building.
Read the building's aggregated group state: fields where every member
agrees carry the shared value, diverging fields fold to null (the
wire's mixed marker). No wire call — members' synced states are reused.
A success result wrapping the aggregated group state.
Apply a Classic group state to every member device. The delta is
translated to the Home vocabulary once, then fanned out; members
already matching it (a tolerated NoChangesError from their
update) are fine by definition and do not fail the group write.
Partial Classic group state to push to the members.
Facade for one
/contextbuilding's ATA devices — the account-level group. MELCloud Home has no group endpoint, so the group contract is emulated over the members: reads aggregate the devices' states (fields where members diverge fold tonull, the wire's mixed marker) and writes fan out to every member.