fix: ZFC improvements - query tmux directly instead of marker TTL

Two ZFC fixes:

1. Boot marker file (hq-zee5n): Changed IsRunning() to query
   tmux.HasSession() directly instead of checking marker file
   freshness with TTL. Removed stale marker check from doctor.

2. Branch pattern matching (hq-zwuh6): Replaced hardcoded "polecat/"
   strings with constants.BranchPolecatPrefix for consistency.

Also removed 60-second WaitForCommand blocking from crew Start()
which was causing gt crew start to hang.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
gastown/crew/george
2026-01-09 22:08:12 -08:00
committed by Steve Yegge
parent e0858096f6
commit c94d59dca7
6 changed files with 16 additions and 46 deletions

View File

@@ -13,7 +13,6 @@ import (
"github.com/steveyegge/gastown/internal/beads"
"github.com/steveyegge/gastown/internal/claude"
"github.com/steveyegge/gastown/internal/config"
"github.com/steveyegge/gastown/internal/constants"
"github.com/steveyegge/gastown/internal/git"
"github.com/steveyegge/gastown/internal/rig"
"github.com/steveyegge/gastown/internal/session"
@@ -536,8 +535,10 @@ func (m *Manager) Start(name string, opts StartOptions) error {
// Set up C-b n/p keybindings for crew session cycling (non-fatal)
_ = t.SetCrewCycleBindings(sessionID)
// Wait for Claude to start (non-fatal: session continues even if this times out)
_ = t.WaitForCommand(sessionID, constants.SupportedShells, constants.ClaudeStartTimeout)
// Note: We intentionally don't wait for Claude to start here.
// The session is created in detached mode, and blocking for 60 seconds
// serves no purpose. If the caller needs to know when Claude is ready,
// they can check with IsClaudeRunning().
return nil
}