reports.nix: pin non-browser UA on /pr/ proxy #38

Merged
autonomic-bot merged 1 commits from fix/anubis-ua-reports-proxy into main 2026-09-14 16:45:38 +00:00
Owner

Why

The report's live PR-STATUS column fetches /pr/<recipe>/<n> client-side; the proxy forwards the browser's User-Agent to Gitea — which sits behind Anubis — and Anubis 307-challenges browser-like UAs to anubis.swarm.autonomic.zone/.within.website/, an un-CORS-able counter-domain. Result: every fetch throws and all STATUS cells render ?.

What

Pin a stable non-browser UA (ccci-reports-proxy/1.0) in the nginx /pr/ location.

Evidence

  • Reproduced pre-fix: curl UA → 200; browser UA → 307 to Anubis (through the report proxy AND direct to Gitea).
  • Post-fix (verified live on the cc-ci host): browser UA → 200 PR JSON; headless Chromium renders all 16 STATUS cells.

No CI-relevant code paths touched (nginx conf text only).

## Why The report's live PR-STATUS column fetches `/pr/<recipe>/<n>` client-side; the proxy forwards the browser's User-Agent to Gitea — which sits behind Anubis — and Anubis 307-challenges browser-like UAs to `anubis.swarm.autonomic.zone/.within.website/`, an un-CORS-able counter-domain. Result: every fetch throws and all STATUS cells render `?`. ## What Pin a stable non-browser UA (`ccci-reports-proxy/1.0`) in the nginx `/pr/` location. ## Evidence - Reproduced pre-fix: `curl` UA → 200; browser UA → 307 to Anubis (through the report proxy AND direct to Gitea). - Post-fix (verified live on the cc-ci host): browser UA → 200 PR JSON; headless Chromium renders all 16 STATUS cells. No CI-relevant code paths touched (nginx conf text only).
autonomic-bot added 1 commit 2026-09-14 16:43:36 +00:00
autonomic-bot merged commit eb5fb82611 into main 2026-09-14 16:45:38 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: recipe-maintainers/cc-ci#38