CI / check (push) Failing after 6m4s
A throwaway 1.2.0 container in proxy mode (no volume, ARENA_UPSTREAM_URL pointed at the canonical arena) demonstrated: a fighter registered directly against the arena is visible through it (D1), a fighter registered through it is visible on the arena directly (reverse), SSE streams incrementally through it, /api/health answers locally during an arena outage, and /api/bots degrades cleanly during that outage. Also documents a deviation: the canonical URL now sits behind nginx-proxy-manager (per the mid-phase DNS/TLS decision superseding this plan's original plain-HTTP wording), so a stopped arena's 502 through that URL is NPM's own HTML page rather than arena-proxy.ts's JSON body — the underlying JSON degradation contract is separately confirmed live against the raw fallback port, which has no intermediary. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>