Pending updates: short-circuit the fleet flatten when nothing changed (graph watermark) #62

Open
opened 2026-11-06 15:24:42 -05:00 by dohertj2 · 0 comments
Owner

Register row 124 (deferred-work register).

PendingUpdatesEvaluator.EvaluateAsync re-flattens every deployed instance via DeploymentService.GetInstanceStalenessAsync on every PendingUpdatesCacheTtl (60 s) expiry while any Deployer/Admin circuit is open, even if nothing changed. Needs a cheap "has anything changed" signal.

Revisit trigger (from register): Fleet flatten cost becomes measurable against the TTL on a large deployment.

Current state: Single-flight TTL cache bounds cost to one flatten per TTL fleet-wide; no watermark.
Related: docs/plans/2026-09-14-pending-updates-design.md §3.2.

Source: docs/plans/2026-07-08-deferred-work-register.md row 124

Register row 124 (deferred-work register). `PendingUpdatesEvaluator.EvaluateAsync` re-flattens every deployed instance via `DeploymentService.GetInstanceStalenessAsync` on every `PendingUpdatesCacheTtl` (60 s) expiry while any Deployer/Admin circuit is open, even if nothing changed. Needs a cheap "has anything changed" signal. **Revisit trigger (from register):** Fleet flatten cost becomes measurable against the TTL on a large deployment. **Current state:** Single-flight TTL cache bounds cost to one flatten per TTL fleet-wide; no watermark. Related: `docs/plans/2026-09-14-pending-updates-design.md` §3.2. Source: `docs/plans/2026-07-08-deferred-work-register.md` row 124
dohertj2 added the type:debtpriority:p3migrated labels 2026-11-06 15:24:42 -05:00
Sign in to join this conversation.