# Upgrade Guide — vNEXT

<!-- assembled-by: assemble-next-md -->
<!-- bump: patch -->

## What Changed

DeliveryFailureSentinel.start() performs an immediate awaited first drain (startup tick) before relying on the 5-minute watchdog interval. Watchdog cadence, event-driven ticks, per-topic pacing, backoff, and purge rules unchanged.

## What to Tell Your User

Messages that queued up while your agent's server was restarting now deliver the moment it comes back, instead of waiting up to five extra minutes — which under back-to-back update restarts could mean never, as the next restart landed first.

## Summary of New Capabilities

- A started delivery sentinel means a drained backlog: recovery no longer depends on the watchdog timer surviving the up-window.

## Evidence

Live (2026-06-05 ~15:40-16:50Z, echo): a release-train restart cascade produced up-windows shorter than boot-time + the 5-min first tick; five queued operator messages survived FOUR up-windows undelivered while fresh sends in the same windows succeeded. Pinned by a new integration test (pre-existing http_code-0 backlog delivered by start() alone, no explicit tick) plus the re-pinned recovery happy path (start drains; subsequent tick finds zero) — 71/71 across the sentinel suites.
