You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Residuals from the Codex round on PR #1990 (post-fix-round head), tracked at the ceiling.
Split-container topology:deploy/nginx/reverse-proxy.conf proxies /api/, /hubs/, /health/ (trailing slash) but not /mcp and not the bare prefixes — so the new 404 contract is API-side only there; unknown /mcp/* and bare prefixes still get the SPA from nginx. One location block each closes it end-to-end.
Wrong-verb GET/HEAD on a real POST-only route (e.g. GET on a triage/execute endpoint) now routes to the GET fallback → 404, where the framework previously synthesized 405. Fail-safe and arguably enumeration-friendlier, but it is a contract change PR fix(backend): #1971 unknown /api/* returns 404, not the SPA fallback #1990's review missed — decide: accept-and-document (OpenAPI already implies methods) or restore 405 via a post-routing check.
deploy/nginx/reverse-proxy.confproxies/api/,/hubs/,/health/(trailing slash) but not/mcpand not the bare prefixes — so the new 404 contract is API-side only there; unknown/mcp/*and bare prefixes still get the SPA from nginx. One location block each closes it end-to-end.vite.config.tsnavigateFallbackDenylistcovers/api/and/mcpbut not/hubs/or/health/— an installed PWA answers those NAVIGATIONS with the cached shell before the backend is consulted (pre-existing; bounds [Backend][API] Unknown /api/* paths return 200 + index.html — the SPA fallback swallows API 404s #1971's fix in the browser).Refs: PR #1990, #1971, ADR-0036 amendment 2026-08-22.