From 92144757acd0c29dde97c7f94ca321870c1abc9e Mon Sep 17 00:00:00 2001 From: JeremyKalmus <70781447+JeremyKalmus@users.noreply.github.com> Date: Tue, 13 Jan 2026 22:14:00 -0800 Subject: [PATCH] fix(prime): add gt done to Session Close Protocol in PRIME.md (#490) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Polecats were not calling `gt done` after completing work because the compact PRIME.md context (used after compaction or when the SessionStart hook is the only context) was missing this critical step. The Session Close Protocol listed steps 1-6 (git status, add, bd sync, commit, bd sync, push) but omitted step 7 (`gt done`), which: - Submits work to the merge queue - Exits the polecat session - Allows the witness to spawn new polecats for remaining work Without `gt done`, polecats would push code and announce "done" but remain idle in their sessions, blocking the workflow cascade. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.5 --- internal/beads/beads.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/beads/beads.go b/internal/beads/beads.go index 121a31f4..188cfd75 100644 --- a/internal/beads/beads.go +++ b/internal/beads/beads.go @@ -656,15 +656,16 @@ This is physics, not politeness. Gas Town is a steam engine - you are a piston. ## Session Close Protocol -Before saying "done": +Before signaling completion: 1. git status (check what changed) 2. git add (stage code changes) 3. bd sync (commit beads changes) 4. git commit -m "..." (commit code) 5. bd sync (commit any new beads changes) 6. git push (push to remote) +7. ` + "`gt done`" + ` (submit to merge queue and exit) -**Work is not done until pushed.** +**Polecats MUST call ` + "`gt done`" + ` - this submits work and exits the session.** ` // ProvisionPrimeMD writes the Gas Town PRIME.md file to the specified beads directory.