gstack 1.58.1.0

1.58.1.0
Added 9
  • Spawned agent runners get allowlist-scrubbed environment, fresh seeded CLAUDE_CONFIG_DIR, temp GSTACK_HOME, and --strict-mcp-config
  • Hermetic-env.ts allowlist builder with pure promotedEnv() shared with lib/conductor-env-shim.ts
  • Sync-memoized singleton temp dir and seeded .claude.json for non-interactive first run
  • Pid-aware garbage collection of crashed runs
  • Hermetic-canary and hermetic-sentinel gate-tier isolation canaries
  • Static wiring tripwire for all five runners
Changed 3
  • Conductor prose AskUserQuestion renders as prose brief with reply-with-a-letter enforcement
  • All five E2E runners spawn children through hermeticChildEnv()
  • LLM-judge re-appends body-carved sections/*.md after marker slice
Fixed 1
  • ios-qa daemon uses unique pidfiles fixing already_running collisions

From gstack

Spawned agent runners get allowlist-scrubbed environment, fresh seeded CLAUDE_CONFIG_DIR, temp GSTACK_HOME, and --strict-mcp-config. Hermetic-env.ts allowlist builder with pure promotedEnv() shared with lib/conductor-env-shim.ts. Sync-memoized singleton temp dir and seeded .claude.json for non-interactive first run. Pid-aware GC of crashed runs. Hermetic-canary and hermetic-sentinel gate-tier isolation canaries. Static wiring tripwire for all five runners. gstack-detach with SIGTERM-proof, caffeinate-wrapped eval runs with machine-wide lock and per-run logs. Conductor prose AskUserQuestion renders as prose brief with reply-with-a-letter enforcement. All five E2E runners spawn children through hermeticChildEnv(). EVALS_HERMETIC=0 restores legacy env. LLM-judge re-appends body-carved sections/*.md after marker slice. ios-qa daemon uses unique pidfiles fixing already_running collisions. CLAUDE.md documents hermetic-by-default local evals.

View original

Upgraded? How did it go?

Discussion