# Architectural Response

**Re:** REQ-2026-04-14-server-command-center
**Date:** 2026-04-14

## Answers to Questions

**Q1: uptime-kuma-api npm package?**
No — `uptime-kuma-api` is Python-only. Will use `socket.io-client` directly. Auth via login event with username/password (API key is HTTP-only, not Socket.IO). Connect → authenticate → add/delete monitor → disconnect.

**Q2: Discord category structure?**
All 5 channels under one `🎮 {Server Name}` category, including voice. Matches Michael's existing manual setup.

**Q3: Partial channel creation?**
Yes. `createserver` checks which of the 5 channels exist and only creates missing ones. Farm Crossing 6 only needs `-status`.

## Build Plan

1. DB migration + seed data (server_config table, 17 servers pre-populated)
2. `src/services/uptimeKuma.js` — Socket.IO direct, no npm wrapper
3. `src/services/pterodactyl.js` — power actions + sendCommand
4. `src/routes/admin/servers.js` — 6 new POST routes
5. `src/views/admin/servers/_server_card.ejs` — full rebuild
6. `src/views/admin/servers/_matrix_body.ejs` — refactor to use partial
7. Discord channel detection fix using short_name from DB

## Status
Researching existing Arbiter codebase before coding.
