2025-10-17 - 2026-10-17
Overview
124 Issues closed from 2 users
Closed
#112 Attention rows and the provisioning summary lose the spaces around "·"
Closed
#98 Viewer requests trigger GitHub lookups and host log reads (plugin updates, chat)
Closed
#63 Login rate limiting lets anyone lock everyone out of the dashboard
Closed
#106 "Activity log" is named for everything but mostly holds host operations
Closed
#121 Counts skip plural() and a few labels read awkwardly
Closed
#120 Internal values show through in the UI
Closed
#153 Remove standalone Activity log page
Closed
#155 Completed rebuild leaves EC targeting an obsolete instance generation
Closed
#154 Rebuilds leave servers offline when repeated artifact downloads time out
Closed
#152 Private bank configuration is incorrectly flagged as drift and targeted for reconciliation
Closed
#146 Electric Cherry has no bank balance store, so the in-game bank commands can't keep points between matches
Closed
#150 Survival server cards misleadingly show “Current map: TranZit”
Closed
#149 Beta healthy-minute progress resets while servers remain healthy
Closed
#148 Servers briefly become unhealthy after the last player leaves
Closed
#143 Configs, Scripts and Plugins scroll sideways on phones
Closed
#97 Host credentials can rotate themselves without an admin request, locking out the real agent
Closed
#147 Show total score in match results when available, with a historical balance fallback
Closed
#144 Telemetry reports carry no match identity, so lost or late reports mislabel and split matches
Closed
#126 overflow-wrap: anywhere splits words in narrow table columns
Closed
#130 Layouts switch at 16 different screen widths, so pages reflow in several steps
Closed
#131 Preparing and Empty sections still group single cards under game headings
Closed
#136 Matches stay "In progress" with a growing time after their server stops reporting
Closed
#142 Metrics has no player trend, so it can't show unique or new players over the selected range
Closed
#102 The 256 MiB migration-memory test runs beside other tests and can push them past their timeout
Closed
#140 Autoscaling guide sends operators to Metrics for measurements it doesn't show
Closed
#141 Metrics says history is kept for 31 days regardless of the retention setting
Closed
#139 Instances tab lists every reused autoscaling lobby name as its own history
Closed
#138 Metrics ignores match records, so it can't show matches started or group sizes per map
Closed
#137 Metrics is built for a fixed lineup, so its headline, capacity card and hosting advice misread an autoscaled fleet
Closed
#75 Replace ad-hoc migrations with ordered PRAGMA user_version migrations
Closed
#110 Most form controls skip the shared Select and Input components
Closed
#115 In-progress matches have no link and show "—" for duration
Closed
#127 Provisioning shows every filter on phones
Closed
#64 Agent auto-updater trusts the controller, giving it root on every host
Closed
#104 Date-range filters always show blank, even on the default
Closed
#132 The docs don't say to compress HTML and API responses at the proxy
Closed
#135 Development guide misses two setup steps
Closed
#93 Operators can launch any Docker image cached on a host, not just admin-prepared runtimes
Closed
#94 Request bodies have no size limit, so one operator request can exhaust controller memory
Closed
#74 Telemetry endpoint lacks body size and field length limits
Closed
#76 Process-wide prepared statement cache can leak statement modes between callers
Closed
#72 Restrict expensive viewer endpoints (/api/drift, GitHub release lookup)
Closed
#101 Two tests compare 1 MiB buffers with toEqual and can time out in CI
Closed
#91 Remove the unused launch-from-recipe path in DeployServerDialog
Closed
#95 Login refuses a third concurrent password check and tells the user to wait 15 minutes
Closed
#100 Add a CI workflow that runs the checks and tests on every push
Closed
#77 Add formatting and linting (Prettier and ESLint)
Closed
#99 Viewers can read global fleet settings, which the docs say are admin-only
Closed
#88 Provisioning job page is padded with empty rows and explanatory copy
Closed
#87 Launch files card repeats its selection status four times and holds an unrelated launch action
Closed
#71 Live event streams ignore backpressure
Closed
#65 Failed first boot leaves background workers off until restart
Closed
#66 Unhandled rejection in status fanout timer can crash the controller
Closed
#86 Provisioning job page header is crowded and phones show the basic facts last
Closed
#84 Provisioning job page has two back links that point to different places
Closed
#83 Successful provisioning operations show every passed check in full
Closed
#82 Provisioning job page shows the same progress four or five times
Closed
#79 Autoscaling lifecycle test fails about half the time on a same-millisecond timestamp race
Closed
#80 Failed provisioning operations show their last step as Waiting and in progress
Closed
#81 Provisioning failures hide the failing check far below the outcome
Closed
#89 Provisioning step timing is invisible because every timestamp is relative
Closed
#90 Provisioning check values are shown without units
Closed
#85 Finished provisioning operations show live fleet capacity
Closed
#78 Remove stray debug files and stale generated agent copy
Closed
#70 Resolve npm audit advisories (devalue high severity in server bundle)
Closed
#59 Shouldn't the source for such a task be maintenancy or recovery?
Closed
#62 Chat collection stores every server's log tail every 15s, faster than cleanup can delete it
Closed
#61 Raw RCON replies (including player IPs) are exposed to every viewer
Closed
#31 dont count as game played if left same round joined
Closed
#58 make max lobbies for a map in a collection 15 rather than 20
Closed
#57 make collections cancelable
Closed
#56 how much memory are we reserving per host?
Closed
#55 maintenance watchers should be supressed during provisioning
Closed
#54 Check Message
Closed
#53 Clarify "Stored, not validated" in Keys
Closed
#52 Collection Launches and history should be moved to collections
Closed
#20 player graph
Closed
#47 Investigate how active time can be lower than match time
Closed
#36 block destruction of server linked to active beta
Closed
#21 999ms = connecting
Closed
#43 Modify Empty Fleet Text
Closed
#28 updating a script causes rcon unreachable
Closed
#16 deleted servers shouldn't necessarily be forgotten
Closed
#51 These settings should be in the web UI settings rather than docker-compose
Closed
#48 Matches Stuck In Progress
Closed
#49 add actions to repo
Closed
#44 Bug: Clicking browse blueprints from empty fleet page takes you just to deployments
Closed
#45 Verify Komodo health needs to actually check deployment status
Closed
#50 rely less on RCON
Closed
#38 Change Drift
Closed
#40 Create Operations > Watchdog
Closed
#46 Rename Blueprints to Collections
Closed
#39 Change Deployments To Provisioning
Closed
#42 Modify Blueprint Deployment Options
Closed
#41 Modify Blueprint Deployment UI
Closed
#17 Link to IW4MAdmin
Closed
#2 log watchdog
Closed
#37 support for plutonium updates
Closed
#35 Metrics
Closed
#30 mark server as reset after game_end
Closed
#3 player timer, match timer
Closed
#7 4th player cut off
Closed
#23 chat log
Closed
#29 provisioning servers should be marked as "provisioning"
Closed
#33 move current operations into history
Closed
#32 add heartbeat
Closed
#25 pull match time from telemetry
Closed
#12 show config as the modification instead of accepting .cfg to update
Closed
#13 don't allow game for selection if baseline config exists already
Closed
#24 change roster to leaderboard, make additional fields
Closed
#15 rolling back doesn't ensure state
Closed
#14 ignore open beta files for drift
Closed
#9 beta gate - wait for round x
Closed
#5 prettier server title
Closed
#22 don't rely on rcon until komodo healthy
Closed
#18 Transition away from current server discovery
Closed
#27 rename server keys to keys
Closed
#26 rename deployments to campaigns, add server deployments
Closed
#11 configs and plugins marked as scripts
Closed
#4 current round
Closed
#19 space out deployments to avoid herd
Closed
#1 keep 1000+ lines of console.log
Closed
#10 ignore dedicated.cfg
Closed
#8 auto refresh
142 Issues created by 2 users
Opened
#1 keep 1000+ lines of console.log
Opened
#2 log watchdog
Opened
#3 player timer, match timer
Opened
#4 current round
Opened
#5 prettier server title
Opened
#7 4th player cut off
Opened
#8 auto refresh
Opened
#9 beta gate - wait for round x
Opened
#10 ignore dedicated.cfg
Opened
#11 configs and plugins marked as scripts
Opened
#12 show config as the modification instead of accepting .cfg to update
Opened
#13 don't allow game for selection if baseline config exists already
Opened
#14 ignore open beta files for drift
Opened
#15 rolling back doesn't ensure state
Opened
#16 deleted servers shouldn't necessarily be forgotten
Opened
#17 Link to IW4MAdmin
Opened
#18 Transition away from current server discovery
Opened
#19 space out deployments to avoid herd
Opened
#20 player graph
Opened
#21 999ms = connecting
Opened
#22 don't rely on rcon until komodo healthy
Opened
#23 chat log
Opened
#24 change roster to leaderboard, make additional fields
Opened
#25 pull match time from telemetry
Opened
#26 rename deployments to campaigns, add server deployments
Opened
#27 rename server keys to keys
Opened
#28 updating a script causes rcon unreachable
Opened
#29 provisioning servers should be marked as "provisioning"
Opened
#30 mark server as reset after game_end
Opened
#31 dont count as game played if left same round joined
Opened
#32 add heartbeat
Opened
#33 move current operations into history
Opened
#34 telemetry - player_join, player_leave
Opened
#35 Metrics
Opened
#36 block destruction of server linked to active beta
Opened
#37 support for plutonium updates
Opened
#38 Change Drift
Opened
#39 Change Deployments To Provisioning
Opened
#40 Create Operations > Watchdog
Opened
#41 Modify Blueprint Deployment UI
Opened
#42 Modify Blueprint Deployment Options
Opened
#43 Modify Empty Fleet Text
Opened
#44 Bug: Clicking browse blueprints from empty fleet page takes you just to deployments
Opened
#45 Verify Komodo health needs to actually check deployment status
Opened
#46 Rename Blueprints to Collections
Opened
#47 Investigate how active time can be lower than match time
Opened
#48 Matches Stuck In Progress
Opened
#49 add actions to repo
Opened
#50 rely less on RCON
Opened
#51 These settings should be in the web UI settings rather than docker-compose
Opened
#52 Collection Launches and history should be moved to collections
Opened
#53 Clarify "Stored, not validated" in Keys
Opened
#54 Check Message
Opened
#55 maintenance watchers should be supressed during provisioning
Opened
#56 how much memory are we reserving per host?
Opened
#57 make collections cancelable
Opened
#58 make max lobbies for a map in a collection 15 rather than 20
Opened
#59 Shouldn't the source for such a task be maintenancy or recovery?
Opened
#60 Have autoscaling just respect the start, restart, etc limits
Opened
#61 Raw RCON replies (including player IPs) are exposed to every viewer
Opened
#62 Chat collection stores every server's log tail every 15s, faster than cleanup can delete it
Opened
#63 Login rate limiting lets anyone lock everyone out of the dashboard
Opened
#64 Agent auto-updater trusts the controller, giving it root on every host
Opened
#65 Failed first boot leaves background workers off until restart
Opened
#66 Unhandled rejection in status fanout timer can crash the controller
Opened
#67 Port 3000 is published on all interfaces and HTTPS checks trust config, not the connection
Opened
#68 Harden game containers (cap-drop, no-new-privileges, pids and memory limits)
Opened
#70 Resolve npm audit advisories (devalue high severity in server bundle)
Opened
#71 Live event streams ignore backpressure
Opened
#72 Restrict expensive viewer endpoints (/api/drift, GitHub release lookup)
Opened
#73 Public leaderboard API has no rate limit and can't be cached
Opened
#74 Telemetry endpoint lacks body size and field length limits
Opened
#75 Replace ad-hoc migrations with ordered PRAGMA user_version migrations
Opened
#76 Process-wide prepared statement cache can leak statement modes between callers
Opened
#77 Add formatting and linting (Prettier and ESLint)
Opened
#78 Remove stray debug files and stale generated agent copy
Opened
#79 Autoscaling lifecycle test fails about half the time on a same-millisecond timestamp race
Opened
#80 Failed provisioning operations show their last step as Waiting and in progress
Opened
#81 Provisioning failures hide the failing check far below the outcome
Opened
#82 Provisioning job page shows the same progress four or five times
Opened
#83 Successful provisioning operations show every passed check in full
Opened
#84 Provisioning job page has two back links that point to different places
Opened
#85 Finished provisioning operations show live fleet capacity
Opened
#86 Provisioning job page header is crowded and phones show the basic facts last
Opened
#87 Launch files card repeats its selection status four times and holds an unrelated launch action
Opened
#88 Provisioning job page is padded with empty rows and explanatory copy
Opened
#89 Provisioning step timing is invisible because every timestamp is relative
Opened
#90 Provisioning check values are shown without units
Opened
#91 Remove the unused launch-from-recipe path in DeployServerDialog
Opened
#92 Installer exposes the enrollment token on the command line, and upgrade reruns leave it valid
Opened
#93 Operators can launch any Docker image cached on a host, not just admin-prepared runtimes
Opened
#94 Request bodies have no size limit, so one operator request can exhaust controller memory
Opened
#95 Login refuses a third concurrent password check and tells the user to wait 15 minutes
Opened
#96 Add Content-Security-Policy and HSTS headers
Opened
#97 Host credentials can rotate themselves without an admin request, locking out the real agent
Opened
#98 Viewer requests trigger GitHub lookups and host log reads (plugin updates, chat)
Opened
#99 Viewers can read global fleet settings, which the docs say are admin-only
Opened
#100 Add a CI workflow that runs the checks and tests on every push
Opened
#101 Two tests compare 1 MiB buffers with toEqual and can time out in CI
Opened
#102 The 256 MiB migration-memory test runs beside other tests and can push them past their timeout
Opened
#104 Date-range filters always show blank, even on the default
Opened
#106 "Activity log" is named for everything but mostly holds host operations
Opened
#110 Most form controls skip the shared Select and Input components
Opened
#112 Attention rows and the provisioning summary lose the spaces around "·"
Opened
#115 In-progress matches have no link and show "—" for duration
Opened
#120 Internal values show through in the UI
Opened
#121 Counts skip plural() and a few labels read awkwardly
Opened
#126 overflow-wrap: anywhere splits words in narrow table columns
Opened
#127 Provisioning shows every filter on phones
Opened
#130 Layouts switch at 16 different screen widths, so pages reflow in several steps
Opened
#131 Preparing and Empty sections still group single cards under game headings
Opened
#132 The docs don't say to compress HTML and API responses at the proxy
Opened
#135 Development guide misses two setup steps
Opened
#136 Matches stay "In progress" with a growing time after their server stops reporting
Opened
#137 Metrics is built for a fixed lineup, so its headline, capacity card and hosting advice misread an autoscaled fleet
Opened
#138 Metrics ignores match records, so it can't show matches started or group sizes per map
Opened
#139 Instances tab lists every reused autoscaling lobby name as its own history
Opened
#140 Autoscaling guide sends operators to Metrics for measurements it doesn't show
Opened
#141 Metrics says history is kept for 31 days regardless of the retention setting
Opened
#142 Metrics has no player trend, so it can't show unique or new players over the selected range
Opened
#143 Configs, Scripts and Plugins scroll sideways on phones
Opened
#144 Telemetry reports carry no match identity, so lost or late reports mislabel and split matches
Opened
#145 Achievements
Opened
#146 Electric Cherry has no bank balance store, so the in-game bank commands can't keep points between matches
Opened
#147 Show total score in match results when available, with a historical balance fallback
Opened
#148 Servers briefly become unhealthy after the last player leaves
Opened
#149 Beta healthy-minute progress resets while servers remain healthy
Opened
#150 Survival server cards misleadingly show “Current map: TranZit”
Opened
#151 Add persistent AFK reserves, gameplay rewards, and atomic bank-to-time purchases
Opened
#152 Private bank configuration is incorrectly flagged as drift and targeted for reconciliation
Opened
#153 Remove standalone Activity log page
Opened
#154 Rebuilds leave servers offline when repeated artifact downloads time out
Opened
#155 Completed rebuild leaves EC targeting an obsolete instance generation
Opened
#157 On a phone, a case's player, restrictions and follow-up review are 7–9 screens down
Opened
#158 Case queue cards show only the GUID, hide priority, and split their badges
Opened
#159 Archived evidence uses about 120 px per chat line, so short excerpts fill whole screens
Opened
#160 Case queue controls repeat the same shortcuts and push the first case 1.8 screens down on a phone
Opened
#161 A possible duplicate case is hidden in the collapsed "Other cases for this player" list
Opened
#162 Opening a case from the queue requires a typed GUID and can't set priority or assignee
Opened
#163 Case restrictions appear twice, under both Linked actions and Linked restrictions
Opened
#164 Case timeline shows the follow-up date in raw UTC and priorities as internal values
Opened
#165 Enforcement coverage lists every server in the game on every case page