Commit Graph
64 Commits
Author SHA1 Message Date
josh f8c60fd101 Separate game file downloads and verification with progress timing 2026-10-04 12:51:05 -04:00
josh 68323c0baa Simplify game files to automatic T5 and T6 uploads 2026-10-04 12:23:36 -04:00
josh 482e27e735 Automate host preparation and speed up game file downloads 2026-10-04 12:13:46 -04:00
josh 8d1331c67d Add automatic agent updates with verified rollback 2026-10-04 10:40:45 -04:00
josh 840f02b53e Support resumable game folder uploads and remove DLC declarations 2026-10-04 09:51:45 -04:00
josh e5c0fda1ed Add native host management and role-based operator authentication
Introduce an outbound Python host agent, Debian installer, durable remote
operations, immutable game-file libraries, host-aware deployments and ports,
and occupancy-safe campaigns and draining. Native hosts do not require Komodo.

Add administrator, operator and viewer accounts, protected management routes,
secure sessions, password recovery, audit history and separate telemetry tokens.
Document first-admin setup, reporter migration and live-host acceptance checks.

Validation: 1,343 TypeScript tests and 39 agent tests passed, along with type
checking, the production build, compiled SSR/API smoke tests and administrator
recovery. Real Debian/Docker T5/T6 acceptance remains unrun.
2026-10-03 11:42:36 -04:00
josh d7b3e124e6 Add real time, match duration, and round context to chat 2026-10-02 13:21:55 -04:00
josh 65d3a99846 Fix transient health checks and avoid unnecessary recovery 2026-10-02 13:06:18 -04:00
josh 13963cba1c Count only completed games in player leaderboards 2026-10-01 12:05:19 -04:00
josh 0cb48c435e Suppress maintenance watchers during provisioning
Keep maintenance observations and automatic requests clear of active lifecycle operations and retained recovery capacity while preserving owned recovery and explicit retries.

