docs(09): lock arena-as-relay architecture decision (decentralized framing, Foundation arena = default rendezvous)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
de022b7b4e
commit
65d7edbd08
@ -17,6 +17,16 @@ BotFights is a standalone app (separate repo) distributed to Archipelago nodes a
|
||||
3. **BOT-03 — Shared public match endpoint on VPS2.** Every node's BotFights instance must use a public arena endpoint hosted on VPS2 (146.59.87.168, docker + nginx-proxy-manager; subdomains under `archipelago-foundation.org` available, pattern: new NPM proxy host + Let's Encrypt) **by default**, so all nodes see all fighters and battle across nodes. Node-local instance remains the runtime but match/fighter state is the shared public arena.
|
||||
4. **BOT-04 — Registry/manifest update.** New app version: build + push new image to the vps2 registry, bump `apps/botfights/manifest.yml`, regenerate + re-sign + republish the signed catalog (catalog manifest overlay supremacy — disk edits don't apply to catalog-covered apps).
|
||||
|
||||
## Architecture Decision (user, 2026-07-30): Arena-as-relay
|
||||
|
||||
BOT-03 is built and DOCUMENTED as a decentralized "arena = nostr relay" model, per project philosophy:
|
||||
- **Any node can host a public arena** — it is the same app image; a public arena is just a BotFights instance without `ARENA_UPSTREAM_URL` that others point at.
|
||||
- **Each node chooses its arena community** via `ARENA_UPSTREAM_URL` (env/manifest); unset = standalone.
|
||||
- **The Foundation's VPS2 arena (`http://146.59.87.168:9100`) is only the well-known default**, like the vps2 FIPS anchor — a rendezvous, not an authority. Nothing in the code hardcodes a center.
|
||||
- The game UI is always served from the user's own node; only match/fighter state lives on the chosen arena.
|
||||
- The unified AI prompt + docs (BOT-02) and `docs/arena-deployment.md` MUST present it this way, including "how to host your own arena" as a first-class section.
|
||||
- Later phase (roadmap note): nostr-event-based fighter/arena discovery across multiple arenas.
|
||||
|
||||
## Claude's Discretion
|
||||
|
||||
- Exact architecture for BOT-03 (thin-client mode vs sync/federation protocol) — chosen during planning based on research; bias toward the simplest thing that makes "all nodes see all fighters" true.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user