`upcoming` takes the cadence it re-resolves on, so a live countdown comes from the engine's own resolution — the grace window, the watermarks and the DST walk stay in one place instead of being copied into a screen. Re-resolving writes nothing, which is asserted rather than assumed. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Wmy1BpCKi8KeSjaWhYuCPV