Substrate fix for the intent-echo hook trap. The Mac codex install ships
~/.codex/hooks.json with intent-echo.sh on UserPromptSubmit; long prompts
containing destructive verbs or scope-limiters trigger a HIGH-STAKES
preamble that captures as the assistant message. Non-interactive `codex
exec` then produces no real output.
team-runner.sh:226 is the load-bearing dispatcher behind /swarm, /crank,
/evolve, /codex-team, /red-team — patching it once propagates the fix to
every team-runtime skill. Mirror on the dry-run echo at :195.
smoke-test-codex-skills.sh prompts contain "only" (line 175); validate
prompt contains "only" (line 61). Both trigger today.
test-sandbox-mode.sh and test-structured-output.sh patched defensively
for drift resistance.
See .agents/findings/registry.jsonl entries f-2026-05-02-002 and
f-2026-05-02-003.
Add doc-release, contract-compatibility, hook-preflight, hooks-doc-parity,
ci-policy-parity, shellcheck, symlink-rejection, learning-coherence, and
orphan-hooks checks to pre-push-gate.sh (checks 25-33). Add fast-mode
detection for docs/shell/learning file categories so new checks only run
when relevant files change.
Also fix shellcheck warnings in task-validation-gate.sh (SC2053 glob
directives) and remove unused error_msg in watch-codex-stream.sh.