Fold the gateway's auth bypass into the traps
The simulator starts the AI Gateway with AIGW_AUTH__BYPASS_EXTERNAL=true on both paths, aigw start and aigw-jwt-setup, so the gateway admits a request without reading its token. An arm whose question is authentication therefore passes whatever the instance sent. A lab run paid for this: a classic chat request carrying no token went through, and the same container with the bypass off answered the 401 that was the actual finding. Only the workflow service's own auth, which aigw-jwt-setup turns on, showed a token failure.
aigw.md gains a section on turning it off. SIM_AIGW_ENV overrides it on aigw start, since the passthrough follows the defaults and podman keeps the last value of a repeated -e. That path also sets the JWT signature bypass, which lets a wrong-issuer token through once the external bypass is off, so an issuer arm clears both. aigw-jwt-setup has no knob, so the section describes the hand re-run with the one variable false, and it closes with the three-request control that shows the gate is live. SKILL.md carries a pointer in the chain's trap list, and the gce.md line that read as if flow execution turned auth on now says which auth.
No behavior changes.
AI-Assisted: yes AI-Tools: Claude Code (Opus 5.5) Co-Authored-By: Claude Opus 5.5 (1M context) noreply@anthropic.com Signed-off-by: Andrew Dunn andunn@gitlab.com