Commit Graph
100 Commits
Author SHA1 Message Date
josh a5f9956615 Organize navigation into a responsive grouped sidebar 2026-10-05 18:55:48 -04:00
josh e9d0b2ee30 Bump agent version to 1.5.0 2026-10-05 18:16:39 -04:00
josh 8abe71b915 Add confirmed admin override for provisioning player checks 2026-10-05 18:16:02 -04:00
josh 4b0f341d64 Remove Komodo backend in favor of native hosts 2026-10-05 18:07:07 -04:00
josh 701066aaf8 Cancel active provisioning jobs when rolling back betas 2026-10-05 17:48:46 -04:00
josh 6ad5e7f4c6 Remove help button while retaining keyboard shortcuts 2026-10-05 17:26:25 -04:00
josh b62fb5db30 Remove Activity and the notification system 2026-10-05 17:25:39 -04:00
josh 193383ddd5 Move account control into header and simplify avatar 2026-10-05 17:18:54 -04:00
josh 083d29323f Allow public leaderboard API reads 2026-10-05 16:46:44 -04:00
josh bd10c1c5d2 Document current leaderboard API contract 2026-10-05 16:44:10 -04:00
josh b1b3e8b958 Relax freshness limits and tolerate transient RCON failures 2026-10-05 16:36:23 -04:00
josh d8b972cfc3 Reuse fixed SQL statements for observation pruning 2026-10-05 16:19:31 -04:00
josh 1d9e518feb Retain completed status batches as routine observations 2026-10-05 16:18:24 -04:00
josh ae703617af Preserve server status when batch probes miss the deadline 2026-10-05 16:17:29 -04:00
josh ad63b3957d Keep invalid container states from dropping host heartbeats 2026-10-05 16:15:15 -04:00
josh 87c5cf4b4b Use status monitor evidence for routine watchdog health checks 2026-10-05 16:13:47 -04:00
josh 91f4490d34 Reuse serialized server events across SSE connections 2026-10-05 15:57:10 -04:00
josh 5455f27d5b Cache agent inventory manifests by modification time 2026-10-05 15:55:08 -04:00
josh c8c53e87d6 Lighten library cache reports and heartbeat cleanup 2026-10-05 15:51:55 -04:00
josh 847399a4ff Throttle agent usage writes and cache inventory per request 2026-10-05 15:47:25 -04:00
josh a86499a0f9 Batch live server updates once per animation frame 2026-10-05 15:43:23 -04:00
josh ad0a0e1033 Reuse collator and precompute fleet sort keys 2026-10-05 15:39:12 -04:00
josh d24c52b5cc Scope server snapshots and keep completed history off fleet refreshes 2026-10-05 15:37:56 -04:00
josh 030794635e Coalesce fleet refreshes and suppress unchanged sweep events 2026-10-05 15:29:03 -04:00
josh 2af768011a Cache prepared statements per database connection 2026-10-05 15:24:17 -04:00
josh 239eceb779 Reuse heartbeat container state and batch host RCON status 2026-10-05 15:14:44 -04:00
josh 6586809b35 Avoid replaying active health operations during polling 2026-10-05 15:04:56 -04:00
josh 3f5cc9d3ba Limit status checks to two per host 2026-10-05 15:02:19 -04:00
josh 28bd08e1ea Avoid lifecycle history scans in fleet snapshots 2026-10-05 14:59:08 -04:00
josh 041c024f95 Bound provisioning history and poll only active operations 2026-10-05 14:52:30 -04:00
josh 16a5bc3534 Migrate instances when draining and verify hosts before enabling 2026-10-05 14:21:48 -04:00
josh a142f06c77 Show running instances on host pages 2026-10-05 13:56:37 -04:00
josh a6c40cde9b Add filters and context to host operation history 2026-10-05 13:23:11 -04:00
josh e6912ceb57 Add configurable retention for successful routine operations 2026-10-05 13:09:44 -04:00
josh 2d069907f2 Share recent health observations between background monitors 2026-10-05 13:00:53 -04:00
josh f16879036e Batch remote drift checks into agent file manifests 2026-10-05 12:52:33 -04:00
josh 10ab071bce Move host operation history to a paginated Hosts page 2026-10-05 12:27:48 -04:00
josh 09ef8c6ec8 Add capacity overview with host resource history 2026-10-05 12:06:29 -04:00
josh 7c76851252 Queue native collection launches before async placement 2026-10-05 11:35:50 -04:00
josh 1405114a14 Keep native collection launches responsive 2026-10-05 10:48:38 -04:00
josh dbd2940d29 Fix blocking collection matching with large plugins 2026-10-05 10:15:48 -04:00
josh 10663333db Document automatic commits and feature boundaries 2026-10-05 09:52:27 -04:00
josh b3929fc771 Fix controller stalls during large collection launches 2026-10-05 09:50:11 -04:00
josh 9472bb5184 Index host operations by kind to avoid polling history scans 2026-10-05 08:40:37 -04:00
josh caa7672bec Use live host usage and running estimates for collection admission 2026-10-04 23:41:48 -04:00
josh b0f592b41c Reduce host capacity headroom and remove learned usage padding 2026-10-04 23:33:21 -04:00
josh 725d41c112 Automatically remove unused game-file versions 2026-10-04 23:05:32 -04:00
josh 9c6d7cc347 Add host capacity sample viewer with filtering and pagination 2026-10-04 22:22:01 -04:00
josh 148c74063b Fix container resource sampling and surface collection failures 2026-10-04 22:02:03 -04:00
josh 81f088739c Fix native health polling and isolate file operation traffic 2026-10-04 21:50:29 -04:00
josh 8a31de92fa Fix capacity accounting and queued host placement 2026-10-04 21:28:15 -04:00
josh e6cdf9eb7f Automatically place servers using learned resource capacity 2026-10-04 21:04:09 -04:00
josh a1b957392f Add CPU usage to host inventory 2026-10-04 20:30:43 -04:00
josh 456af32b36 Fix T6 occupancy parsing in host agent 2026-10-04 20:20:10 -04:00
josh ed004ddbcf Improve application responsiveness and background processing 2026-10-04 19:56:06 -04:00
josh 1392a082da Fix Docker client installation on Debian 13 2026-10-04 19:14:36 -04:00
josh fae7775c72 Let agents idle for updates required by creation cancellation 2026-10-04 18:14:11 -04:00
josh 176b7dd86b Add cancellation and cleanup for native server creation 2026-10-04 18:00:11 -04:00
josh 19f1f4e279 Preserve loaded logs across same-server fleet updates 2026-10-04 17:32:18 -04:00
josh 2413c29fc0 Fix pausing log auto-refresh and cancel stale reads 2026-10-04 17:19:15 -04:00
josh 2adadb0d05 Fix native provisioning scheduling and progress reporting 2026-10-04 14:50:59 -04:00
josh 1bbee98b62 Fix native rebuild runtime verification deadlock 2026-10-04 14:15:05 -04:00
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 020894b816 Remove host files and uninstall agent when deleting hosts 2026-10-04 10:20:51 -04:00
josh 62d7817ea3 Clarify host readiness when game files or runtime are missing 2026-10-04 10:03:43 -04:00
josh 3d62dfff27 Add clear host deletion controls with workload safeguards 2026-10-04 09:59:27 -04:00
josh 840f02b53e Support resumable game folder uploads and remove DLC declarations 2026-10-04 09:51:45 -04:00
josh 95cf7dd36f Lower account password minimum to eight characters 2026-10-04 09:29:55 -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 a2e2311aa9 Refine chat layout and collapse consecutive match events 2026-10-02 13:44:44 -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 221c4c10cf Reuse leaderboard aggregates and add repeatable benchmarks 2026-10-01 12:33:11 -04:00
josh f10345ae79 Use compact player record cards on mobile 2026-10-01 12:26:35 -04:00
josh eac9ad4fbc Preserve leaderboard context in player profiles 2026-10-01 12:23:30 -04:00
josh 47ebe83106 Add qualified efficiency leaderboard rankings 2026-10-01 12:16:27 -04:00
josh c7d71c63ba Link personal bests to their recorded matches 2026-10-01 12:12:21 -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 30030599d6 Rank each player once across T5 and T6 2026-09-28 15:22:11 -04:00
josh 61d4eebfea Unify player profiles across T5 and T6 2026-09-28 15:04:57 -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 5b65520bbc Clarify provisioning wait messages (fixes #54) 2026-09-28 10:21:52 -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 4399d55271 Show connecting status for players with 999ms ping
Fixes #21
2026-09-27 23:13:47 -04:00
josh 5b44e6e3ab Simplify empty fleet message and actions
Closes #43.
2026-09-27 23:10:05 -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 3922e28ca8 Improve metrics clarity, exploration, and refresh reliability 2026-09-27 22:12:11 -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 53b29f726c Remove maintenance relocation notice from Settings 2026-09-27 21:31:46 -04:00