v1.6.0-rc.8
Full Changelog: v1.6.0-rc.7...v1.6.0-rc.8
[1.6.0-rc.8] — 2026-07-28
Fixed
- Auto-update no longer stops when the update-available notification rule is scoped to specific channels (#623). Action triggers (
docker,dockercompose,command) were gated by the same trigger allow-list on theupdate-availablenotification rule that routes messages to notification channels — but action-trigger ids are deliberately barred from that list by the API validator, the UI picker, and the documented rule model, so the moment any notification trigger was assigned to the rule, every action trigger (local and agent-hosted alike) silently failed the membership check withexcluded-from-allow-listand auto-update stopped fleet-wide, with only a debug log as evidence. Action-category triggers are now exempt from the allow-list membership check ingetUpdateAvailableAutoTriggerDispatchDecision(app/triggers/providers/Trigger.ts), mirroring the exemption the lifecycle-notification path has always had; disabling the rule itself still acts as the global kill switch. Present since the rule allow-list landed in v1.6.0-rc.1. - Controller-set update policy overrides no longer vanish from agent-managed containers (#565). Remote agents resolve their own declarative (env/label) policy but never learn controller-side runtime overrides, so every container report they send carries an explicit empty override layer. The controller persisted that layer verbatim, and
updateContainer(app/store/container.ts) treated any presentupdatePolicyOverrideskey as authoritative — clearing maturity mode/min-age days, skip lists, and snoozes on every periodic agent sync or manual recheck. This was the settings-deletion mechanism behind #565, distinct from the soak-clock resets fixed in #568 and rc.7. The controller now reapplies its stored overrides when ingesting agent reports, and the store itself encodes the rule the recreate path has had since #497: an empty incoming override layer carries no controller intent and only clears stored overrides when the update-policy PATCH handler marks the write as authoritative, so deliberate clears from the UI still stick.