AIO Relay Status

Single source page for release posture, current updates, known gaps, and roadmap checkpoints.

Current Package Baseline
v1.2.0
UI Version Marker
v1.2.0
Latest Runtime Fix Pack
2026-03-17
Updated to v8! Updated: dnd-kit drag/drop refactor Improved: lock-state hardening Auth worker live NSIS + MSI build path working Shutdown sequencing hardened Write-route auth order corrected Local shutdown remains available under auth lock Boot settings hydration hardened Master Switch contract normalized Reload/Flush confirm + verification modals Backend runtime modularized Frontend orchestration modularized Runtime consistency hardening Managed Encoder / Display / Window / Playlist ingest Playlist evergreen playout live Playlist folder-open workflow live Light / Dark theme toggle live Appliance shell finish polished Capture audio paths + mic confidence preview Measured app IN/OUT + NIC Net telemetry Installer relaunch auth skip for activated systems Lane-instance platform reassignment Profile-scoped write protection Hybrid tee failure truth improved Desktop compile check passing Ops runbook hardened Operator post-install viewport parity check required

Updates Since 1.0.0

Date Area Update
2026-02-16 Auth + Build Key lifecycle endpoints and installer outputs stabilized for `.exe` and `.msi` production flow.
2026-02-17 Ops + Docs Reality check, v2 planning, and process docs expanded to capture shipping status and open hardening gaps.
2026-02-18 Website + Distribution `/download` page aligned with password-gated distribution and direct installer/checklist links in the `downloads/` file folder.
2026-02-21 Desktop Runtime Tray menu cleanup (4 actions), window policy centralization, backend spawn dedupe, and safer reset/kill handling in `main.rs`.
2026-02-21 Modularization Tauri runtime split into focused modules: backend supervisor, window policy, tray controller, and lifecycle handlers.
2026-02-21 Profile Behavior Profile switching logic corrected to block only on active destination playout, not ingest-only live state.
2026-02-21 Auth Hardening Activation/license flow moved to fail-closed startup defaults with server-side write-route auth gating.
2026-02-21 API Parity Start/stop route naming aligned to UI controls: /api/startall and /api/stopall; docs synchronized.
2026-02-22 Tray + Recovery UX Tray Reset Relay/Shutdown Relay confirms moved to in-app modals; Recover I/O now restores a safer drawer-closed recovery state.
2026-02-22 Branding + Drawer Brand overlay workflow stabilized (upload/select/remove/persistence) and rendered behind columns; cards remain visually solid.
2026-02-23 Runtime Hardening Drag/lock parity hardening restored via unlock-triggered recovery resync; prevented UI-unlocked but non-draggable column/card state.
2026-02-23 Network Runtime node-media-server host-bind behavior patched and made durable via patch-package so LAN mode intent is honored (localhost vs 0.0.0.0).
2026-02-23 Appliance Window Policy Desktop startup width policy hardened to a fixed physical design envelope (1440px target with fit fallback) for more consistent first-launch presentation.
2026-02-27 FFmpeg Runtime Updated to v8 (`ffmpeg`/`ffprobe` 8.0.1) with protocol/filter verification and smoke coverage documented in handoff artifacts.
2026-02-27 Lock State Hardening Improved settings persistence with lock-parity safeguards, dedicated lock-save path, and revision conflict protection to prevent stale saves from silently re-locking columns.
2026-02-27 User Tab + Branding Improved station user-tab layout, brand upload filename handling, and backend URL resolution so brand preview/overlay remains consistent after modal transitions.
2026-02-28 Dashboard Access Updated ops dashboard access path: press-and-hold the app I/O button to open the Live Ops dashboard in a separate browser window (manual fallback: /docs/ops.html).
2026-02-28 Ops Runbook Completed deterministic release gate sequence and pre-build lock protocol standardization for the current release workflow.
2026-02-28 I/O Control Parity Updated app I/O click now follows tray-equivalent Show/Hide UI state handling while press-and-hold still opens the Live Ops dashboard; close-ui contract updated to validate behavior path instead of hard-coded JSX binding.
2026-02-28 Drawer DnD Refactor Refactored drawer drag-and-drop stack to dnd-kit and removed legacy sortable/layered behavior to improve lock-state reliability and ordering persistence transparency in the v1.2.0 line.
2026-03-01 Website + Auth Admin Hardened website status/admin-auth surfaces: sanitization updates, safer saved-credential reset flow, and protocol doc cleanup for packaging/deploy consistency.
2026-03-06 Code Integrity Audit Verified post-drive-recovery repository integrity (locked file hash checks, syntax/config validation, and build-path readiness confirmation).
2026-03-07 Security Hardening Completed dependency hardening pass (6/7 vulnerabilities fixed), migrated to Vite 7.3.1, and documented remaining pkg advisory/mitigation track for v1.2.
2026-03-07 Ingest Preview Optimization Updated monitor behavior to HLS-first with FLV fallback, on-demand preview controls, and ingest-state/error visibility improvements for lower background bandwidth and better operator diagnostics.
2026-03-10 Shutdown + Auth Runtime Hardened power-down flow so backend shutdown uses graceful teardown and desktop shutdown waits for backend stop with fallback cleanup, reducing orphan backend process risk during hard System Shutdown.
2026-03-10 Recovery Controls UX Updated Reload Ingest and Flush Cache to use explicit confirmation and completion/error verification modals; /api/flush now returns cleanup details (removedCount, skippedActiveKey).
2026-03-10 Auth + State Integrity Hardened write-route auth middleware ordering, preserved loopback shutdown when auth is locked, restored boot-time server settings hydration, normalized the masterSwitch contract, and removed the dead backend lock API shim that no longer controlled runtime state.
2026-03-10 Release Refresh Verified deterministic gate sequence for the current validation baseline: prebuild, lock verification, Windows bundle rebuild, installer manifest refresh, and final lock verification all passed.
2026-03-11 Refactor + Runtime Architecture Completed backend composition split from the former server.js monolith into focused runtime and route modules; frontend orchestration was similarly decomposed into shared helpers, hooks, and extracted control components for the v1.2.0 line.
2026-03-13 Runtime Consistency Hardened ingest session ownership, process/timer cleanup, profile-scoped write paths, serialized status polling, and tee/dedicated status truth so late events and stale telemetry no longer drift UI state away from backend runtime truth.
2026-03-16 Lane Model + Drawer Identity Refactored platform columns to true lane instances so empty columns can be reassigned to another real platform type without cosmetic-only rename behavior; duplicate platform columns now persist as distinct lanes.
2026-03-16 Managed Ingest Capture Added Windows managed ingest sources for Encoder, Display Capture, and Window Capture, routed into the existing RTMP ingest path with operator target/preset selection.
2026-03-16 Capture Audio Paths Added managed capture audio selection for None, Desktop, Mic, and Desktop + Mic, plus mic-confidence preview and operator mute control over the always-open capture audio path.
2026-03-16 Bandwidth Telemetry Expanded bandwidth reporting so appliance throughput and physical uplink throughput can be compared against link capacity/headroom without redesigning the existing monitor surface.
2026-03-16 Measured Throughput Corrected appliance bandwidth telemetry so app IN/OUT uses live ingest/progress-derived throughput instead of nominal configured bitrate math, while Net continues to show total physical NIC DOWN/UP traffic.
2026-03-16 Modal + Installer Flow Hardened shared modal positioning/scroll behavior, managed-capture handoff from external ingest, and installer auth-page gating so already-activated Windows machines can reinstall without being forced through a redundant license-key prompt.
2026-03-17 Playlist Source Added a separate evergreen Playlist ingest source with local playlist/ folder scan, checkbox row selection, row ordering, Play / Repeat transport, and folder-open workflow directly from the Playlist tab.
2026-03-17 Playlist Playout Runtime Added branded interstitial slate behavior between multi-item playlist selections so local playout feels intentional instead of like a hard source handoff.
2026-03-17 Shell Finish + Theme Polished the appliance shell so the metallic perimeter runs to the app edges, the deep ridge treatment remains, light mode is operator-available, and the drawer bottom now finishes with the same shell language as the rest of the appliance.

