fix(dog): spawn session and set BD_ACTOR for dog dispatch
Recovered from reflog - these commits were lost during a rebase/force-push. Dogs are directories with state files but no sessions. When `gt dog dispatch` assigned work and sent mail, nothing executed because no session existed. Changes: 1. Spawn tmux session after dispatch (gt-<town>-deacon-<dogname>) 2. Set BD_ACTOR=deacon/dogs/<name> so dogs can find their mail 3. Add dog case to AgentEnv for proper identity Session spawn is non-blocking - if it fails, mail was sent and human can manually start the session. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -61,6 +61,11 @@ func AgentEnv(cfg AgentEnvConfig) map[string]string {
|
||||
env["GIT_AUTHOR_NAME"] = "boot"
|
||||
env["GIT_AUTHOR_EMAIL"] = "boot@gastown.local"
|
||||
|
||||
case "dog":
|
||||
env["BD_ACTOR"] = fmt.Sprintf("deacon/dogs/%s", cfg.AgentName)
|
||||
env["GIT_AUTHOR_NAME"] = fmt.Sprintf("dog-%s", cfg.AgentName)
|
||||
env["GIT_AUTHOR_EMAIL"] = fmt.Sprintf("dog-%s@gastown.local", cfg.AgentName)
|
||||
|
||||
case "witness":
|
||||
env["GT_RIG"] = cfg.Rig
|
||||
env["BD_ACTOR"] = fmt.Sprintf("%s/witness", cfg.Rig)
|
||||
@@ -128,7 +133,7 @@ func AgentEnvSimple(role, rig, agentName string) map[string]string {
|
||||
|
||||
// ShellQuote returns a shell-safe quoted string.
|
||||
// Values containing special characters are wrapped in single quotes.
|
||||
// Single quotes within the value are escaped using the '\'' idiom.
|
||||
// Single quotes within the value are escaped using the '\” idiom.
|
||||
func ShellQuote(s string) string {
|
||||
// Check if quoting is needed (contains shell special chars)
|
||||
needsQuoting := false
|
||||
|
||||
Reference in New Issue
Block a user