feat: Add rig infra cycling (witness ↔ refinery)

Extended the unified cycle system to include rig infrastructure sessions:
- Witness ↔ Refinery (per rig) now cycle with C-b n/p

Also moved SetCycleBindings into ConfigureGasTownSession so ALL Gas Town
sessions automatically get the unified cycle bindings. Removed redundant
individual calls from crew, mayor, and deacon startup code.

Cycle groups are now:
- Town: Mayor ↔ Deacon
- Crew (per rig): All crew members in same rig
- Infra (per rig): Witness ↔ Refinery

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Steve Yegge
2025-12-28 16:36:25 -08:00
parent bcf9994195
commit b172fd4787
6 changed files with 96 additions and 16 deletions

View File

@@ -185,12 +185,10 @@ func startDeaconSession(t *tmux.Tmux) error {
_ = t.SetEnvironment(DeaconSessionName, "BD_ACTOR", "deacon")
// Apply Deacon theme (non-fatal: theming failure doesn't affect operation)
// Note: ConfigureGasTownSession includes cycle bindings
theme := tmux.DeaconTheme()
_ = t.ConfigureGasTownSession(DeaconSessionName, theme, "", "Deacon", "health-check")
// Set up C-b n/p keybindings for town session cycling (non-fatal)
_ = t.SetTownCycleBindings(DeaconSessionName)
// Launch Claude directly (no shell respawn loop)
// Restarts are handled by daemon via ensureDeaconRunning on each heartbeat
// The startup hook handles context loading automatically