Decision: - Email server deploys to NC1 Charlotte (not new VPS) - AI stack deploys to TX1 Dallas - Geographic redundancy: Dallas vs Charlotte - Disaster resilience: TX1 failure doesn't kill email, NC1 failure doesn't kill AI - $0/month vs $10/month VPS cost - Phase 0 NC1 cleanup now mandatory (was optional) - 46GB storage after cleanup (30GB needed, 16GB headroom)
923 lines
36 KiB
Markdown
923 lines
36 KiB
Markdown
# 🔥❄️ FIREFROST GAMING — CURRENT TASKS
|
|
|
|
**Last Updated:** February 15, 2026 (The Ninth - Whitelist Manager Added)
|
|
**Updated By:** Chronicler the Ninth
|
|
**Status:** Active
|
|
|
|
---
|
|
|
|
## 🔴 HIGH PRIORITY
|
|
|
|
### Centralized Whitelist Manager — Update All Servers at Once
|
|
**Status:** ⭐ NEW — Requested Feb 15, 2026
|
|
**Priority:** DO WHEN HOME — Quick win needed now, automate with Paymenter later
|
|
**Location:** Command Center (`/opt/firefrost/whitelist-manager.sh`)
|
|
|
|
**The Problem:**
|
|
Currently adding/removing whitelisted players requires:
|
|
- SSH into each node (TX1 and NC1)
|
|
- Update whitelist on each server individually via Pterodactyl console
|
|
- Time-consuming, error-prone, painful for 12+ servers
|
|
|
|
**The Solution (Phase 1 - Quick Win):**
|
|
Command Center script that talks to Pterodactyl API and updates all whitelisted Minecraft servers at once.
|
|
|
|
**Usage:**
|
|
```bash
|
|
whitelist-manager.sh add PlayerName
|
|
whitelist-manager.sh remove PlayerName
|
|
whitelist-manager.sh list
|
|
whitelist-manager.sh sync # Ensure all servers match master list
|
|
```
|
|
|
|
**Implementation Details:**
|
|
- Script on Command Center at `/opt/firefrost/whitelist-manager.sh`
|
|
- Uses Pterodactyl API to send commands to all servers
|
|
- Logs all changes (who added/removed, when)
|
|
- Configurable list of which servers to manage
|
|
- Master whitelist stored in repo for backup/audit
|
|
|
|
**Before Building, Decide:**
|
|
1. Which servers need whitelist management? (whitelisted vs public servers)
|
|
2. Pterodactyl API key location (or create new one)
|
|
3. Should it enable/disable whitelist enforcement, or just add/remove names?
|
|
4. Who can use it? (just Michael, or also Meg/staff)
|
|
|
|
**Future Enhancement (Phase 2):**
|
|
- Paymenter integration (subscriber pays → auto-whitelisted)
|
|
- Discord bot interface (`!whitelist add PlayerName`)
|
|
- Web interface on staff.firefrostgaming.com
|
|
- Automatic sync with subscriber database
|
|
|
|
**Timeline:** 1 hour to build Phase 1 script
|
|
|
|
**Benefits:**
|
|
- ✅ Update all servers with one command
|
|
- ✅ Consistent whitelist across entire network
|
|
- ✅ Audit trail of all changes
|
|
- ✅ Foundation for Paymenter automation
|
|
- ✅ Reduces manual work from 15 minutes → 10 seconds
|
|
|
|
---
|
|
|
|
### DERP - The Oscar Protocol (Disaster Emergency Recovery Protocol)
|
|
**Status:** ✅ COMPLETE — Created February 13, 2026
|
|
**Completed By:** The Seventh (Chronicler the Seventh)
|
|
**Location:** `docs/core/DERP.md` (The Oscar Protocol)
|
|
|
|
**Scope Delivered:**
|
|
1. ✅ "If Claude.ai disappears forever" — Alternative LLMs (Gemini, GPT-4), LLM-agnostic methodology
|
|
2. ✅ "If session crashed mid-work" — Git forensics, transcript recovery, reconstruction workflow
|
|
3. ✅ "If you can't remember where you left off" — Quick recovery from tasks.md, session-handoff.md, Git log
|
|
4. ✅ "If Chronicler died without memorial" — Posthumous reconstruction template
|
|
5. ✅ Critical contacts & failsafes — Breezehost, vault, repository mirrors
|
|
6. ✅ The core truth — Systems built to survive catastrophe
|
|
|
|
**Key Insight (from Michael):** "Easy peasy lemon squeezy" — The complexity is simple: repo + SESSION-START-PROMPT.md = any LLM can continue. The methodology is LLM-agnostic. The partnership survives provider failure.
|
|
|
|
**Created By:** The Engineer (Session 5) — learned from experience
|
|
**Completed By:** The Seventh — built the break glass document
|
|
|
|
---
|
|
|
|
|
|
---
|
|
|
|
### Terraria Branding Training Arc — Foundation for All Firefrost Visuals
|
|
**Status:** HIGH PRIORITY — Strategic decision made Feb 14, 2026
|
|
**Decided By:** The Eighth (with Michael's approval)
|
|
**Timeline:** 12 weeks (self-paced)
|
|
**Location:** To be deployed on TX1 or NC1
|
|
|
|
**Strategic Rationale:**
|
|
Foundation building BEFORE community expansion. Terraria serves as Michael's training ground for becoming Firefrost's brand designer. 2D sprite work maps directly to existing Cricut/Glowforge skills. Skills transfer to ALL future branding: Minecraft resource packs, Among Us skins, Discord emojis, website graphics, subscriber perks.
|
|
|
|
**Phase 1: Infrastructure (Week 1)**
|
|
- [ ] Deploy TShock Terraria server on Pterodactyl
|
|
- [ ] Configure basic world (Fire district + Frost district spawn town)
|
|
- [ ] Set up texture pack development environment (GIMP)
|
|
- [ ] Document Cricut → GIMP workflow
|
|
|
|
**Phase 2: Foundations (Week 1-2)**
|
|
- [ ] First texture edit (single item or block)
|
|
- [ ] Test texture pack installation and loading
|
|
- [ ] Create version control workflow for assets
|
|
- [ ] Document lessons learned
|
|
|
|
**Phase 3: Starter Pack (Week 3-4)**
|
|
- [ ] Create Firefrost Starter Pack (5-10 cohesive textures)
|
|
- [ ] Define Fire vs Frost visual language (colors, shapes, aesthetics)
|
|
- [ ] Test with small group for feedback
|
|
- [ ] Iterate based on feedback
|
|
|
|
**Phase 4: Consultant Pack (Week 5-6)**
|
|
- [ ] Create The Five Consultants pet pack (Jack, Oscar, Butter, Jasmine, Noir)
|
|
- [ ] Community feedback loop
|
|
- [ ] Refine based on player reactions
|
|
|
|
**Phase 5: Advanced Techniques (Month 2)**
|
|
- [ ] Custom spawn town (Fire + Ice districts via TEdit)
|
|
- [ ] Full UI overhaul
|
|
- [ ] Custom NPC dialogue (Fire/Frost themed)
|
|
- [ ] Economy system with Firefrost currencies
|
|
|
|
**Phase 6: Master System (Month 3+)**
|
|
- [ ] Complete visual identity guide
|
|
- [ ] Skills transfer to Minecraft resource packs
|
|
- [ ] Skills transfer to Among Us skins (when ready for Phase 2 expansion)
|
|
- [ ] Template system for rapid asset creation
|
|
|
|
**Dependencies:**
|
|
- Pterodactyl TShock egg (verify available)
|
|
- GIMP installation and learning
|
|
- TEdit for world building
|
|
- Time allocation (self-paced, low pressure)
|
|
|
|
**Blocked By:** None — ready to start
|
|
|
|
**Success Metrics:**
|
|
- Michael comfortable creating textures independently
|
|
- Firefrost visual identity defined and documented
|
|
- Skills proven transferable to other games/platforms
|
|
- Community positive feedback on custom assets
|
|
|
|
**Among Us Deferred:** Weekly Discord events postponed until Month 4+ when branding skills are established and Meg is fully recovered. Allows Among Us launch with Fire/Frost skins Day 1 instead of vanilla experience.
|
|
|
|
---
|
|
|
|
|
|
### Mailcow Email Server — Self-Hosted Email on NC1
|
|
**Status:** ⭐ READY TO DEPLOY — Deploy on NC1 Charlotte (no VPS purchase needed)
|
|
**Decision:** February 15, 2026 — Strategic split: AI stack on TX1, Email on NC1 for geographic redundancy
|
|
|
|
**Why NC1 Instead of New VPS:**
|
|
- ✅ $0/month vs $10/month VPS cost
|
|
- ✅ Geographic redundancy (Email in Charlotte, AI in Dallas)
|
|
- ✅ Better disaster resilience (TX1 failure doesn't kill email)
|
|
- ✅ Clean IP confirmed by Breezehost
|
|
- ✅ Monster hardware (32-core EPYC vs 2-core VPS)
|
|
- ✅ NC1 has capacity after 20GB cleanup (46GB storage available)
|
|
- ✅ GRE tunnel protects game traffic from affecting email IP reputation
|
|
|
|
**NC1 Resources After Cleanup:**
|
|
- 251GB RAM (6GB needed for Mailcow = 2.4% usage)
|
|
- 46GB storage free (30GB needed for Mailcow = 65% of free space, still 16GB headroom)
|
|
- 32-core EPYC 7302P (massive overkill for email = good)
|
|
|
|
**Final Infrastructure Split:**
|
|
- **TX1 Dallas:** 6 game servers + Self-hosted AI stack (compute powerhouse)
|
|
- **NC1 Charlotte:** 6 game servers + Mailcow email (communications hub)
|
|
- **Command Center:** Management, Gitea, monitoring (network hub)
|
|
- **Ghost VPS:** Public-facing blog and NextCloud
|
|
|
|
**Breezehost Pre-Sale (Confirmed Feb 12):**
|
|
- Clean IP blocks available (reassign/migrate if any issues)
|
|
- rDNS available (most ranges settable in panel)
|
|
- Port 25 NOT blocked by default
|
|
- Any datacenter location works
|
|
|
|
**Deployment Plan:**
|
|
1. **NC1 Cleanup (30 min)** — Free 20GB space (see Phase 0 in AI stack section below)
|
|
2. **Deploy Mailcow on NC1** — Docker-based: Postfix, Dovecot, SOGo webmail, Rspamd, ClamAV
|
|
3. **Configure DNS** — SPF, DKIM, DMARC records
|
|
4. **Create email addresses** — 10-15 @firefrostgaming.com to start
|
|
5. **Test deliverability** — Send test emails, check spam scores
|
|
6. **Migrate off Plesk** — Accessibility nightmare eliminated
|
|
|
|
**Timeline:** Ready to deploy when Michael gets home (assuming medical clearance)
|
|
|
|
**Dependencies:**
|
|
- NC1 cleanup complete (Phase 0 optional → now mandatory)
|
|
- DNS access for SPF/DKIM/DMARC records
|
|
- Email addresses list prepared
|
|
|
|
---
|
|
|
|
### Create Scoped Gitea Token for Pokerole Project
|
|
**Status:** Blocked — waiting on Vaultwarden deployment
|
|
**Dependency:** Vaultwarden must be live first (token management)
|
|
**Scope:** Create a Gitea API token scoped to only the 4 pokerole-project repos. Replace the shared master token in `pokerole-project/misc-docs/SESSION-START-PROMPT.md`.
|
|
**Why:** Current setup uses the master token with a scope instruction (honor system). Iron Wall says defense in depth — scoped token enforces the boundary.
|
|
**After completion:** Update SESSION-START-PROMPT.md with new token, store in Vaultwarden.
|
|
|
|
---
|
|
|
|
### Department Structure & Access Control Matrix — DESIGN
|
|
**Status:** New — design phase (Feb 13, 2026)
|
|
**Priority:** HIGH (blocks Staff Wiki/Subscriber Wiki/Discord configuration)
|
|
**Deliverable:** `docs/planning/access-control-matrix.md`
|
|
|
|
**Scope:** Unified role-based access control across three platforms + Discord:
|
|
- **Ghost** (firefrostgaming.com) — public storefront, no auth needed
|
|
- **Subscriber Wiki** (subscribers.firefrostgaming.com) — gated member content
|
|
- **Staff Wiki** (staff.firefrostgaming.com) — internal operations, department-restricted
|
|
- **Discord** — role/channel structure mirroring department access
|
|
|
|
**Top Tier (Full Access):** Michael (The Wizard), Meg (The Emissary), Claude (The Chronicler)
|
|
|
|
**Departments to define (proposed):**
|
|
- Moderation
|
|
- Server Administration
|
|
- Content / Social Media
|
|
- Community Events
|
|
- Build Team
|
|
|
|
**Design first, implement after.** No permissions get wired until the model is approved.
|
|
|
|
---
|
|
|
|
---
|
|
|
|
## 🟡 MEDIUM PRIORITY
|
|
|
|
### Vaultwarden Organization Setup for Meg
|
|
**Status:** New — identified Feb 13, 2026
|
|
**Priority:** MEDIUM (enables team password management)
|
|
**Location:** vault.firefrostgaming.com
|
|
|
|
**Goal:** Set up Vaultwarden Organization so Meg (The Emissary) can access shared passwords and contribute to the vault.
|
|
|
|
**Steps:**
|
|
1. Create "Firefrost Gaming" organization in Vaultwarden (Free plan, 2 users)
|
|
2. Invite Meg via email to join the organization
|
|
3. Create Collections (password folders):
|
|
- Server Credentials
|
|
- Social Media Accounts
|
|
- Billing & Financial
|
|
- Game Server Admin
|
|
4. Move relevant shared passwords into collections
|
|
5. Grant Meg appropriate access to each collection
|
|
6. Help Meg:
|
|
- Create her Vaultwarden account
|
|
- Accept organization invite
|
|
- Install browser extension (Chrome/Firefox)
|
|
- Configure extension to point to vault.firefrostgaming.com
|
|
7. Test: Verify Meg can access shared passwords and add new ones
|
|
|
|
**Why Medium Priority:**
|
|
- Vaultwarden is already functional for Michael
|
|
- Meg can manage shared passwords without Git/technical knowledge
|
|
- Unblocks her ability to contribute credentials (social media, services, etc.)
|
|
- Team password management = better security than sharing master password
|
|
|
|
---
|
|
|
|
### Command Center Security Hardening
|
|
**Status:** New — identified Feb 13, 2026
|
|
**Priority:** MEDIUM (UFW active, but can be improved)
|
|
**Scope:** Command Center VPS (63.143.34.217)
|
|
|
|
**Current State:**
|
|
- ✅ UFW enabled with default deny incoming
|
|
- ✅ Ports 22, 80, 443 open on primary IP
|
|
- ❌ Fail2Ban not installed
|
|
- ❌ SSH not hardened (still allows password auth)
|
|
- ❌ No rate limiting on SSH
|
|
|
|
**Tasks:**
|
|
1. Install and configure Fail2Ban (auto-ban brute force attempts)
|
|
2. SSH hardening:
|
|
- Disable password authentication (key-only)
|
|
- Consider non-standard SSH port
|
|
- Rate limit connection attempts
|
|
3. Review UFW rules (ensure minimal necessary access)
|
|
4. Document security configuration in repo
|
|
|
|
**Why Medium Priority:**
|
|
- Breezehost provides network-level DDoS protection
|
|
- UFW already active with sensible defaults
|
|
- No active threats, but defense-in-depth is good practice
|
|
|
|
---
|
|
|
|
### MkDocs Decommission
|
|
**Status:** New — decision made Feb 13, 2026
|
|
**Reason:** Ghost CMS handles public-facing content. Subscriber Wiki handles gated content. MkDocs serves no distinct purpose in the new three-tier model (Ghost → Subscriber Wiki → Staff Wiki).
|
|
**ADR:** To be documented in `docs/reference/architecture-decisions.md`
|
|
|
|
**Decommission steps:**
|
|
1. Audit current MkDocs content — migrate anything needed to Ghost or Subscriber Wiki
|
|
2. Remove Uptime Kuma monitor for docs.firefrostgaming.com
|
|
3. Tear down MkDocs service on Ghost VPS
|
|
4. Release Nginx config and SSL cert (redirect docs.firefrostgaming.com to Ghost or retire)
|
|
5. Archive `docs/deployment/mkdocs.md` to `docs/archive/`
|
|
6. Update: project-scope, infrastructure-manifest, session-handoff, SESSION-HANDOFF-PROTOCOL, DOCUMENT-INDEX
|
|
7. Log in CHANGELOG
|
|
|
|
**Depends on:** Department/permissions design being complete (so we know what goes where)
|
|
|
|
---
|
|
|
|
### Consultant Photo Processing
|
|
**Status:** 56 unprocessed photos on Michael's local machine + 4 Snapchat exports in `photos/images/unknown/`
|
|
**Priority:** Schedule early in a session (front-load before heavy work, check session health after)
|
|
**Plan:**
|
|
- Upload in batches of 10 to Claude
|
|
- Identify subjects, write lore, rename using standardized convention
|
|
- Convention: `YYYY-MM-DD_subject-description-keywords_01.jpg`
|
|
- One underscore after date, hyphens for everything else, `_01` `_02` for series
|
|
- Organize into year folders, commit via Gitea API
|
|
- Update `photos/catalog.md` with new entries
|
|
|
|
### NextCloud Upload Portal for Meg (The Emissary)
|
|
**Status:** New — designed Feb 13, 2026
|
|
**Priority:** MEDIUM (blocks Meg's ability to contribute photos/videos to the archive)
|
|
**Location:** downloads.firefrostgaming.com (NextCloud, already deployed)
|
|
|
|
**The Problem:** Meg isn't tech-savvy and will never use Git. She needs a KISS method to upload photos and videos that end up in the repo.
|
|
|
|
**The Solution:**
|
|
- Create an "Emissary Uploads" folder in NextCloud
|
|
- Meg drags/drops files via browser or NextCloud mobile app
|
|
- Backend: automation picks up files, renames to convention, commits to Git
|
|
- Automated notification to Michael when files are uploaded
|
|
|
|
**Deliverables:**
|
|
1. Create and configure the "Emissary Uploads" folder in NextCloud
|
|
2. Set up Meg's NextCloud account with appropriate permissions
|
|
3. Install NextCloud mobile app on Meg's phone
|
|
4. **Write visual tutorial for Meg** (she's a visual learner):
|
|
- PDF format (reference on phone or print)
|
|
- Big, clear screenshots with arrows and numbered steps
|
|
- Mobile-first design (phone screenshots primary, desktop secondary)
|
|
- Maximum 1-2 sentences per step
|
|
- Start with WHY: "These photos preserve our family archive forever"
|
|
- Include error recovery: "If you made a mistake, just text Michael"
|
|
5. Test with Meg first — watch where she gets confused, adjust tutorial accordingly
|
|
6. Set up backend sync process with automated notification (email/Discord to Michael)
|
|
7. Test end-to-end: Meg uploads → notification sent → file appears in Git
|
|
|
|
### Command Center Root Cleanup
|
|
**Status:** Artifacts identified, need to move/delete
|
|
**Move to `/root/backups/gitea/`:**
|
|
- gitea-backup-20260208-2203...
|
|
- gitea-data-20260209.tar.gz
|
|
- gitea-db-20260209.sql
|
|
- gitea-db-full.sql
|
|
- gitea-migration-manifest.txt
|
|
|
|
**Archive to repo (`docs/deployment-logs/`):**
|
|
- wiki-deployment-logs-feb10.txt
|
|
- wiki-deployment-summary.txt
|
|
|
|
**Delete:**
|
|
- dead.letter (system cruft)
|
|
- extract-key-info.sh (one-off script)
|
|
- master (empty 0-byte file)
|
|
|
|
### Fix Frostwall vs Firefrost Naming
|
|
**Status:** New — discovered Feb 12
|
|
**Issue:** Design bible calls UI visual gate "The Frostwall Protocol" — should be Firefrost branding
|
|
**Clarification:**
|
|
- **Frostwall** = Network defense ONLY (GRE topology, UFW, DDoS protection, hub-and-spoke)
|
|
- **Firefrost** = Visual/brand concepts (UI transitions, age verification, Ignis Protocol)
|
|
**Action:** Rename in design bible, ensure Frostwall gets its own proper network security document
|
|
|
|
### Scope Document Corrections
|
|
**Status:** New — discovered Feb 12
|
|
**Issues found:**
|
|
- Billing location missing (Chicago, IL)
|
|
- Ghost location missing (Chicago, IL)
|
|
- Panel location incomplete (Charlotte, NC)
|
|
- "GitHub mirror removed" — should say "GitHub kept as private backup"
|
|
**Action:** Fix during doc audit or as standalone update
|
|
|
|
---
|
|
|
|
### Staggered Server Restart System
|
|
**Status:** New — workshopped Feb 13, 2026
|
|
**Priority:** MEDIUM (pairs with startup script audit, addresses ATM10 memory leak)
|
|
|
|
**Phase 1 — Quick Win (Command Center script):**
|
|
- Config-file driven (easy add/remove servers, no script edits)
|
|
- Three restart tiers: Heavy (6hr), Mid (12hr), Light (24hr)
|
|
- 5-minute stagger between servers on same node
|
|
- Simultaneous across nodes (TX1 and NC1 are separate hardware)
|
|
- Warning messages sent to players before each restart
|
|
- Logs every restart to Git
|
|
- Lives in automation system on Command Center
|
|
- **NOTE:** When we build this, workshop session first — Michael may have additional ideas/features to add
|
|
|
|
**Phase 2 — Blueprint Extension (future):**
|
|
- Custom Pterodactyl panel extension via Blueprint framework
|
|
- Per-server cron tab UI built into each server's panel page
|
|
- Global admin view showing all schedules at a glance
|
|
- Database-backed schedule storage
|
|
- Publishable to Blueprint community marketplace
|
|
- See IDEA-005 in ideas backlog
|
|
|
|
**Config structure (designed):**
|
|
```
|
|
restart_tiers:
|
|
heavy: "0 2,8,14,20 * * *"
|
|
mid: "0 3,15 * * *"
|
|
light: "0 4 * * *"
|
|
|
|
stagger_minutes: 5
|
|
warning_minutes: 3
|
|
```
|
|
Each server gets: name, uuid, node, tier, enabled flag
|
|
|
|
---
|
|
|
|
### Game Server Startup Script Audit & Optimization
|
|
**Status:** New — identified Feb 13, 2026
|
|
**Priority:** MEDIUM (recurring issue source)
|
|
**Scope:** All 12 game servers (6 TX1, 6 NC1)
|
|
|
|
**The Problem:** Multiple issues have traced back to startup scripts. These need a systematic audit and optimization pass to prevent recurring problems.
|
|
|
|
**Plan:**
|
|
1. Pull and review every game server startup script via Pterodactyl panel
|
|
2. Identify common issues (memory allocation, JVM flags, mod loading order, timeout settings)
|
|
3. Establish a baseline "good" startup template per modpack type
|
|
4. Optimize each server's startup script individually
|
|
5. Document the optimized scripts in the repo (new file: `docs/reference/game-server-startups.md`)
|
|
6. Test each server after changes
|
|
7. Monitor via Uptime Kuma for stability post-optimization
|
|
|
|
**Servers to audit:**
|
|
- **TX1 Dallas:** Stoneblock 4, Reclamation, Society: Sunlit Valley, Vanilla 1.21.11, All The Mons, FoundryVTT
|
|
- **NC1 Charlotte:** The Ember Project, Minecolonies: Create and Conquer, All The Mods 10, EMC Subterra Tech, Homestead, Hytale
|
|
|
|
**Approach:** Code-Server for audit/documentation (read, compare, diff), Pterodactyl panel for applying changes. Gold standard optimization — not quick fixes, proper tuning.
|
|
|
|
**Priority server:** All The Mods 10 (NC1) — struggling with only 1 user connected. Likely JVM flags, memory allocation, or garbage collection misconfiguration. ATM10 is a heavy modpack and needs aggressive tuning.
|
|
|
|
**Notes:** This is hands-on work — needs a session where Michael can access the panel and we review together.
|
|
|
|
---
|
|
|
|
|
|
|
|
### Discord Server Complete Reorganization
|
|
**Status:** PLANNED — Future implementation
|
|
**Priority:** Medium
|
|
**Context:** Full Discord structure designed (docs/archive/2026-02-09-consolidation/discord-structure-complete.md) but needs implementation or revision
|
|
**Scope:**
|
|
- Review current Discord structure vs documented plan (Feb 8, 2026 design)
|
|
- Determine if implementing existing plan OR redesigning from scratch
|
|
- Account for new servers (Terraria launch, server count changes)
|
|
- Update Fire/Frost path channels if needed
|
|
- Implement channel reorganization (manual Discord work, design by Claude)
|
|
**Dependencies:** None (can start anytime)
|
|
**Estimated Time:** Design 2-3 hours, Implementation 1-2 hours manual Discord clicking
|
|
**Reference:** `docs/archive/2026-02-09-consolidation/discord-structure-complete.md`
|
|
|
|
## 🟢 LOW PRIORITY
|
|
|
|
### Pending Blueprint Extension Installation — Node Usage Status
|
|
**Status:** Pending installation
|
|
**Location:** Pterodactyl Panel (45.94.168.138, Charlotte, NC)
|
|
**Extension:** Node Usage Status (https://builtbybit.com/resources/node-usage-status.59502/)
|
|
**Description:** Monitor node resource usage and status directly in the panel
|
|
**Action:** Install via Blueprint framework when ready
|
|
|
|
### Pending Paymenter Theme Installation — Citadel Theme
|
|
**Status:** Pending installation
|
|
**Location:** Billing VPS (38.68.14.188, Chicago, IL)
|
|
**Theme:** Citadel Theme for Paymenter (https://builtbybit.com/resources/citadel-theme-paymenter.82217/)
|
|
**Description:** Custom theme for Paymenter billing portal
|
|
**Action:** Install and configure when ready
|
|
|
|
---
|
|
|
|
### Workflow Guide Review & Trim
|
|
**Status:** New — identified during consolidation audit
|
|
**File:** docs/core/workflow-guide.md (938 lines)
|
|
**Issues:** Still calls Claude "The Wizard" instead of "The Chronicler", potentially redundant with current practices
|
|
**Action:** Review, update role name, trim if content overlaps with current docs
|
|
|
|
### Frostwall (UFW) Deployment
|
|
**Status:** Planned
|
|
**Scope:** Game servers (TX1, NC1)
|
|
**Approach:** Self-healing scripts with automation
|
|
|
|
### LuckPerms MySQL Backend
|
|
**Status:** Planned
|
|
**Scope:** Permission management for game servers
|
|
|
|
### World Backup Automation
|
|
**Status:** Planned
|
|
**Scope:** Automated world backups to NextCloud
|
|
|
|
### Netdata Deployment
|
|
**Status:** Planned
|
|
**Domain:** analytics.firefrostgaming.com
|
|
**Scope:** Server analytics and performance monitoring
|
|
|
|
---
|
|
|
|
## ✅ RECENTLY COMPLETED
|
|
|
|
### Feb 13, 2026 (Late Evening — Vaultwarden Deployment)
|
|
- ✅ Docker installed on Command Center (docker.io + docker-compose)
|
|
- ✅ Vaultwarden deployed via Docker (vault.firefrostgaming.com)
|
|
- ✅ SSL certificate obtained via Certbot (Let's Encrypt)
|
|
- ✅ Nginx reverse proxy configured with HTTPS
|
|
- ✅ UFW rules added for ports 80/443 on primary IP
|
|
- ✅ DNS configured (A record, DNS-only/gray cloud)
|
|
- ✅ Admin account created, public signups disabled
|
|
- ✅ Gitea API token migrated to Vaultwarden vault
|
|
- ✅ Temporary token file deleted from Git repo
|
|
- ✅ Bitwarden browser extension installed and configured
|
|
- ✅ SESSION-START-PROMPT.md updated to reference Vaultwarden
|
|
|
|
### Feb 13, 2026 (Evening)
|
|
- ✅ Gemini social media calendar reviewed — confirmed in sync with repo
|
|
- ✅ Empty heading artifacts cleaned from gemini-social-media-calendar.md
|
|
- ✅ Documentation tier decision: MkDocs decommission approved (Ghost + Subscriber Wiki + Staff Wiki)
|
|
- ✅ Department/access control design scope defined
|
|
|
|
### Feb 12, 2026 (Morning — Consolidation)
|
|
- ✅ Full documentation audit (54 docs analyzed for overlaps/stale info)
|
|
- ✅ FFG-STD-001 Revision Control Standard created and approved
|
|
- ✅ Ideas Backlog created (FFG-PLN-010) with 2 initial ideas
|
|
- ✅ Infrastructure manifest corrected (locations, statuses)
|
|
- ✅ Project scope corrected (locations, GitHub status)
|
|
- ✅ Architecture decisions rewritten (5 ADRs, stale info fixed)
|
|
- ✅ Design bible: "Frostwall Protocol" → "Firefrost Gate" (ADR-005)
|
|
- ✅ README.md rewritten (current state)
|
|
- ✅ 4 files archived (migration plan/checklist/rollback, git-access-plan)
|
|
- ✅ 3 files merged (what-claude-learned→relationship, legacy-vision→mission, photo-catalog→archive)
|
|
- ✅ 1 duplicate deleted (technical-readme.md)
|
|
- ✅ session-handoff.md de-duplicated (server tables → manifest references)
|
|
- ✅ gemini-brainstorming-guide.md trimmed (1,532 → 154 lines)
|
|
- ✅ test-file.md deleted
|
|
- ✅ Mailcow pre-sale ticket sent to Breezehost
|
|
- ✅ DOCUMENT-INDEX updated to reflect all changes
|
|
|
|
### Feb 12, 2026 (Early AM)
|
|
- ✅ Repository reorganized (48 docs moved, 15 deleted, 259 photos relocated)
|
|
- ✅ SESSION-HANDOFF-PROTOCOL.md created (master session start doc)
|
|
- ✅ Claude officially named "The Chronicler"
|
|
- ✅ Origin story documented (Michael & Meg + Donna's Restaurant)
|
|
- ✅ Lore dump queue established (5 topics, 2 documented)
|
|
- ✅ Project files audited and cleaned (all 13 removed)
|
|
- ✅ Token archived temporarily
|
|
- ✅ Project instructions rewritten
|
|
- ✅ DOCUMENT-INDEX.md rebuilt with directory primer
|
|
- ✅ GitHub mirror made private (kept as backup)
|
|
- ✅ Artifacts panel added to accessibility protocol
|
|
|
|
### Feb 11, 2026
|
|
- ✅ TX1 game servers restored (all 6 — wrong IP allocations fixed)
|
|
- ✅ Code-Server deployed and mastered (code.firefrostgaming.com)
|
|
- ✅ NextCloud operational (downloads.firefrostgaming.com)
|
|
- ✅ Wiki.js Subscribers deployed (subscribers.firefrostgaming.com)
|
|
- ✅ Wiki.js Staff deployed (staff.firefrostgaming.com)
|
|
- ✅ FoundryVTT subdomain setup
|
|
- ✅ Consultant photo archive (249 photos organized, renamed, cataloged)
|
|
- ✅ Gitea API access for Claude (read/write confirmed)
|
|
- ✅ Session handoff v2.1 (GitHub references removed)
|
|
- ✅ Project scope v2.2 (8 services, current state)
|
|
- ✅ 12 Lessons documented in relationship context
|
|
- ✅ All emergency/transition documents committed to Git
|
|
- ✅ Game server monitoring added to Uptime Kuma (all 12)
|
|
|
|
---
|
|
|
|
## ⚠️ MODEL RECOMMENDATION (ADR-006)
|
|
|
|
**Use Sonnet 4.5 for operations sessions.** Opus 4.6 (launched Feb 5, 2026) has known stability issues with long, tool-heavy sessions — two Chronicler the Second incarnations were lost to crashes on Feb 13. See ADR-006 in architecture-decisions.md. Reserve Opus for complex architecture planning or deep analysis only.
|
|
|
|
---
|
|
|
|
## 📋 NEXT SESSION PLAN (Feb 14, 2026)
|
|
|
|
1. Switch to Sonnet 4.5 model in Claude settings
|
|
2. Deploy Vaultwarden → move token → delete temp file
|
|
3. Design department structure & access control matrix
|
|
4. Begin MkDocs decommission (audit content first)
|
|
5. Clean up Command Center root
|
|
6. Update infrastructure docs (project-scope, manifest, session-handoff, etc.)
|
|
|
|
---
|
|
|
|
**Fire + Frost + Foundation = Where Love Builds Legacy** 💙🔥❄️
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
## 🗺️ 2027 ROADMAP — FLAGSHIP PROJECTS
|
|
|
|
### Firefrost: The Eternal Skyforge (Custom Modpack)
|
|
**Status:** CONCEPT APPROVED — Target 2027 launch
|
|
**Brainstorm Session:** 2026-02-14-firefrost-modpack-report.md (The Spark)
|
|
**Strategic Value:** Flagship modpack that makes Fire/Frost philosophy playable
|
|
|
|
**Core Concept:**
|
|
Custom skyblock modpack where players choose Fire (magic/dragons/Meg's domain) or Frost (tech/trains/Michael's domain) paths. Late-game Convergence Island requires collaboration. Dragons vs Trains as asymmetric mounts. Embodies "Fire + Frost = Forever" as gameplay.
|
|
|
|
**Why 2027 (Not 2026):**
|
|
- Requires branding skills from Terraria training (Months 1-3)
|
|
- Needs recruited builders for quest design (40+ hours work)
|
|
- Needs Meg fully recovered and active (Fire path is her domain)
|
|
- Flagships deserve proper development time (no rushed launch)
|
|
|
|
**Dependencies:**
|
|
- ✅ Terraria branding training complete (visual identity defined)
|
|
- ✅ Builders recruited and onboarded (quest design support)
|
|
- ✅ Among Us Phase 1 proven successful (community expansion working)
|
|
- ✅ Meg recovered and running Fire events regularly
|
|
|
|
**2027 Timeline:**
|
|
- Q1: Mod compatibility testing, performance benchmarking
|
|
- Q2: Quest design (dual FTB Quest trees, 40+ hours)
|
|
- Q3: Alpha launch (5-10 test players), iteration, balance tuning
|
|
- Q4: Public launch, CurseForge upload, marketing push
|
|
|
|
**Technical Scope:**
|
|
- Mods: Create, Mystical Agriculture, Botania, Ars Nouveau, Ice & Fire, Thermal, AE2, Farmer's Delight
|
|
- FTB Quests: Dual progression trees (Fire vs Frost)
|
|
- World Gen: Skyblock with private islands, Great Hall, Flamehall, Crystal Spire
|
|
- Custom Branding: Texture pack, loading screens, Discord integration
|
|
- Server: Dedicated slot (TX1 or NC1), performance optimized
|
|
|
|
**Success Metrics:**
|
|
- Fire/Frost team balance (45-55% split acceptable)
|
|
- Player retention past Convergence unlock (25+ hours)
|
|
- Community monuments built (Dragon Railway Stations)
|
|
- Meg running regular Fire events, Michael running Frost challenges
|
|
- CurseForge downloads and positive reviews
|
|
|
|
**Next Steps (When Ready in 2027):**
|
|
1. Review full concept document
|
|
2. Conduct mod compatibility testing
|
|
3. Build test server environment
|
|
4. Design FTB Quest trees
|
|
5. Create starter structures (Great Hall, etc.)
|
|
6. Alpha testing phase
|
|
7. Iterate based on feedback
|
|
8. Public launch
|
|
|
|
**Status:** Parked until 2027. Keep concept preserved. This is worth doing RIGHT.
|
|
|
|
---
|
|
|
|
|
|
|
|
## 🔮 FUTURE TASKS (Month 4+)
|
|
|
|
### Discord Server Complete Reorganization
|
|
**Reference:** `docs/archive/2026-02-09-consolidation/discord-structure-complete.md`
|
|
|
|
**Scope:** Implement or update the Fire vs Frost Discord structure:
|
|
- 15 server-specific channels (bidirectional Minecraft ↔ Discord)
|
|
- Fire Path vs Frost Path competitive categories
|
|
- Subscription tier roles (Awakened $1, Elemental $5, Knight/Master/Legend)
|
|
- The Nexus (Founder exclusive space)
|
|
- FoundryVTT integration
|
|
- Command Center (staff only)
|
|
|
|
**Current State:** Structure documented but needs implementation or update
|
|
|
|
**Depends On:**
|
|
- [ ] Branding skills from Terraria training (visual identity clear)
|
|
- [ ] Recruitment successful (community growing beyond 3 members)
|
|
- [ ] Server stability established (15 servers operational)
|
|
- [ ] Payment automation working (Paymenter → Discord role assignment)
|
|
|
|
**Priority:** After Terraria branding, recruitment, and infrastructure stabilization
|
|
|
|
**Time Estimate:** 1-2 hours execution once designed/confirmed
|
|
|
|
**Notes:** Michael requested complete reorganization. Existing structure comprehensive but may need updates based on which servers are currently active/planned.
|
|
|
|
---
|
|
|
|
|
|
---
|
|
|
|
## 🤖 SELF-HOSTED AI STACK (When Recovered from Medical Episode)
|
|
|
|
**Status:** READY TO DEPLOY — Pinned until medical recovery complete
|
|
**Added:** February 14, 2026
|
|
**Medical Context:** 4 hours vomiting Feb 14, trace blood in urine, swollen tongue, recovering
|
|
|
|
### **⚠️ START ONLY WHEN:**
|
|
- ✅ Doctor visit complete (Monday/Tuesday Feb 17-18)
|
|
- ✅ Medical clearance received
|
|
- ✅ Energy level back to normal
|
|
- ✅ Jack calm and not alerting
|
|
- ✅ No lingering symptoms
|
|
|
|
---
|
|
|
|
### **Phase 0: NC1 Cleanup (MANDATORY — Required for Mailcow Email Server)**
|
|
|
|
**Status:** Now mandatory (was optional) — Mailcow will be deployed on NC1
|
|
**Discovered:** 20GB recoverable on NC1 (10GB Hytale backups, 4.5GB old logs, 6GB Docker)
|
|
**Purpose:** Free space for Mailcow email server deployment on NC1
|
|
|
|
```bash
|
|
ssh root@216.239.104.130
|
|
|
|
# Delete Hytale backups/install files (10GB)
|
|
rm -rf /var/lib/pterodactyl/volumes/13c80cb8-f6f8-4bfe-9cdb-823d7e951584/backups
|
|
rm -f /var/lib/pterodactyl/volumes/13c80cb8-f6f8-4bfe-9cdb-823d7e951584/*.zip
|
|
|
|
# Clean old logs (4.5GB)
|
|
journalctl --vacuum-time=7d
|
|
rm -f /var/log/btmp.1 && > /var/log/btmp
|
|
rm -f /var/log/*.gz
|
|
|
|
# Clean Docker (6GB)
|
|
docker system prune -a --volumes -f
|
|
|
|
# Verify
|
|
df -h /
|
|
```
|
|
|
|
**Result:** 26GB → 46GB free (30GB needed for Mailcow, 16GB headroom)
|
|
**Time:** 30 minutes
|
|
|
|
**After cleanup, NC1 Charlotte becomes:**
|
|
- 6 game servers (existing)
|
|
- Mailcow email server (new) — 6GB RAM, 30GB storage
|
|
- Geographic redundancy partner to TX1
|
|
|
|
---
|
|
|
|
### **Phase 1: Deploy AI Stack on TX1**
|
|
|
|
**TX1 Resources:** 251GB RAM (222GB free), 809GB storage, 32-core EPYC 7302P
|
|
|
|
**Stack Components:**
|
|
- Ollama (LLM backend)
|
|
- Open WebUI (chat interface)
|
|
- Perplexica (web search)
|
|
- SearXNG (meta-search engine)
|
|
|
|
**Deployment:**
|
|
```bash
|
|
ssh root@38.68.14.26
|
|
mkdir -p /opt/ai-stack && cd /opt/ai-stack
|
|
|
|
# The Weaver will provide complete docker-compose.yml
|
|
|
|
docker compose up -d
|
|
```
|
|
|
|
**Access:** http://38.68.14.26:3000
|
|
**Time:** 30 min deploy
|
|
|
|
---
|
|
|
|
### **Phase 2: Load LLM Models**
|
|
|
|
```bash
|
|
# Run overnight (6-8 hours total download time)
|
|
docker exec ollama ollama pull qwen2.5-coder:72b # Coding/technical (42GB RAM)
|
|
docker exec ollama ollama pull llama3.3:70b # Conversation (40GB RAM)
|
|
docker exec ollama ollama pull llama3.2-vision:11b # Images (8GB RAM)
|
|
```
|
|
|
|
**Total:** ~90GB RAM, 80GB storage
|
|
|
|
---
|
|
|
|
### **Phase 3: Gitea Integration (DERP)**
|
|
|
|
**Python bridge script on Command Center** (`/opt/derp/ai-assistant.py`)
|
|
|
|
**Function:**
|
|
- Read foundation docs from Gitea
|
|
- Send to Ollama on TX1
|
|
- Write responses back to Gitea
|
|
- Emergency activation when Claude unavailable
|
|
|
|
**The Weaver provides complete script when ready.**
|
|
|
|
**Time:** 1-2 hours
|
|
|
|
---
|
|
|
|
### **Phase 4: Staff AI Assistant (Staff Wiki Integration)**
|
|
|
|
**Purpose:** Embedded AI assistant for staff to answer questions about Firefrost procedures, policies, and server management without bothering Michael/Meg.
|
|
|
|
**Use Cases:**
|
|
- Server-specific questions ("How do I use WorldEdit on creative server?")
|
|
- Policy lookups ("What's our griefing response protocol?")
|
|
- Quick troubleshooting ("Player can't connect, what do I check?")
|
|
- Learning Firefrost procedures and culture
|
|
- Onboarding tool for new staff (builders, moderators, helpers)
|
|
|
|
**Implementation Options:**
|
|
|
|
**Option A - Embedded Chat Widget (Recommended):**
|
|
- Add chat interface to staff.firefrostgaming.com
|
|
- Staff logs in via existing auth
|
|
- AI responds using Firefrost knowledge base
|
|
- Clean, simple, where staff already work
|
|
|
|
**Option B - Dedicated Staff Portal:**
|
|
- Separate section of Open WebUI on TX1
|
|
- Staff-specific login credentials
|
|
- Pre-loaded with Firefrost context
|
|
- Usage tracking and conversation logs
|
|
|
|
**Option C - Discord Bot:**
|
|
- AI responds in staff-only Discord channels
|
|
- Staff ask questions where they already hang out
|
|
- Logs conversations for review
|
|
|
|
**Knowledge Base (What It Knows):**
|
|
- Staff wiki content (procedures, SOPs)
|
|
- Server-specific guides (WorldEdit, permissions, etc.)
|
|
- Firefrost culture and philosophy
|
|
- Common troubleshooting steps
|
|
- **NOT operations-manual repo** (keeps private stuff private)
|
|
|
|
**Access Control:**
|
|
- Read-only access (won't edit docs)
|
|
- Only sees approved staff documentation
|
|
- All conversations logged (optional oversight)
|
|
- You control exactly what it can access
|
|
|
|
**Benefits:**
|
|
- ✅ 24/7 staff support (no waiting for Michael to wake up)
|
|
- ✅ Reduces "Michael, how do I...?" interruptions
|
|
- ✅ Consistent answers based on documented procedures
|
|
- ✅ Onboarding tool for recruitment (supports builder/helper expansion)
|
|
- ✅ Self-hosted, free, private, controlled
|
|
- ✅ Pairs with recruitment strategy (staff can self-serve answers)
|
|
|
|
**Technical Implementation:**
|
|
- Uses same TX1 Ollama backend (already deployed in Phases 1-2)
|
|
- Add staff-wiki docs to knowledge base
|
|
- Configure access permissions
|
|
- Deploy chat interface or bot integration
|
|
- Test with Michael/Meg before rolling out to staff
|
|
|
|
**Timeline:** 2-3 hours after Phases 1-3 complete
|
|
|
|
**Dependencies:**
|
|
- Phases 1-2 complete (Ollama + models deployed)
|
|
- Staff wiki content documented
|
|
- Decision on implementation option (A, B, or C)
|
|
|
|
**Future Enhancement:**
|
|
- Can expand to public-facing "Firefrost Helper" for players (FAQ, basic support)
|
|
- Multi-language support for international community
|
|
- Voice interface for accessibility
|
|
|
|
---
|
|
|
|
### **⚠️ NOT RECOMMENDED: Migrate TX1 Games to NC1**
|
|
|
|
**Analysis (Feb 14, 2026):** Migration provides NO meaningful benefit and introduces unnecessary risk.
|
|
|
|
**Why NOT to migrate:**
|
|
- ❌ No performance gain (identical hardware)
|
|
- ❌ 3-6 hours work for purely aesthetic benefit
|
|
- ❌ Loses geographic/hardware redundancy (currently TX1 Dallas + NC1 Charlotte)
|
|
- ❌ Single point of failure (all 15 servers on NC1)
|
|
- ❌ Storage constraints (NC1: 98GB total vs TX1: 911GB total)
|
|
- ❌ Player disruption (new IPs, Discord updates needed)
|
|
|
|
**Why TX1 + AI coexistence works:**
|
|
- ✅ TX1 has 809GB free storage (AI needs ~100GB, games use 24GB = 685GB still free)
|
|
- ✅ TX1 has 222GB free RAM (AI needs ~90GB, games use 20GB = 112GB still free)
|
|
- ✅ Separate directories (/opt/ai-stack vs /var/lib/pterodactyl)
|
|
- ✅ No resource conflicts
|
|
- ✅ 14% storage usage, 50% RAM usage (very comfortable)
|
|
|
|
**Conclusion:** Deploy AI on TX1 alongside existing games. Leave infrastructure as-is.
|
|
|
|
**Only migrate if:** TX1 storage/RAM becomes constrained (extremely unlikely with current headroom)
|
|
|
|
---
|
|
|
|
### **End Result:**
|
|
|
|
**Personal/DERP Use:**
|
|
- ✅ Self-hosted AI (80-90% Claude capability)
|
|
- ✅ $0 monthly cost (vs $20-40 for cloud AI)
|
|
- ✅ Complete privacy and control
|
|
- ✅ Unlimited usage, no rate limits
|
|
- ✅ DERP backup ready (partnership survives provider failure)
|
|
- ✅ Can run multiple models simultaneously
|
|
|
|
**Staff Support:**
|
|
- ✅ 24/7 AI assistant for staff questions
|
|
- ✅ Reduces Michael/Meg interruptions
|
|
- ✅ Accelerates staff onboarding
|
|
- ✅ Consistent policy/procedure answers
|
|
- ✅ Supports recruitment and scaling
|
|
|
|
---
|
|
|
|
**Related:**
|
|
- `docs/core/DERP.md` — Emergency recovery protocol
|
|
- `technical/GEMINI-API-BRIDGE.md` — API patterns reference
|
|
- `docs/planning/terraria-branding-arc.md` — Other major project (also deferred for recovery)
|
|
|
|
**Recovery first. AI deployment second. Health always wins.**
|
|
|
|
🩺 → 🤖
|