LuminalShine 26.07.1-beta.1
The first beta of the 26.07.1 series, on top of 26.07.0. This release addresses a critical field report — the Web GUI becoming unreachable from other systems on the LAN, and the admin password held in Windows Credential Manager appearing corrupted after such an access attempt — and adds a restricted stats-only login for remote monitoring.
General
- New: Stats-only login. A "Stats view only" toggle on the login screen signs you in with a restricted session that can watch the active stream's statistics — the new read-only /stats page with session history and per-session details — but cannot administer the host. The restriction is enforced server-side by a default-deny allowlist (read-only session, metadata, and locale endpoints; everything else answers 403
insufficient_role); the Web UI hides the admin navigation and all destructive controls for the session. Intended for checking on a stream from another LAN system without exposing a full admin login. - Fixed: blocked access now explains itself. When the host's origin policy (Web UI allowed origins: PC / LAN / WAN) denies a connection, the API now returns a structured
origin_forbiddenerror naming the allowed class, and the login screen shows an actionable message pointing at the setting — instead of a dead page or a misleading "wrong password" failure. Denials are also logged at warning level on the host.
Windows 11
- Fixed: Web GUI unreachable from other LAN systems on IPv6-enabled networks. IPv6 peers with global-unicast addresses were classified as WAN even when they sat on the same link, so the default
lanorigin policy rejected them with a 403 before credentials were checked. The host now checks whether the peer is on-link for one of its own adapters — using each adapter's real per-address prefix length (never an assumed /64), preferred addresses only, with a 60-second cache — and classifies on-link peers as LAN.
Windows 11 Experimental Preview
- LuminalVGD (Luminal Video Graphics Display) driver seed advanced to proto v0.3: session model, capture controller, and the libvirtualdisplay fold-in. Groundwork only — nothing ships in the installer yet.
Security Fixes
- Closed the admin-credential corruption path. Root cause: at boot, a race with the TPM could leave the credential record in Windows Credential Manager present but momentarily unreadable; LuminalShine then believed no credentials existed and silently entered first-run mode, where the unauthenticated first-user setup endpoint could overwrite the real stored record — observed in the field as a "corrupted" password after accessing the host from another LAN system. The fix closes this at every layer:
- Startup now probes the credential store non-destructively (absent / loadable / locked). A locked store never counts as first-run: setup and login are refused with an explicit "credentials locked" state (HTTP 503) while a bounded background retry (30 attempts × 10 s) waits for the store to become readable.
- The first-user setup path re-probes the store under lock before accepting anything, and refuses with recovery guidance (the Start Menu Reset LuminalShine Admin Password shortcut) if the record is locked.
- Any legitimate self-heal that replaces the stored record first preserves the previous bytes in a quarantine slot (
LuminalShine/AdminCredentials.quarantine); an intentional admin reset clears the slot.
- Fixed a data race in password verification. The verifier read the in-RAM credential fields lock-free while upgrade-on-login and background reloads reassigned them; it now snapshots them under a shared lock.
Hotfixes
- No changes in this release.
Upgrade notes: existing installs upgrade in place from 26.07.0 or 26.06.x; the MSI upgrade path is verified by the release pipeline's compatibility gate.
Full changelog: 26.07.0...26.07.1-beta.1