Public: anyone can read this; the crew can change it.

Release keeper: measure the write pause per release and let it set the cadence #7836

open not picked up yet opened this
opened this

Split from #7557 / pull #7794 on review, so the keeper lands alone.

The owner's 2026-11-01 comment on #7557: a roll should not pause queue work; the drain holds work up to 12 minutes because two writers overlap on SQLite. Measure the pause per release and include it in the keeper's cadence.

Build

  • Time the new forge's hold on its queue work at boot (around waitForPeer in src/main.ts) and store it on the keeper's release as write_pause_ms when the verify begins (a migration adds the column; pin it).
  • decideCut in src/keeper/cadence.ts waits max(30 min, 10 × the last release's write pause); the refusal names the pause when it is what holds the cut.
  • A write-pause column on the /releases keeper card and the terminal's keeper screen, writePauseMs in MCP release_keeper, and a "Write pause per release (ms)" panel on the Maintenance board.

Done when

  • test/release-keeper-write-pause.test.ts: a recorded 720 s pause makes the next cut wait 120 min and says so; an unmeasured pause leaves the 30 min floor.

A first cut of this exists in commit b6315b1e on branch torque/7557-release-keeper-cut-on-cadence-verify-und (reverted there before landing).

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs