# Architecture Decision Records **Document ID:** FFG-REF-001 **Version:** 2.0 **Created:** February 9, 2026 **Last Updated:** February 12, 2026 (9:00 AM CST) **Author:** Michael Krause **Last Updated By:** The Chronicler **Status:** 🟢 CURRENT **Review Date:** Quarterly --- ## ADR-001: Management Services on VPS, NOT Dedicated Servers **Date:** February 9, 2026 **Status:** ✅ IMPLEMENTED **Decision:** Deploy all management services (Gitea, Uptime Kuma, MkDocs, Code-Server, Automation, Wiki.js, NextCloud) on VPS infrastructure (Command Center + Ghost), NOT on dedicated game servers (TX1/NC1). **Rationale:** 1. Game servers need dedicated resources — no management overhead competing with player experience 2. Keeps Command Center clean for future Frostwall DDoS protection (GRE hub, Cloudflare integration) 3. Security isolation — management plane separate from game plane 4. Cost-effective — VPS for management, bare metal for performance **Current Layout:** - Command Center (Dallas VPS): Gitea, Uptime Kuma, Code-Server, Automation - Ghost (Chicago VPS): MkDocs, Wiki.js (x2), NextCloud - TX1/NC1 (Dedicated): Game servers ONLY --- ## ADR-002: NC1/TX1 Inter-Datacenter Routing **Date:** February 9, 2026 **Status:** ✅ RESOLVED **Original Limitation:** NC1 (Charlotte) and TX1 (Dallas) could not communicate directly. **Resolution:** Breezehost added a route on their infrastructure (Ticket #5ae82fd3, Feb 9, 2026). Brandon E: "Just needed a route added on our end." **Impact:** Full bidirectional communication between all servers. NC1 now monitored by Uptime Kuma. Cross-datacenter architecture options unlocked. --- ## ADR-003: Three-Tier Documentation Architecture **Date:** February 9, 2026 **Status:** ✅ IMPLEMENTED **Decision:** Three separate documentation platforms for three audiences. | Tier | Platform | Domain | Audience | |:-----|:---------|:-------|:---------| | PUBLIC | MkDocs | docs.firefrostgaming.com | Anyone | | SUBSCRIBER | Wiki.js | subscribers.firefrostgaming.com | Paying members | | STAFF | Wiki.js | staff.firefrostgaming.com | Admin/staff only | **Rationale:** Different audiences need different access levels. MkDocs is Git-native (auto-builds from repo). Wiki.js provides role-based access control for restricted content. --- ## ADR-004: Gitea Primary, GitHub as Private Backup **Date:** February 11-12, 2026 **Status:** ✅ IMPLEMENTED **Decision:** Self-hosted Gitea is the primary Git repository. GitHub mirror kept as private emergency backup. **Rationale:** 1. Self-hosted = full control, no dependency on external service 2. Claude has direct API read/write access to Gitea 3. GitHub mirror was public — exposed IPs, ports, UUIDs (security risk) 4. Made GitHub private Feb 12, 2026 — defense in depth (if Command Center dies, docs exist offsite) --- ## ADR-005: Frostwall = Network Defense Only **Date:** February 12, 2026 **Status:** 💡 NAMING CONVENTION **Decision:** "Frostwall" refers exclusively to network defense architecture (GRE topology, UFW, DDoS protection). Visual/UI transitions between Fire and Frost paths are Firefrost brand concepts, not Frostwall. **Rationale:** The design bible incorrectly used "Frostwall Protocol" for the UI age-verification gate. This conflates two distinct concepts. Clear naming prevents confusion as both systems are developed. --- ## Revision History | Version | Date | Author | Change Type | Description | |:--------|:-----|:-------|:------------|:------------| | 1.0 | 2026-02-09 | Michael + Claude | Initial | Original architecture decisions documented | | 2.0 | 2026-02-12 | The Chronicler | Rewrite | Corrected stale info (services moved from TX1, NC1/TX1 routing resolved). Added ADR-004 (Gitea/GitHub), ADR-005 (Frostwall naming). Applied FFG-STD-001 revision standard. | --- **FFG-REF-001 — Architecture Decision Records**