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

The forge computes the "idle crew" flow alarm (#5930) #6344

shipped production is serving it opened this has it
opened this

Part of #5930, the flow alarm: nothing approved sits still. Today the steward's probe computes this outside the forge; the forge must own it.

Done:

  • [ ] src/flow/alarm_idle_crew.ts exports one function taking the app (or db) and now, answering { fired: boolean, since?: string, says: string }. It fires when work is ready, the spend ceiling is not reached, and no agent run has started for 15 min. says is one plain sentence, e.g. "12 issues are ready and no crew run has started for 40 min."
  • [ ] A test covers fired and not fired: ready work with the last run 16 min ago fires; no ready work, the ceiling reached, or a run 14 min ago does not. It fails without the file.
  • [ ] Nothing draws it yet; the banner is a separate issue. Keep to this one file and its test, so the four alarms land in parallel without touching each other.

Files: src/flow/alarm_idle_crew.ts, a test under test/.

Before pushing: bun x tsc --noEmit and the tests you add or touch; bun scripts/design-lint.ts if src/web/ changes. Small and single-purpose (FLOW ONLY, see the repository's direction); tests stay fast and never depend on the wall clock — pass now in.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs