Repository navigation
v0.6.0
v0.6.0 — qualified stable release
This release supersedes v0.5.3 as GitHub Latest. Its signed candidate passed the exact qualified combinations below on real hardware. Supported platform families (Linux, macOS, and Windows hosts; Chromium-based browsers, Firefox, and Safari/WebKit) are tested in CI, not qualified; see docs/COMPATIBILITY.md. Neither claims unnamed hosts, browsers, OMP builds, or remote-access paths.
Highlights since v0.5.3
- Windows hosts enter the qualified matrix: the signed candidate installs, survives a real reboot, starts at interactive logon, serves the physical Pixel, rotates, rolls back, and uninstalls on Windows Server 2025.
- On Windows, the gateway no longer exits at a slow first logon before it listens: a fresh private-ACL helper's first reply may take 45 seconds to cover PowerShell's cold start after install, and a failed helper is cleared without stopping the gateway.
- Background Web Push enters the qualified matrix on the Pixel: closed-app delivery at each detail level, lock-screen presentation, taps to current Control and View, stale-generation refusal, authoritative clear, force-stop, permission revocation, Doze, and network changes.
- Background notifications no longer stall after a burst: pushes carry no Web Push Topic, which FCM throttled after 20 messages per device.
- An alert cleared moments after it appeared no longer stays on an Android screen, and an unchanged replay no longer re-alerts.
- The PWA's outage and troubleshooting text no longer assumes an Android phone; it covers Android, iPhone and iPad, and computers.
- View, Ask, photo-composer, native MathML, and reconnect behavior remain intact.
Qualified combinations
| role | combination |
|---|---|
| host | Debian 13 (trixie) x86-64 |
| host | macOS arm64 (Mac14,3) |
| host | Windows Server 2025 x86-64, started at interactive logon |
| client | Chrome on Android (Pixel 10 Pro), including background Web Push |
Exact qualified OS, browser, and kernel builds, per-lane evidence, and the qualifying candidate are recorded in docs/RELEASE_STATUS.md and docs/COMPATIBILITY.md at this source commit.
Required deployment preconditions
- Install mainline OMP >=18.1.20 (source reference: v18.3.0 at 62bc57be1b03ef0802a33cf7f5f530e534527531), set collab.autoStart to control or view, and start sessions with plain omp. No gateway integration patch is required.
- Run Tailscale's TUN-mode client and Tailscale Serve over tailnet HTTPS. Userspace networking, Funnel, Portal Tunnel, and self-hosted or proxied relays are not supported.
Known environment limitation
Android Chrome can wedge its process-wide network state outside the qualified lock/Airplane/Doze transitions. Native EventSource reconnection and the bounded snapshot fallback recover the qualified cases; after an uninterrupted prolonged visible outage the loaded shell exposes force-stop/reopen help. The release does not claim page JavaScript can restart a failed browser process.
The Windows claim is start at interactive logon, not at boot. Background Web Push records force-stop and Doze outcomes as observed variants, never as guaranteed delivery.
Install or upgrade
For the first upgrade from the fork-era gateway, retain its signed archive and matching private configuration, then use that archive's uninstall command to stop and unregister its service. This leaves config and installed runtimes in place; an active fork-era service cannot authenticate with the new readiness token.
Extract omp-session-gateway-0.6.0-bun.tar, then run bun apps/gateway/src/cli.js install --origin https://host.tailnet.ts.net --allow user@example.com with the deployment's real values. Repeat --allow for additional identities. Subsequent mainline reinstalls preserve configuration and the readiness token.
Rollback
Gateway rollback does not switch the separately running OMP process. The v0.5.3 predecessor sends each push with a per-session Topic that FCM throttles after a burst, and it can leave a just-cleared alert on an Android screen. On Windows it can exit at logon without listening when its private-ACL helper starts slowly, as right after install. rollback --to can select only the runtimes this release retained. Preserve configuration and readiness-token state; do not silently downgrade or restart OMP. Historical fork-era recovery remains a separate stopped-service procedure in docs/UPGRADE_ROLLBACK.md.
- Source commit: b39ba82
- OMP source reference: 62bc57be1b03ef0802a33cf7f5f530e534527531 (tag v18.3.0); mainline >=18.1.20 is required
- Runtime: Bun 1.4.0; registry protocol 1; Push API 2
- Verification: https://github.com/alphastorm/omp-session-gateway/blob/b39ba822195eb61b27667c3211e816f6e10836fe/docs/RELEASE.md