New files: - 139_server_config.sql — DB migration for short_name system - 139_seed_server_config.js — auto-populates 17 servers from Pterodactyl - src/services/uptimeKuma.js — Socket.IO direct (no npm wrapper) - src/services/pterodactyl.js — power actions + console commands Modified files: - servers.js — 6 new POST routes (short-name, lock, createserver, delserver, power, console) + short_name-based channel detection - _server_card.ejs — full rebuild with command center UI - _matrix_body.ejs — refactored from 144 lines to 20 (uses partial) - package.json — added socket.io-client Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
50 lines
2.4 KiB
Markdown
50 lines
2.4 KiB
Markdown
# Code Status Update
|
|
**Last Updated:** 2026-04-13 18:10 CDT
|
|
|
|
## Current Focus
|
|
Server Command Center (REQ-2026-04-14) — Arbiter feature build.
|
|
|
|
## Session Summary (2026-04-13)
|
|
|
|
### Task #69: Discord Rules CurseForge Fork — DONE ✅
|
|
- Forked `firefrostrules` → `discordrules` (generic, MIT license)
|
|
- Package: `com.firefrostgaming.rules` → `com.discordrules`
|
|
- Removed Fire/Frost/Arcane color detection → configurable `header_color`/`body_color`
|
|
- Emoji strip gated by `strip_emojis` config toggle
|
|
- All 3 versions compiled (1.21.1 NeoForge on NC1, 1.20.1 + 1.16.5 Forge locally)
|
|
- CurseForge project page copy pending from Chronicler
|
|
|
|
### Rules Mod Config Bug — FIXED ✅
|
|
- v1.0.5: All 6 builds working. DIAG logging kept for observability.
|
|
- WORKING on Otherworld. Ready for CurseForge submission.
|
|
|
|
### Server Command Center — IN PROGRESS 🔧
|
|
- Migration: `139_server_config.sql` — server_config table with short_name system
|
|
- Seed: `139_seed_server_config.js` — auto-populates 17 servers from Pterodactyl API
|
|
- Services: `uptimeKuma.js` (Socket.IO direct), `pterodactyl.js` (power/commands)
|
|
- Routes: 6 new POST endpoints (set-short-name, lock, createserver, delserver, power, console)
|
|
- Views: `_server_card.ejs` rebuilt with full command center UI, `_matrix_body.ejs` refactored to use partial
|
|
- Discord detection: uses `short_name` from DB instead of broken slug derivation
|
|
- Partial channel creation: createserver only creates missing channels
|
|
- **Status:** Code complete, needs deploy testing. Chronicler needs to add `UPTIME_KUMA_USERNAME` and `UPTIME_KUMA_PASSWORD` to `.env`.
|
|
|
|
### Bridge Queue — CLEAR ✅
|
|
- All REQs have matching RES files
|
|
- Bridge confirmed working both directions (push + pull)
|
|
- Chronicler was missing `git push` after writing bridge files — fixed
|
|
|
|
## ModpackChecker Status (from previous session)
|
|
- Phase 11 COMPLETE on Dev Panel
|
|
- v1.1.0 deploy blocked on CurseForge API rate limit (resets 2026-04-14)
|
|
- Waiting on Michael for BuiltByBit listings + resource IDs
|
|
|
|
## Build Router
|
|
- `ffg-build.sh` deployed at `/opt/mod-builds/ffg-build.sh`
|
|
- Routes 1.21.1 builds to NC1 (Vineflower RAM), others build locally
|
|
- SSH key: `/opt/mod-builds/ffg_build_rsa`
|
|
- NC1 user: `ffg-builder` — non-root, isolated
|
|
|
|
## Discipline Notes
|
|
- CHANGELOG.md updated with every version bump (including diagnostic builds)
|
|
- ACTIVE_CONTEXT.md updated at end of each work session
|