Fixes #55
2026-10-01 11:54:22 -04:00
josh a3cd3ee585 Add completed match detail pages 2026-10-01 11:45:23 -04:00
josh aa0223c35d Add configurable server destruction concurrency 2026-10-01 11:29:55 -04:00
josh a4a5298408 Verify Plutonium revisions during provisioning 2026-09-28 14:50:06 -04:00
josh 3fb59cd598 Complete provisioning job detail pages and lifecycle evidence 2026-09-28 14:17:19 -04:00
josh 3c0c54e804 Clarify saved key status in Keys (fixes #53) 2026-09-28 10:13:37 -04:00
josh 905d1aa3f6 Move collection launch progress and history into Collections
Fixes #52
2026-09-28 10:10:09 -04:00
josh 2fa3792482 Fix active and match timer drift between status polls
Persist occupancy transitions with telemetry and carry timer anchors through live updates. Cover delayed polling, lobby rejoining, and lifecycle boundaries with regression tests.

Fixes #47
2026-09-27 23:29:04 -04:00
josh b904ddbc48 Block server destruction while linked to an active beta
Protect individual, bulk, and queued removals and rebuilds until beta closure. Recheck ownership before teardown and reject beta admission during pending or unresolved destruction.

Fixes #36
2026-09-27 23:21:37 -04:00
josh fb48f64de1 Defer server file changes until guarded restart activation
Persist beta, promotion, drift, and rollback payloads until occupancy and restart-capacity checks pass. Preserve rollback snapshots and campaign ordering, and allow held rollback campaigns to resume safely.

Fixes #28

Validation: 805 tests passed, Svelte checks clean, production build passed.
2026-09-27 23:06:16 -04:00
josh eb2a852fdc Add experimental metrics insights, comparisons, and scope filters 2026-09-27 22:34:56 -04:00
josh 981fb27c1c Preserve deleted server history
Retain historical server identities, results, and evidence after deletion. Mark archived entries as Deleted and prevent old work from targeting servers that reuse the same name.

Fixes #16.
2026-09-27 21:48:55 -04:00
josh 4fe8613678 Move fleet retention and concurrency controls into Settings
Persist settings in SQLite, import legacy environment values once, and apply changes to cleanup and deployment queues without restarting.

Closes #51
2026-09-27 16:11:45 -04:00
josh fc46cb9da4 feat: unify recovery, updates, and schedules under Maintenance 2026-09-27 16:00:18 -04:00
josh 8ea696417f fix: honor Komodo health and prefer fresh telemetry across fleet status 2026-09-27 15:34:30 -04:00
josh b9f5902945 feat: add Watchdog recovery and drift rebuild workflows 2026-09-27 15:13:38 -04:00
josh a7044f21a1 Rename blueprints to Collections and add Operations tab
Fixes #46
2026-09-27 14:50:55 -04:00
josh df265d1900 refactor: make provisioning own instance lifecycle operations 2026-09-27 14:45:00 -04:00
josh cfed584614 feat: add provisioning lifecycle actions
Rename Deployments to Provisioning with compatible redirects and APIs. Add durable Start, Restart, Stop, and Rebuild operations alongside Create and Destroy; rebuild wipes the instance and recreates it in the same slot and port.

Add lifecycle, migration, recovery, and Komodo command tests. Type checks and production build pass; the full suite retains a telemetry assertion failure reproduced on the unchanged branch.

Refs #39
2026-09-27 14:20:04 -04:00
josh 0b0e5b5bdb feat: match fleet to blueprint targets exactly
Add an optional exact blueprint mode with keep/create/remove previews, atomic queueing, cancellation of unstarted excess creations, and persistent dependencies for safe port reuse. Track removals alongside creations and preserve fill mode as the default.

Validation: type check, production build, and 103 deployment tests passed. The full suite has one telemetry assertion failure also reproduced on the previous commit.

Fixes #42
2026-09-27 13:36:08 -04:00
josh f875260b7e Remove fleet lobby follow notifications 2026-09-21 19:33:57 -04:00
josh ce6861203e Use user timezone for maintenance and official Plutonium manifest 2026-09-21 19:14:40 -04:00
josh 47d6dc07b7 Add Plutonium version checks and scheduled rolling restarts 2026-09-21 18:47:24 -04:00
josh 68b21a83ce Restore campaign terminology across UI and docs 2026-09-19 22:41:33 -04:00
josh ce0321a6e9 Add heartbeat telemetry support 2026-09-19 21:52:05 -04:00
josh f171889dfb Pace collection startups and clarify deployment queue progress 2026-09-19 20:33:08 -04:00
josh 345839fbd4 Use current promoted files for blueprint launches 2026-09-19 19:58:30 -04:00
josh 41891b4209 Add per-server telemetry request diagnostics 2026-09-19 18:59:30 -04:00
josh a182aeb950 Add persistent player leaderboards from game telemetry 2026-09-18 16:43:44 -04:00
josh 5bb49a776e Simplify telemetry to three game events 2026-09-18 15:35:21 -04:00
josh 9cf0bd87f4 Refresh Fleet with discovery, operation progress, and lobby watches 2026-09-18 11:59:14 -04:00
josh 3c49437bf9 Add GitHub plugin release imports and update discovery 2026-09-18 01:29:38 -04:00
josh 453821805a Fix server deletion cleanup and allow failed cleanup to resume 2026-09-18 00:49:30 -04:00
josh 274aedb66e Add House Party Protocol for fleet-wide queued destruction 2026-09-18 00:39:19 -04:00
josh 586133c711 Conform blueprint launches to desired fleet counts 2026-09-18 00:28:17 -04:00
josh 989931a0f2 Add multi-server blueprint collections and atomic launches 2026-09-18 00:08:54 -04:00
josh 782c7c0bda Add deployment blueprints and reviewed launch recipes 2026-09-17 23:43:12 -04:00
josh a50eae9d21 Add configurable beta test plans and staged rollout 2026-09-17 21:35:28 -04:00
josh 9dcf4ac1d3 Add T6 Zombies fleet support with Plutainer configuration 2026-09-17 18:03:12 -04:00
josh 885abbdffe Use database fleet registry and gate RCON polling on container readiness 2026-09-17 17:28:38 -04:00
josh 3b1c9bf3d9 Rename Server keys page to Keys 2026-09-17 17:19:27 -04:00