2026-09-30 - 2026-10-07
Overview
2 Releases published by 1 user
40 Issues closed from 1 user
Closed
#187 [PR #279] [MERGED] feat: maintenance mode, metrics and health check, alerts, expiry reminders and off-site backups (phase 3, operations)
Closed
#186 [PR #278] [MERGED] feat: two-factor sign-in, scoped API tokens and an admin action trail (phase 3, security)
Closed
#185 [PR #277] [MERGED] fix: read stream tokens on MAIN's clock, wait for NTP at boot, warn on clock offset (#273)
Closed
#184 [PR #275] [MERGED] Phase 2: backups, updates, caches, logs, EPG, dashboard health and test tooling
Closed
#183 [PR #274] [MERGED] fix(vod): M3U import tag stripping, import titles, signals daemon Redis drop
Closed
#182 [PR #276] [MERGED] Fix/ministra merge portalhandler
Closed
#181 [PR #272] [MERGED] fix: close the findings of the code audit of main
Closed
#180 [PR #271] [MERGED] fix: Import & Review, TV Guide, LB playback; feat(cluster): move a node to mode 2 from the page
Closed
#179 [PR #268] [MERGED] fix(ci): give the release and nightly test gates their MariaDB
Closed
#178 [PR #267] [MERGED] test: run the unit suite on MariaDB, fix the HMAC identity truncation
Closed
#176 [PR #266] [MERGED] fix(cli): restore tools migration backups into xc_vm_migrate only
Closed
#177 [PR #265] [MERGED] deps: bump phpstan/phpstan from 2.2.15 to 2.2.16 in /src in the composer group
Closed
#175 [PR #264] [MERGED] Enforce module requires_core on load, install, update and update checks
Closed
#174 [PR #263] [MERGED] Move import, genre mapping and DVR into core; modules register instead of being named
Closed
#173 [PR #262] [MERGED] fix: load balancer install, reinstall and update; cluster API 503 STARTING bursts
Closed
#172 [PR #261] [MERGED] fix: killed HLS viewers on load balancers keep playing; errors from the panel's error log
Closed
#171 [PR #260] [CLOSED] feat(tools): Telegram support bot that answers from the docs with Claude
Closed
#170 [PR #258] [MERGED] Fix cache engine atomicity and worker failure handling
Closed
#169 [PR #257] [CLOSED] Fix cache engine atomicity and worker failure handling
Closed
#167 [PR #256] [MERGED] feat(tools): Proxy Checker — check proxies in bulk for YouTube restreaming
Closed
#168 [PR #259] [MERGED] docs: MAIN and load balancers, the new cluster, for users
Closed
#166 [PR #255] [MERGED] fix(streams): restream YouTube through the stream's proxy
Closed
#165 [PR #254] [MERGED] fix(proxy): readable proxy_api answer when a proxy port is closed; LB file and port E2E
Closed
#164 [PR #253] [MERGED] Close the gaps: offline-rotation tokens, sealed /xfile, direct-proxy VOD and timeshift HLS in the daemon, HMAC proxy routes
Closed
#163 [PR #252] [MERGED] VOD/timeshift bytes in the daemon, AEAD-framed relays (D11), signed proxy channel (D8)
Closed
#162 [PR #250] [MERGED] refactor(cluster): binaries from GitHub on every node; ffmpeg builds per distribution; LB licence fix
Closed
#161 [PR #251] [MERGED] TLS hardening, and per-node viewer-token keys (H1, increments one to three)
Closed
#160 [PR #248] [MERGED] feat(cluster): what the plan still asked for — D16, off-air names, fanout/core from MAIN, LB E2E specs
Closed
#159 [PR #249] [MERGED] Claude/awesome turing 33n6z0
Closed
#158 [PR #246] [MERGED] fix(connections, redis): the sweep, the activity log and Redis after #245
Closed
#157 [PR #245] [MERGED] feat(cluster): close ADR 0004's known gaps in Phases 7-9 and the agent canary
Closed
#156 [PR #247] [MERGED] fix(signals): cron:root_signals no longer kills the signals daemon
Closed
#155 [PR #244] [MERGED] fix(activity): no rows lost or doubled, HMAC viewers counted; sturdier LB flow test
Closed
#152 [PR #240] [MERGED] fix(streams): never kill an ended connection's worker, close RTMP and expired lines in Redis mode; test(e2e): cluster settings
Closed
#154 [PR #243] [MERGED] fix: Redis viewer bookkeeping, xcvm_core kept across updates, clearer LB installs
Closed
#153 [PR #242] [MERGED] fix(cluster): read keys, signatures and sealed records as stored
Closed
#151 [PR #239] [MERGED] feat(cluster): badge a node's lane lag and the MAIN URLs it cannot reach
Closed
#150 [PR #237] [MERGED] fix(security): verify_host checks hosts on a node that reads no database
Closed
#149 [PR #238] [MERGED] feat(cluster): a connection-divergence badge and the Settings Info-tab block
Closed
#148 [PR #236] [MERGED] fix(cluster): measure a node's own clock; clock badge, dashboard banner, servers_stats pruning
39 Issues created by 0 users
Opened
#149 [PR #238] [MERGED] feat(cluster): a connection-divergence badge and the Settings Info-tab block
Opened
#150 [PR #237] [MERGED] fix(security): verify_host checks hosts on a node that reads no database
Opened
#151 [PR #239] [MERGED] feat(cluster): badge a node's lane lag and the MAIN URLs it cannot reach
Opened
#152 [PR #240] [MERGED] fix(streams): never kill an ended connection's worker, close RTMP and expired lines in Redis mode; test(e2e): cluster settings
Opened
#153 [PR #242] [MERGED] fix(cluster): read keys, signatures and sealed records as stored
Opened
#154 [PR #243] [MERGED] fix: Redis viewer bookkeeping, xcvm_core kept across updates, clearer LB installs
Opened
#155 [PR #244] [MERGED] fix(activity): no rows lost or doubled, HMAC viewers counted; sturdier LB flow test
Opened
#156 [PR #247] [MERGED] fix(signals): cron:root_signals no longer kills the signals daemon
Opened
#157 [PR #245] [MERGED] feat(cluster): close ADR 0004's known gaps in Phases 7-9 and the agent canary
Opened
#158 [PR #246] [MERGED] fix(connections, redis): the sweep, the activity log and Redis after #245
Opened
#159 [PR #249] [MERGED] Claude/awesome turing 33n6z0
Opened
#160 [PR #248] [MERGED] feat(cluster): what the plan still asked for — D16, off-air names, fanout/core from MAIN, LB E2E specs
Opened
#161 [PR #251] [MERGED] TLS hardening, and per-node viewer-token keys (H1, increments one to three)
Opened
#162 [PR #250] [MERGED] refactor(cluster): binaries from GitHub on every node; ffmpeg builds per distribution; LB licence fix
Opened
#163 [PR #252] [MERGED] VOD/timeshift bytes in the daemon, AEAD-framed relays (D11), signed proxy channel (D8)
Opened
#164 [PR #253] [MERGED] Close the gaps: offline-rotation tokens, sealed /xfile, direct-proxy VOD and timeshift HLS in the daemon, HMAC proxy routes
Opened
#165 [PR #254] [MERGED] fix(proxy): readable proxy_api answer when a proxy port is closed; LB file and port E2E
Opened
#166 [PR #255] [MERGED] fix(streams): restream YouTube through the stream's proxy
Opened
#167 [PR #256] [MERGED] feat(tools): Proxy Checker — check proxies in bulk for YouTube restreaming
Opened
#168 [PR #259] [MERGED] docs: MAIN and load balancers, the new cluster, for users
Opened
#169 [PR #257] [CLOSED] Fix cache engine atomicity and worker failure handling
Opened
#170 [PR #258] [MERGED] Fix cache engine atomicity and worker failure handling
Opened
#171 [PR #260] [CLOSED] feat(tools): Telegram support bot that answers from the docs with Claude
Opened
#172 [PR #261] [MERGED] fix: killed HLS viewers on load balancers keep playing; errors from the panel's error log
Opened
#173 [PR #262] [MERGED] fix: load balancer install, reinstall and update; cluster API 503 STARTING bursts
Opened
#174 [PR #263] [MERGED] Move import, genre mapping and DVR into core; modules register instead of being named
Opened
#175 [PR #264] [MERGED] Enforce module requires_core on load, install, update and update checks
Opened
#176 [PR #266] [MERGED] fix(cli): restore tools migration backups into xc_vm_migrate only
Opened
#177 [PR #265] [MERGED] deps: bump phpstan/phpstan from 2.2.15 to 2.2.16 in /src in the composer group
Opened
#178 [PR #267] [MERGED] test: run the unit suite on MariaDB, fix the HMAC identity truncation
Opened
#179 [PR #268] [MERGED] fix(ci): give the release and nightly test gates their MariaDB
Opened
#180 [PR #271] [MERGED] fix: Import & Review, TV Guide, LB playback; feat(cluster): move a node to mode 2 from the page
Opened
#181 [PR #272] [MERGED] fix: close the findings of the code audit of main
Opened
#182 [PR #276] [MERGED] Fix/ministra merge portalhandler
Opened
#183 [PR #274] [MERGED] fix(vod): M3U import tag stripping, import titles, signals daemon Redis drop
Opened
#184 [PR #275] [MERGED] Phase 2: backups, updates, caches, logs, EPG, dashboard health and test tooling
Opened
#185 [PR #277] [MERGED] fix: read stream tokens on MAIN's clock, wait for NTP at boot, warn on clock offset (#273)
Opened
#186 [PR #278] [MERGED] feat: two-factor sign-in, scoped API tokens and an admin action trail (phase 3, security)
Opened
#187 [PR #279] [MERGED] feat: maintenance mode, metrics and health check, alerts, expiry reminders and off-site backups (phase 3, operations)