Files
Piik/docs/status.md
T

97 lines
5.3 KiB
Markdown

# Current Status
Last updated: 2026-08-28
This is the current execution index. Git history owns completed timelines;
[verification status](./verification-status.md) owns evidence boundaries.
## Production
- `https://share.bonfire.icu` runs exact application/runtime revision
`fdc18d48cef15abd531e0066a07bc7650b4082a3`, release `fdc18d4`, wire
`screener-v16`, from `/opt/screener/releases/fdc18d4`. The immutable runtime
tar SHA-256 is
`930f6ae45fce35da54941b081138a2a9fa35ba933d543ff4ed82e93aebd70070`;
its 41-file manifest SHA-256 is
`72e3758805ff0deb28084da9d0a6eb5a131e69397ecce52c917fb02b153e881d`.
- The served Browser entry references `assets/index-BLS925La.js`; the public
asset SHA-256 is
`a8048291d98d21b0bab9e14599f8d5f7425d59052ff0867e62d1640411941987`.
Public `/healthz` returns 200. The release postflight found Screener, LiveKit,
coturn, and nginx active with zero restarts.
- Production enables SQLite room authority at
`/var/lib/screener/rooms.sqlite`; live participants, routes and media remain
process-only. A controlled restart retained the room authority and Host-owned
capture while the Viewer rebuilt media without a page refresh. Lightweight
mode remains available when `ROOM_DATABASE_PATH` is unset and reacquires a
room rather than persisting the old authority.
- Public media listeners remain STUN-only UDP 3478 and LiveKit UDP 7882. Web
ingress is TCP 80/443; Node 8787 and LiveKit control/signaling 7880 are
private. TURN, ICE/TCP, media TCP, TLS relay, port 5349, and relay ranges are
disabled.
- Browser video uses the content-independent H.264 sender gate with VP8
fallback, plus the locked pre-share `VP8 | Auto | H264` Host selector and
resolved codec display. Video retains `contentHint = "motion"`; audio uses
`music`. The SFU publisher uses the Host's one codec decision, leaves
representation construction to pinned LiveKit,
enables Dynacast, uses server send-side BWE, keeps AdaptiveStream disabled,
and configures no external ICE servers on Browser SFU PCs.
- Screen audio provides live 64/128/192 kbps ceilings with 128 default. SFU
publication uses stereo, DTX off, and RED off. Early autoplay presentation is
gated by current media connection state.
- Native-edge local convergence is available behind the default-off pre-share
topology policy. The adjacent default-off peer-only policy excludes all SFU
paths for that share generation. Both policies lock while sharing.
## Current Source
- Canonical source uses the strict `screener-v16` Browser/server contract.
Optional SQLite stable authority, non-expiring local preferred code, atomic
room replacement and the Host codec selector remain implemented; production
selects stable storage. Graceful restart, crash, timeout and network loss use
one reconnect state. LiveKit room teardown cannot stop Host-owned capture.
- One event-driven controller owns the committed graph and one room-serial child
operation. Initial direct acquisition uses a five-second foreground window;
exact transport-connected progress may retain that candidate through the
total deadline, while first decoded frame remains the only commit proof. SFU
provides working media before finite background direct convergence. Healthy
decoded edges remain sticky.
- WebRTC/LiveKit own media adaptation. With the per-share convergence gate
enabled, one fresh degraded native edge may enter the existing serial route
operation after availability work. A P2P candidate commits only after the same
Viewer sees first-frame readiness plus three fresh windows that strictly
improve delivered resolution or rounded FPS without regressing either. Peer
candidates stay first; bounded SFU is only the suffix for whole-Host-root
degradation and retains native publication proof. The gate defaults off.
- Screener has no custom SFU layer list, quality score, layer selector,
all-pairs probe, parent-wide prediction or periodic rebalancing. P2P and SFU
still recover their current route before actual failure enters reassignment.
- Viewer hidden/freeze/pagehide suppress decoded-stall routing authority;
visible/resume/pageshow rebaseline and rearm current-frame proof. SFU
pagehide no longer triggers LiveKit's automatic disconnect. Native Viewer
controls still own playback, and manual reconnect stays on the current route.
## Current Milestone
Measured route convergence and generation-owned Viewer presentation are
deployed. A compatible `screener-v16` application restart retained the active
6020 Host capture and rebuilt six Viewer routes without a page reload.
## Active Boundaries
- Desktop Host background capture remains unconfirmed. The current-browser
screening did not reproduce a Host-page drop; accepted Viewer lifecycle work
prevents frozen JavaScript wall time from becoming an immediate route failure
but is not capture keepalive.
- Current-path quality can drive opt-in local convergence in source and
production. Weighted/global optimization remains parked.
- Repository simplification does not change or deploy product behavior beyond
deleting proven dead private surfaces.
- Native/executable senders, shared encode, distribution packages, broad UI
polish, and bilingual support remain outside the current release.
## Current Hold
No source or deployment P0/P1 is open. Sanitized route logging remains enabled
for the pre-release canary.