You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
Dry-run mode, toggleable at any time from this integration's Configure page (no restart needed - access_control.is_dry_run() re-reads the config entry's options fresh on every call, the same "never cache" approach check_armed() uses for the arm file). When enabled, every write tool (write_automation, create_helper/update_helper/delete_helper, write_dashboard) is blocked at the gate before any of its own logic runs - the tool call's own validated input is returned to the agent as a would_apply preview instead of being applied. This is a policy block, not a simulation: it doesn't verify the write would have succeeded, only that it didn't happen. Implemented as a new WriteGatedTool base class (extends GatedTool) so every write tool gets this centrally rather than each one needing its own check. reload_domain/check_config and every read-only tool are unaffected either way.
strings.json's options section and this integration's first options flow (options_flow.py) - previously this integration had no options at all, config-entry-only with a single confirm step.