Accomplishments + Failures (v1.2.0 Stabilization)

Date Type Detail
2026-02-27 Accomplishment FFmpeg runtime upgraded to `8.0.1` with protocol/filter verification and runtime smoke validation.
2026-02-27 Accomplishment Settings/lock save path hardened to prevent stale modal saves from silently re-locking columns.
2026-02-28 Accomplishment I/O parity finalized: click performs tray-equivalent show/hide UI behavior; press/hold opens Live Ops dashboard window.
2026-02-28 Failure (Resolved) Sortable/layer-based drawer interactions repeatedly regressed under lock-heavy scenarios (blocked drag, snapback, directional reorder faults, lane distortion).
2026-02-28 Resolution DnD layer refactored to `dnd-kit`; sortable fallback path is not recommended for this drawer surface.
2026-03-06 Accomplishment Post-drive-recovery integrity audit passed: repository structure, lock hashes, and build contracts validated before release continuation.
2026-03-07 Accomplishment Security hardening cycle completed (6/7 npm issues fixed) with risk acceptance documentation for the remaining pkg advisory.
2026-03-07 Accomplishment Ingest preview stability and bandwidth behavior improved with HLS-first + FLV fallback and explicit monitor status/error signaling.
2026-03-10 Accomplishment Shutdown/auth failure path stabilized with graceful backend teardown and supervisor-backed stop confirmation in desktop power-down flow.
2026-03-10 Accomplishment Operator visibility improved for recovery actions: Reload/Flush now require confirmation and return explicit success/failure feedback.
2026-03-10 Accomplishment Auth-protected mutation routes were reordered correctly, local shutdown under auth lock was preserved, and startup settings hydration was fixed to prevent stale browser cache from overwriting the active profile.
2026-03-10 Accomplishment The legacy backend /api/settings/locks shim was retired; runtime lock ownership remains in the UI and lock fields continue to be stripped from persisted settings.
2026-03-11 Accomplishment Backend and frontend runtime orchestration were modularized without changing the locked dashboard layout, reducing monolith risk ahead of the v1.2.0 release line.
2026-03-13 Accomplishment Runtime consistency hardening closed stale-session teardown, orphan timer/process cleanup, profile-write crossover, and polling truth drift discovered during second-pass runtime audit.
2026-03-16 Accomplishment Managed ingest capture shipped on Windows for Encoder, Display Capture, Window Capture, and Playlist, including target inventory, preset selection, capture-audio options, and a mic-confidence preflight path.
2026-03-16 Accomplishment Platform columns now use a lane-instance model, allowing duplicate real platform lanes and true empty-column platform reassignment instead of cosmetic rename overrides.
2026-03-16 Accomplishment Bandwidth telemetry now separates measured appliance IN/OUT from total physical-NIC Net DOWN/UP, with the 8x estimate-conversion error documented and removed from the live path.
2026-03-16 Accomplishment Installer auth flow was corrected so persistent activation state can skip the redundant license-entry page on reinstall, rather than forcing already-licensed systems through a repeat key prompt.

