Linear: ENG-471
Summary #
docs/runbook.md: one page for operating the spindle. The README now links to it.
- Architecture and state: where each piece of state lives (mill
/data, the VM's/var/lib/secrets, the bucket, the signing key). - Health and connection checks:
/_health,did.json,executor list, and the mill and VM connection log lines. - Upgrading the pinned Tangled version:
- one PR that changes both pins;
railway up;- the proven detached build and
switch-to-configurationon the VM.
- Executor tokens: the commands proven in ENG-468.
- Rotation uses a new registration name, because
addrejects an existing name with a different token. It also needsexecutor reset-streamon the idle VM before the reconnect, thenrevokeof the old name. - The lead will run this drill exactly as written.
- Rotation uses a new registration name, because
- Bucket credentials, signing key (restore and lost-key), mill backups and
/datarestore, outages, cost.
Steps that haven't been exercised yet are marked "(not yet drilled)".
Verify #
$ mise run check → exit 0 (… nixos-system-spindle-exec-1 … bgyd1x38 drv)
all 19 documented shell blocks pass `bash -n` (syntax only, not executed)
secret-pattern grep over docs/runbook.md: 0 hits
🤖 Generated with Claude Code