Skip to content

Retire GitHub Pages: http-arena.com is the site's address, readable from any origin as before - #1565

Merged
MDA2AV merged 1 commit into
mainfrom
retire-github-pages
Oct 14, 2026
Merged

MDA2AV merged 1 commit into
mainfrom
retire-github-pages

Conversation

@MDA2AV

@MDA2AV MDA2AV commented Oct 14, 2026

Copy link
Copy Markdown
Owner

The domain now points at the genhttp.dev lambda, and www.http-arena.com redirects to http-arena.com. This PR is the follow-up to #1563, which fixes the publish run.

  • deploy.yml is removed. It deployed to a Pages site that nothing points at anymore: Pages has no custom domain set, and https://mda2av.github.io/HttpArena/ answers 404. The site is published only by publish-genhttp.yml, run by hand. That workflow also runs the badge parity check, so the check isn't lost.
  • The site's address is https://http-arena.com. This changes SITE in gen_leaderboard_data.py (canonical links, og:url, the sitemap, llms.txt, the social-card footers), the board's canonical link, robots.txt, the README, the docs, the OpenAPI specs and validate.sh's doc links. Each of these pointed at a 301 before. Files inside frameworks/ that link to the site are left to their maintainers, since the redirect keeps them working. shields.io follows it too, so existing README badges still render.
  • The lambda's site answers with Access-Control-Allow-Origin: *, as Pages did. The docs' "Browse" links open openapi.json in Redoc, which reads it from another origin and has been blocked since the move. Only the site gets the header, not api/. The smoke test now checks for it.

Since site/lambda/ changes, the next publish saves a version. If #1563 merges first, that one version carries both PRs' changes.

The committed site/leaderboard/data.js and search.js are left alone. They were already out of date on main, and the publish workflow regenerates them anyway.

Checked:

  • The generator, assembled with --no-logs, produces 1,801 files with no www.http-arena.com in them. Canonical links, sitemap <loc>, og:url and robots.txt all use https://http-arena.com.
  • check_badge_parity.js passes: 1,026 ranks match.
  • I ran the lambda locally with this site/lambda/, following tests/README.md, and published this site to it. Site responses carry the header on 200, 301 and 404, while api/site does not. smoke.mjs passes all 12 checks, including the new one.

🤖 Generated with Claude Code

…rom any origin as before

The domain now points at the genhttp.dev lambda, where www.http-arena.com redirects to
http-arena.com, so:

- deploy.yml goes. It deployed to a Pages site nothing points at any more (its custom domain is
  unset and https://mda2av.github.io/HttpArena/ answers 404); the site is published by
  publish-genhttp.yml, by hand.
- The site's address is https://http-arena.com: SITE in gen_leaderboard_data.py (canonical
  links, og:url, the sitemap, llms.txt, the cards' footers), the board's canonical link,
  robots.txt, the README and docs, the OpenAPI specs and validate.sh's doc links. Before, every
  one of them pointed at a 301. Entries' own files that link the site are left to them; the
  redirect keeps them working, and shields.io follows it for the badges.
- The lambda's site answers with Access-Control-Allow-Origin: *, as Pages did: the docs'
  "Browse" links open openapi.json in Redoc, which reads it from its own origin and could not
  since the move. The smoke test checks it.
@MDA2AV
MDA2AV merged commit bfe9333 into main Oct 14, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant