I am using the list of actions to determine the capabilities of the device. E.g., if it has SetSpeed, then I am assuming that speeds are supported for a fan, if it has SetBrightness, I am assuming the fan light is dimmable. Because I can’t enable and disable controls for devices in the HA system (ISY 994i), I have different device types (different node types) for, e.g., dimmable light and non-dimmable light. In other instances, I have defined a property value for “N/A” and just ignore commands to change that property, e.g. the case where direction is not supported (no SetDirection action).
Where the BB will track state, I am letting it do so. I am also counting on users putting away their native remotes and using the Bond Home app and/or their HA system to change the state of the fan/light/fireplace/etc., thereby ensuring that the state can be trusted.