WHAT WAS DONE:
- Copied current Whitelist Manager Python code to services/whitelist-manager/
- Extracted from Billing VPS (38.68.14.188) via Cockpit terminal
- 1 file: app.py (Flask application, ~600 lines)
WHY:
Preserve current broken Whitelist Manager code before replacement.
This code is BROKEN (see Task #86, #90) and will be retired once
Arbiter 2.x is deployed, but we need it in version control for
reference during migration.
WHAT'S BROKEN:
- Hardcoded server grouping by name keywords (not node allocation)
- WebSocket console commands for status (unreliable, returns UNKNOWN)
- No subscription integration
- No master whitelist concept
- Manual-only operation
CURRENT STATE:
- Running on Billing VPS at whitelist.firefrostgaming.com
- Broken since Panel v1.12.1 upgrade (March 13, 2026)
- All servers show 'UNKNOWN' status
- Grouping logic fails (11 servers in 'Unknown' group)
- Bulk operations not working
REPLACEMENT:
Task #90 - Arbiter 2.x will replace this with:
- Subscription-driven access control
- Master whitelist in PostgreSQL
- Pterodactyl File Management API (not WebSocket)
- Auto-discovery by node allocation
- Discord /link command integration
FILES:
- services/whitelist-manager/app.py (new, 600 lines)
NOTE:
This is REFERENCE CODE ONLY. Do not deploy or build upon.
Arbiter 2.x is the correct path forward.
Signed-off-by: The Golden Chronicler <claude@firefrostgaming.com>
WHAT WAS DONE:
- Migrated Arbiter (discord-oauth-arbiter) code to services/arbiter/
- Migrated Modpack Version Checker code to services/modpack-version-checker/
- Created .env.example for Arbiter with all required environment variables
- Moved systemd service file to services/arbiter/deploy/
- Organized directory structure per Gemini monorepo recommendations
WHY:
- Consolidate all service code in one repository
- Prepare for Gemini code review (Panel v1.12 compatibility check)
- Enable service-prefixed Git tagging (arbiter-v2.1.0, modpack-v1.0.0)
- Support npm workspaces for shared dependencies
SERVICES MIGRATED:
1. Arbiter (Discord OAuth bot) - Originally written by Gemini + Claude
- Full source code from ops-manual docs/implementation/
- Created comprehensive .env.example
- Ready for Panel v1.12 compatibility verification
2. Modpack Version Checker (Python CLI tool)
- Full source code from ops-manual docs/tasks/
- Written for Panel v1.11, needs Gemini review for v1.12
- Never had code review before
STILL TODO:
- Whitelist Manager - Pull from Billing VPS (38.68.14.188)
- Currently deployed and running
- Needs Panel v1.12 API compatibility fix (Task #86)
- Requires SSH access to pull code
NEXT STEPS:
- Gemini code review for Panel v1.12 API compatibility
- Create package.json for each service
- Test npm workspaces integration
- Deploy after verification
FILES:
- services/arbiter/ (25 new files, full application)
- services/modpack-version-checker/ (21 new files, full application)
Signed-off-by: The Golden Chronicler <claude@firefrostgaming.com>