Issue #310: platform a2a-proxy logs ~300/hr
`timeout awaiting response headers` because ResponseHeaderTimeout was hardcoded
to 60s. Opus agent turns (big context + internal delegate_task round-trips)
routinely exceed 60s, so the proxy gave up before headers arrived even when
the workspace agent was healthy.
Changes:
- workspace-server/internal/handlers/a2a_proxy.go: ResponseHeaderTimeout:
60s hardcoded → envx.Duration("A2A_PROXY_RESPONSE_HEADER_TIMEOUT", 180s).
180s gives Opus turns comfortable headroom. The X-Timeout caller header
still bounds the absolute request ceiling independently.
- a2a_proxy_test.go: TestA2AClientResponseHeaderTimeout verifies the 180s
default and env-override parsing logic.
Note: Go tests not run locally (Go toolchain not available in this environment).
CI will validate on push.
Closes#310.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>