docs(phase 3.3+3.4): event-day runbook + rollback recipe #28

Merged
deco merged 1 commit from feat/phase-3.3-event-runbook into main 2026-05-22 01:17:09 +03:00
Owner

Summary

Phase 3.3 + 3.4 of the Stream-a-Thon plan, combined into one artifact (docs/RUNBOOK_EVENT.md) since they're both content in the same file.

Phase 3.3 — the primary event-day playbook operators read start-to-finish:

  • Roles (Driver / Observer) and station setup
  • T-60 pre-event checklist
  • T-time event-day timeline (T-60 setup → doors open → T+30 teardown)
  • Normal-operation cadence (every 5 / 30 min observer checks)
  • S1–S8 quick-reference matrix linking into RUNBOOK_FALLBACK.md for deep procedures
  • S8 plugin-free operator mode drill — a concrete five-step exercise

Phase 3.4 — lands as §7 Rollback recipe: three independently-rollable surfaces (webui git revert + restart, OBS scene-collection xcopy from scenes.backup.{ISO}, plugin = off-scope per Q6 pinning). Each surface has its own verify checklist; an end-to-end smoke sequence runs after any rollback so a broken rollback is itself caught immediately.

Design choices

  • No duplication with RUNBOOK_FALLBACK.md. That file (from Phase 0.5.4) already has detailed S1/S3/S7/S8 procedures; this file links into it rather than copying. The fallback is the "if you got here, you have a specific problem" appendix; RUNBOOK_EVENT.md is the primary start-to-finish playbook.
  • Anchors verified against the fallback's actual section headings (GitHub-style slugs with em-dash → \"--\").
  • Two-operator sign-off lives at §9 as the gate that blocks doors-open.

Acceptance gates

These are out-of-session human checks, recorded as §9 sign-offs in the file:

  • Phase 3.3: two-operator dry-run end-to-end from runbook only, including the S8 drill
  • Phase 3.4: rollback recipes tested end-to-end on the real host

Files

  • docs/RUNBOOK_EVENT.md (new)

Test plan

  • 184/184 jest tests pass (no code changes; sanity check)
  • Internal links into RUNBOOK_FALLBACK.md resolve to real headings
  • Two operators dry-run §2 (pre-event setup) → §3 (timeline rehearsal) → §6 (S8 drill) → §8 (teardown) end-to-end without referring to anything outside the two runbooks
  • Phase 3.4: §7.1 webui rollback tested on a non-program instance; §7.2 scene-collection rollback tested on a copy of the scenes/ tree
## Summary Phase 3.3 + 3.4 of the Stream-a-Thon plan, combined into one artifact (`docs/RUNBOOK_EVENT.md`) since they're both content in the same file. **Phase 3.3** — the primary event-day playbook operators read start-to-finish: - Roles (Driver / Observer) and station setup - T-60 pre-event checklist - T-time event-day timeline (T-60 setup → doors open → T+30 teardown) - Normal-operation cadence (every 5 / 30 min observer checks) - S1–S8 quick-reference matrix linking into `RUNBOOK_FALLBACK.md` for deep procedures - S8 plugin-free operator mode drill — a concrete five-step exercise **Phase 3.4** — lands as `§7 Rollback recipe`: three independently-rollable surfaces (webui git revert + restart, OBS scene-collection xcopy from `scenes.backup.{ISO}`, plugin = off-scope per Q6 pinning). Each surface has its own verify checklist; an end-to-end smoke sequence runs after any rollback so a broken rollback is itself caught immediately. ## Design choices - **No duplication with `RUNBOOK_FALLBACK.md`.** That file (from Phase 0.5.4) already has detailed S1/S3/S7/S8 procedures; this file links into it rather than copying. The fallback is the \"if you got here, you have a specific problem\" appendix; RUNBOOK_EVENT.md is the primary start-to-finish playbook. - **Anchors verified** against the fallback's actual section headings (GitHub-style slugs with em-dash → `\"--\"`). - **Two-operator sign-off** lives at §9 as the gate that blocks doors-open. ## Acceptance gates These are out-of-session human checks, recorded as §9 sign-offs in the file: - Phase 3.3: two-operator dry-run end-to-end from runbook only, including the S8 drill - Phase 3.4: rollback recipes tested end-to-end on the real host ## Files - `docs/RUNBOOK_EVENT.md` (new) ## Test plan - [x] 184/184 jest tests pass (no code changes; sanity check) - [x] Internal links into `RUNBOOK_FALLBACK.md` resolve to real headings - [ ] Two operators dry-run §2 (pre-event setup) → §3 (timeline rehearsal) → §6 (S8 drill) → §8 (teardown) end-to-end without referring to anything outside the two runbooks - [ ] Phase 3.4: §7.1 webui rollback tested on a non-program instance; §7.2 scene-collection rollback tested on a copy of the scenes/ tree
docs(phase 3.3+3.4): event-day runbook (RUNBOOK_EVENT.md) + rollback recipe
All checks were successful
Lint and Build / build (pull_request) Successful in 2m50s
8b319bb32a
Primary event-day playbook operators read start-to-finish. Covers
roles (Driver / Observer), T-60 pre-event checklist, T-time event-day
timeline (T-60 setup → doors open → T+30 teardown), 5/30-min
observer cadence, and an S1–S8 quick-reference matrix that links into
RUNBOOK_FALLBACK.md for the deep emergency procedures rather than
duplicating them. The S8 plugin-free operator mode drill is a concrete
five-step exercise both operators run before doors open.

Phase 3.4 lands as §7 Rollback recipe in the same file: three
independently-rollable surfaces (webui git revert + restart, OBS
scene-collection xcopy from scenes.backup.{ISO}, plugin = off-scope
per Q6 pinning). Each surface has its own verify checklist; an
end-to-end smoke test sequence runs after any rollback so a broken
rollback is itself caught immediately.

Internal links to RUNBOOK_FALLBACK.md anchors are verified against
the existing section headings (GitHub-style slugs, em-dash → "--").

Acceptance gates (two-operator dry-run for 3.3; tested-on-real-host
for 3.4) are out-of-session human checks, recorded as §9 sign-offs
at the bottom of the runbook.

184/184 jest tests pass.
deco merged commit 4dceb6370c into main 2026-05-22 01:17:09 +03:00
deco deleted branch feat/phase-3.3-event-runbook 2026-05-22 01:17:10 +03:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
deco/cuesheet!28
No description provided.