Set GIT_AUTHOR_NAME per agent session (gt-6r18e.1)

Export GIT_AUTHOR_NAME alongside BD_ACTOR in all agent session startup
locations. This enables git log --author queries for agent work while
keeping GIT_AUTHOR_EMAIL as the workspace owner.

Files updated:
- internal/session/manager.go (polecat sessions)
- internal/daemon/daemon.go (deacon, witness, polecat via daemon)
- internal/daemon/lifecycle.go (polecat lifecycle)
- internal/cmd/*.go (crew, mayor, deacon, witness, refinery, up, handoff)
- internal/session/manager_test.go (updated test expectations)
- docs/federation.md (marked feature as implemented)

🤖 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-30 16:09:00 -08:00
parent 78db2c768f
commit 3099d99424
13 changed files with 26 additions and 24 deletions

View File

@@ -163,7 +163,7 @@ func TestPolecatCommandFormat(t *testing.T) {
expectedBdActor := "gastown/polecats/Toast"
// Build the expected command format (mirrors Start() logic)
expectedPrefix := "export GT_ROLE=polecat GT_RIG=" + rigName + " GT_POLECAT=" + polecatName + " BD_ACTOR=" + expectedBdActor
expectedPrefix := "export GT_ROLE=polecat GT_RIG=" + rigName + " GT_POLECAT=" + polecatName + " BD_ACTOR=" + expectedBdActor + " GIT_AUTHOR_NAME=" + expectedBdActor
expectedSuffix := "&& claude --dangerously-skip-permissions"
// The command must contain all required env exports
@@ -173,6 +173,7 @@ func TestPolecatCommandFormat(t *testing.T) {
"GT_RIG=" + rigName,
"GT_POLECAT=" + polecatName,
"BD_ACTOR=" + expectedBdActor,
"GIT_AUTHOR_NAME=" + expectedBdActor,
"claude --dangerously-skip-permissions",
}