DL-266
The forge delivery cursor (delivered_revision) advances on the agent’s in-band forge delivery ack — ForgeNotificationAck{subscription_id, revision}, an additive AgentFrame variant emitted at turn-end flush — NEVER on dispatch success (Matt’s W3 ruling, option beta), aligning this lane with the dispatch arm’s own model (“The cursor is never advanced on send — it advances only later on the recipient’s delivery_ack”, go/internal/runnerhub/dispatch_control.go:31-33). Every pre-ack loss (synchronous refusal, async RunnerError via router.complete, agent death before flush) leaves the cursor unadvanced and is healed by the reconcile sweep within one backstop interval. The correlation is new work: today’s delivery_ack carries only a comms message_id (agent.proto:232-239). This reopens the frozen delivery record’s advance-signal clause (compass-notification-delivery/design.md:894-897) and rides the freeze-gate ratification, bundled with the fresh-subscription catch-up baseline moving from DL-053’s “at Subscribe time” to first-observed-event/sweep (bounded by ≤1 backstop interval) — also decided in W3’s ruling.
Status: Active (Matt, 2026-08-26)
Record: ../../server/compass-forge-agent-notification/design.md#resolved-decisions-matt-2026-08-26