The main leaderboard SPA is now served at / (index.html) and the
standalone replay viewer lives at /replay.html. This removes the
_redirects workaround in index-builder that patched over the inverted
entry points.
- Rename web/app.html → web/index.html (main SPA)
- Rename web/index.html → web/replay.html (standalone viewer)
- Update vite.config.ts: main→index.html, replay→replay.html
- Remove _redirects injection from deploy.go verifyMergedOutput
- Update pages.json routes and README dev URL
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Update r2_data URL from data.aicodebattle.com to r2.aicodebattle.com
to match the planned R2 bucket custom domain in the project plan.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Create deploy/k8s/ directory with complete K8s manifests for the
ai-code-battle namespace on apexalgo-iad cluster:
- Namespace and ArgoCD Application (auto-sync, prune, self-heal)
- Match worker Deployment (2 replicas, metrics on :9090)
- Index builder Deployment (Recreate strategy)
- 6 strategy bot Deployments (random, gatherer, rusher, guardian, swarm, hunter)
- ClusterIP Services for all bots (cluster DNS resolution)
- SealedSecret templates (API key, R2 creds, bot secrets, Cloudflare token)
- All containers from forgejo.ardenone.com/ai-code-battle/ registry
- Health/readiness probes and resource limits on all deployments
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add web/pages.json documenting Pages project settings and data paths
- Add web/public/_headers for cache control on static assets
- Add web/public/robots.txt for SEO
- Add web/public/data/ placeholder structure for index files
- leaderboard.json
- bots/index.json
- matches/index.json
- Update PROGRESS.md marking Phase 5 complete
Phase 5 is now complete. Ready for Phase 6 (Deployment & Production).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>