Files
ersatztv/docs/decisions/archive/startup.md
T

3.3 KiB

Archive — startup / kickoff protocol

Superseded/retired records for the session-startup / queue-selection protocol. See docs/decisions/archive/README.md for the archive's general rules (rationale kept verbatim, never in the active read-path). Active successor: startup.parallel-orientation in docs/decisions.md.


2026-07-11 — Queue state lives in the pinned Gitea tracker (#237), not in the handoff file

key: docs.queue-state-gitea-tracker · status: superseded · since: 2026-07-11 · supersedes: none · superseded-by: startup.parallel-orientation@2026-07-21 Rule: (superseded) Volatile session/queue state lives in pinned Gitea tracker issue #237 (goal + arc in the body, append-only session-comment log, in-progress/review labels), not in a wholesale-rewritten handoff file; the handoff file keeps only the static kickoff prompt and append-only lore. Signals: last-writer-wins race, claim/in-progress label, triage verdict · paths: docs/handoffs/chicorytv-issue-queue.md · issues: #237, #520 Mechanics: superseded by scripts/select-queue.sh (ersatztv#520); see docs/decisions.mdstartup.parallel-orientation

With multiple sessions/agents working the repo in parallel, the old protocol — every session wholesale-rewrites docs/handoffs/chicorytv-issue-queue.md on main (session state + queue + next-session prompt) — became a last-writer-wins race. New protocol: volatile queue state moved to Gitea, which is concurrency-safe by construction. Pinned tracker issue #237 holds the goal + ordered arc in its body (edited rarely, only on arc changes, re-read before edit) and an append-only session-comment log (fixed template: Closed / Filed / Triage / Arc change / Recommended next). Milestone Blazor removal (#91 phase b) + the review and in-progress labels are the machine-queryable view. Sessions claim an issue before working it (in-progress label + claim comment; the tiny read→claim race window is accepted, later claimant backs off; stale claims — no commits/comments ~48h — may be taken over with a comment). Every new issue gets an explicit end-of-session triage verdict — gate-blocker (milestone + arc slot) or backlog (label only) — so review findings adjust the queue only through that step and the arc doesn't drift. The handoff file keeps only the static kickoff prompt and the append-only Lessons lore (per-session prompts are gone; task context lives in issue bodies).

Why superseded (#520, 2026-07-21): the arc completed and #237 closed (2026-07-13); a closed tracker cannot serve as live queue state, and continuing to read it as such was a live regression risk (an agent skimming an old comment or this very record could re-treat #237's prose as current). scripts/select-queue.sh (2026-07-19) already replaced the mechanical parts of this rule with a deterministic, live-Gitea-only query — this record's job was really "queue state lives in Gitea, not in the handoff file," and that half is still true; what's superseded is the specific store (#237's body/comments) now that maintenance/backlog mode has no arc to narrate. See startup.parallel-orientation for the replacement: two concurrent session-start tracks (orientation via the docs/decisions catalog + docs/README.md map, and selection via the script), with #237 reduced to a single archival breadcrumb.