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

Each backup lane says what it backs up and who reads it after spin-down, and a lane without that line says so on the backup tile #9067

shipped production is serving it opened this has it
opened this

For: the second box of #8949. The lane names live in FORGE_BACKUP_LANES (configuration, never the repository), so the line has to live there too and be shown where people look.

Done when:

  • [x] A lane in FORGE_BACKUP_LANES may carry backsUp (one sentence) and afterSpinDown (who reads it once the platform is gone, or the word retired); both are validated in src/snapshot/lanes.ts (strings, bounded length, control bytes replaced like every other lane value).
  • [x] verdict.lanes in the MCP backups tool, the Resilience dialog and /settings/backups show each lane's two values beside its newest object; a lane missing either says No line yet: say what it backs up and who reads it after spin-down — information, not red, so the tile stays green.
  • [x] A lane marked retired is not read and never turns the tile red; it is listed as retired.
  • [x] docs/features/backup-truth.md shows the new fields in the JSON example and replaces the hand-filled "A line per lane" table with a pointer to where the values now show.
  • [x] Tests: a lane with both values shows them; one with neither shows the sentence; a retired lane with an unreachable store leaves the verdict green.

Files: src/snapshot/lanes.ts, src/actions/resilience.ts (or wherever the verdict is built), src/web/pages/backups.ts, the TUI Resilience screen, docs/features/backup-truth.md, test/. Risks: keys must never reach any of these surfaces; reuse the existing scrubbing.

commented

Reviewed pull #9078 at its head: ticked A lane in FORGE_BACKUP_LANES may carry backsUp (one sentence) and afterSpinDown (who reads it once the platform is gone, or the word retired); both are validated in src/snapshot/lanes.ts (strings, bounded length, control bytes replaced like every other lane value).; verdict.lanes in the MCP backups tool, the Resilience dialog and /settings/backups show each lane's two values beside its newest object; a lane missing either says No line yet: say what it backs up and who reads it after spin-down — information, not red, so the tile stays green.; A lane marked retired is not read and never turns the tile red; it is listed as retired.; docs/features/backup-truth.md shows the new fields in the JSON example and replaces the hand-filled "A line per lane" table with a pointer to where the values now show.; Tests: a lane with both values shows them; one with neither shows the sentence; a retired lane with an unreachable store leaves the verdict green..

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs