Files
firefrost-services/docs/code-bridge/status/ACTIVE_CONTEXT.md
Claude (Chronicler #83 - The Compiler) 441dac4a54 docs: ACTIVE_CONTEXT — Server Command Center code complete
Full build inventory, deploy steps for Michael, session history.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 20:48:38 -05:00

2.7 KiB

Code Status Update

Last Updated: 2026-04-14 19:30 CDT

Current Focus

Server Command Center — CODE COMPLETE, ready for deploy.

Session Summary (2026-04-14)

Server Command Center — CODE COMPLETE

Full Arbiter feature build for REQ-2026-04-14.

New files:

  • migrations/139_server_config.sql — server_config table (short_name, subdomain, IP, port)
  • migrations/139_seed_server_config.js — 18 servers with hardcoded identifiers from Chronicler #87 audit
  • src/services/uptimeKuma.js — Socket.IO direct (connect → login → CRUD → disconnect)
  • src/services/pterodactyl.js — power actions, console commands, resource monitoring

Modified files:

  • src/routes/admin/servers.js — 8 POST routes: set-short-name, lock, createserver (partial), delserver, power, console, provision-subdomain, plus existing sync/toggle
  • src/views/admin/servers/_server_card.ejs — full rebuild: short name management, subdomain display + Cloudflare provisioning, Discord 5-channel detection, power controls
  • src/views/admin/servers/_matrix_body.ejs — refactored from 144 lines to 20 (uses _server_card partial)
  • package.json — added socket.io-client

Key features:

  • short_name system replaces broken slug derivation for Discord channel detection
  • Partial channel creation: createserver only creates missing channels (Farm Crossing 6 only needs -status)
  • Cloudflare DNS provisioning: A record + SRV record via API (3 servers still need provisioning)
  • Uptime Kuma: Socket.IO direct with username/password auth (no npm wrapper)
  • Power controls: start/stop/restart via Pterodactyl client API

Deploy steps (for Michael):

  1. npm install (adds socket.io-client)
  2. psql -f migrations/139_server_config.sql
  3. node migrations/139_seed_server_config.js
  4. Add to .env: UPTIME_KUMA_USERNAME, UPTIME_KUMA_PASSWORD
  5. Restart Arbiter

Previous Session (2026-04-13)

Task #69: Discord Rules CurseForge Fork — DONE

  • All 6 builds at v1.0.5 (3 firefrostrules + 3 discordrules)
  • CurseForge project page copy pending from Chronicler

Rules Mod Config Bug — FIXED

  • v1.0.5: Console fetch fix, COMMON config type, correct event bus, DIAG logging
  • WORKING on Otherworld

Bridge — WORKING

  • Both directions confirmed
  • Queue clear

ModpackChecker

  • Phase 11 COMPLETE on Dev Panel
  • v1.1.0 deploy blocked on CurseForge API rate limit
  • Waiting on Michael for BuiltByBit listings + resource IDs

Build Router

  • ffg-build.sh at /opt/mod-builds/ffg-build.sh
  • Routes 1.21.1 to NC1, others local
  • NC1 user: ffg-builder

Discipline Notes

  • CHANGELOG.md updated with every version bump (including diagnostic builds)
  • ACTIVE_CONTEXT.md updated at end of each work session