Bandwidth Badge Legend

Badge Meaning
Status: OK / POOR / WEAK / UNSTABLE Overall quality state derived from recent throughput + jitter scoring while live.
Status: CONGESTION / BLOCKED / FAILURE Upload-path degradation tiers; these indicate increasing egress risk and should be investigated immediately.
Reason: STREAM ERROR / NO INGEST / AUDIO LOSS Current top-level fault hint shown beside the monitor to speed operator diagnosis.
Reason: DEST FAIL / HIGH UTILIZATION / HIGH JITTER Destination-specific failures or network stress indicators that may explain quality drops.

Throughput values are NIC-based best-effort estimates. Link capacity reflects adapter link speed, not a guaranteed ISP speed test.

Known Gaps / Active Hardening

Operational

  • Operator post-install physical validation remains required (target hardware/network checks).
  • Artifact manifest/checksum publication should be formalized for external release traceability.
  • Stripe checkout still needs a full end-to-end smoke test against the current website/deploy package.

Security / Access

  • Publisher identity/signing reputation workflow is in progress for improved SmartScreen trust posture.
  • Administrative tooling is restricted to authorized operators.

Quality / UX

  • Transparency: the prior DPI scaling anomaly was traced to a corrupted profile on a single test machine.
  • Appliance sizing policy is improved/hardened, but real-world monitor validation is still required after the latest window policy change.
  • FFmpeg-first capture audio muting still rebuilds the managed capture worker; native no-restart audio gating remains future architecture work.
  • Playlist multi-item Repeat can still show a small seam only at end-of-cycle restart.
  • Lint/code-quality cleanup continues (`server.js` baseline and naming cleanup tasks).

Roadmap + Timeline (Post v1.2.0)

Immediate (0-7 days)

  • Run operator end-to-end runtime validation against the packaged v1.2.0 mainline build.
  • Run a full Stripe checkout smoke test against the current website package and hosted flow.
  • Hold v1.2.0 as the new baseline and document only release-closeout fixes until v1.3 planning begins.
  • Maintain deterministic gate sequence (`update-locks` -> `verify` -> `prebuild` -> `verify` -> `build` -> `verify`).

Near-Term (1-3 weeks)

  • Publisher signing/reputation hardening for better SmartScreen trust posture.
  • Expand telemetry/dashboard coverage on the stabilized v1.2.0 foundation.
  • Continue lock-state and drag persistence regression coverage on the dnd-kit path.

Deferred / Parked

  • Internal `tbar-*` nomenclature refactor remains parked by operator direction.
  • Control-surface integration model (Stream Deck first, extensible mapping later).
  • Policy-based output auto-recovery orchestration.
  • Node Media Server v4 evaluation/migration after the v1.2.0 line is closed.

Source Docs Used

  • Current release handoff and closeout summary
  • docs/HANDOFF_PLAYLIST_MODULE_v1.2.0_2026-03-17.md
  • docs/AgentProtocols.md
  • Archived release and hardening notes under docs/archive/2026-03-17-v1.2-closeout/
  • Installer manifests and release checksums under docs/release-manifests/
  • Targeted rollback notes under docs/revert-points/

This page is intentionally static for now so it can later be mirrored into Notion, AppFlowy, or any third system without coupling.