Commit Graph
106 Commits
Author SHA1 Message Date
AAA a30f9c2382 docs(route): fence LiveKit cleanup behind listener ownership 2026-08-23 00:52:08 +08:00
AAA 4469421e91 docs(route): bind SFU admission to room lifecycle 2026-08-23 00:51:16 +08:00
AAA 56ae363838 docs(route): define deployment-wide SFU admission 2026-08-23 00:48:58 +08:00
AAA 5d03be17aa docs(route): close wave A and advance routing ledger 2026-08-23 00:42:36 +08:00
AAA 120371bf05 docs(route): bind native sender to authenticated endpoint cap 2026-08-23 00:16:37 +08:00
AAA 78871db805 refactor(route): unify endpoint media copy accounting (#200) 2026-08-22 21:59:44 +08:00
AAA 0af91c7c38 docs(route): define local selection and fallback gates (#199) 2026-08-22 21:40:46 +08:00
AAA 550308b406 docs: schedule accepted implementation waves (#198) 2026-08-22 20:50:11 +08:00
AAA 1979354264 docs: accept holistic routing truth (#196) 2026-08-22 19:46:17 +08:00
AAA c230dafbd4 docs: converge current truth and todo (#195) 2026-08-22 14:07:29 +08:00
AAA 6fa63024bd docs: quarantine disputed TODO truth
Quarantine disputed TODO and routing claims, record current production facts, and define the canonical workspace restoration order before any further implementation.
2026-08-22 12:17:56 +08:00
AAA 770f2fdc23 docs: align Browser1 routing truth (#190)
* docs: align Browser1 routing truth

* docs: keep release policy wording current
2026-08-22 10:09:14 +08:00
AAA 61441188e6 docs: restore Browser1 release truth (#186) 2026-08-22 09:08:11 +08:00
AAA 27c11f5cda docs: record production 21d5 cutover (#184) 2026-08-22 09:01:30 +08:00
AAA 9080e68601 fix(signaling): detect silent websocket partitions (#182)
Add a bounded authenticated control-plane watchdog that replaces only an unresponsive socket generation without granting it media-route authority.
2026-08-22 08:32:32 +08:00
AAA 12c686ea5e fix(sfu): enforce bounded root invariants (#179) 2026-08-22 08:04:05 +08:00
AAA 7f32dd16df docs: record current routing lifecycle and rollout (#178) 2026-08-22 07:48:44 +08:00
AAA 35f9b785f9 fix(media): clamp browser relay release capacity (#177) 2026-08-22 07:29:50 +08:00
AAA 35ab8bb700 fix(media): prepare viewer relay parents before route commit (#175) 2026-08-22 06:50:45 +08:00
AAA 532852d587 fix(media): make peer quality reselection make-before-break (#173)
Keep the active peer edge until a bounded alternate Viewer proves current-generation media, while hard failures retain priority and the existing recovery ladder.
2026-08-22 05:45:53 +08:00
AAA b7de6ed24f fix(media): restore peer-assisted 16-viewer admission (#170)
Keep the default at eight while restoring the documented explicit 1-16 admission range and its cap2/cap3 functional gate.
2026-08-22 05:00:26 +08:00
AAA 0a5c21025f fix(media): demote corroborated relay parents (#164)
Preserve exact selected edges across unrelated route revisions, demote corroborated bad relay parents, and parameterize the bounded endpoint cap while retaining the production default of two.
2026-08-22 03:55:11 +08:00
AAA a0e901bee9 fix(media): recover active SFU from viewer control (#162) 2026-08-22 01:32:19 +08:00
AAA 2cf4746ee7 fix(media): retry healthy SFU after cooldown [skip ci] (#160) 2026-08-22 00:56:52 +08:00
AAA e24719db3b fix(media): compare relay FPS with parent input
Peer-only relative relay quality recovery using fresh parent input evidence.
2026-08-22 00:42:57 +08:00
AAA 21f2218645 revert: remove uncalibrated relay FPS reselection [skip ci] 2026-08-22 00:14:36 +08:00
AAA ed57d3ed5e fix(media): reselect persistently low-fps relay edges [skip ci] 2026-08-22 00:01:04 +08:00
AAA b1d676e317 feat(web): finish participant presence states [skip ci]
* fix(web): hide unique viewer ID suffixes

* feat(web): show viewer roster to viewers

* feat: show intentional sharing pause to viewers

* fix(web): show proven SFU viewer connections [skip ci]

* chore(signal): version presence state wire [skip ci]

* fix(signal): close presence generation contract [skip ci]
2026-08-21 23:05:51 +08:00
AAA 252b6d69c0 fix(sfu): retain live quality across republish [skip ci]
Merge reviewed video quality-tier regression fix. Production deployment follows exact merged SHA.
2026-08-21 19:14:23 +08:00
AAA 647070d278 refactor(validation): scope local gates to correctness [skip ci]
Keep local media validation focused on topology and recovery correctness, move Native packaging to a manual release boundary, and persist queued-feedback workflow guidance.
2026-08-21 18:31:42 +08:00
AAA 9d8d97826f docs(deploy): record healthy reselection cutover [skip ci]
Record exact production 6ccb516a deployment evidence and align healthy-reselection status across the owning truth documents.
2026-08-21 18:27:15 +08:00
AAA 9e3ebe26ce feat(media): reselect healthy SFU roots [skip ci]
Event-triggered make-before-break recovery from healthy SFU to a proven P2P baseline parent.
2026-08-21 17:59:41 +08:00
AAA f3d60cc779 test(access): add privacy acceptance gate [skip ci]
Local privacy gate and focused evidence.
2026-08-21 17:44:58 +08:00
AAA 4a216c8b92 fix(media): reapply negotiated P2P quality settings [skip ci] 2026-08-21 15:55:37 +08:00
AAA 5810ec2201 refactor(media): keep routing automatic [skip ci] 2026-08-21 15:21:59 +08:00
AAA ae153c05bd feat(media): allow two Web relay children [skip ci]
Locally accepted: focused 214 tests, full 458-test suite, typecheck, client/server builds, Chrome five-Viewer cap2 proof, repository hygiene, and independent P0/P1 review. PR head had zero Actions runs.
2026-08-21 13:50:35 +08:00
AAA 9a76cc7177 fix(web): keep viewer media state truthful [skip ci]
Locally accepted: 32 files/468 tests, typecheck, client/server builds, repository hygiene, and independent P0/P1 review. PR head had zero Actions runs.
2026-08-21 13:24:14 +08:00
AAA 5a9fcfd56f docs: document hard NAT traversal boundary (#125) 2026-08-21 10:40:50 +08:00
AAA c5729c53b4 test(media): add selected TURN allocation gate (#122)
Add a sanitized standalone Chrome allocation gate and retain the active Host-ingress selected TURN functional evidence. Ordinary peers remain STUN-only; initial ingress, peer-selected, mobile, resource, and performance gates remain open.
2026-08-21 10:22:47 +08:00
AAA 8dc929fc87 fix: cap peer-selected TURN attempts per room (#121) 2026-08-21 10:16:59 +08:00
AAA 6a51ae45ce refactor: remove mobile sender product path (#119) 2026-08-21 10:08:19 +08:00
AAA 5975dc9b12 feat(web): improve display audio capture (#118) 2026-08-21 09:55:56 +08:00
AAA 0981dafb87 feat(media): retry pending host SFU ingress via selected TURN (#115)
Allow one strictly bound relay-only Host ingress retry during pending SFU prepare, with a single bounded deadline and peer-baseline rollback.
2026-08-21 07:27:07 +08:00
AAA a560f54bcc feat(native): add WGC hardware H264 source (#109)
Adds the explicit Windows WGC/D3D11 hardware-only Media Foundation H.264 source, process-tree audio, direct Go/Pion fanout, source-aware UI/gate, and unique evaluation package helper. Browser VP8 remains the default. Local acceptance and bounded real-device evidence are recorded in the PR; GitHub jobs were billing-blocked before executing any step.
2026-08-21 05:37:29 +08:00
AAA 18bee982a4 fix: require site access for code-only viewers (#100) 2026-08-21 03:53:03 +08:00
AAA bd8a0d80b0 feat(native): package Windows sender evaluation build (#99) 2026-08-21 03:18:48 +08:00
AAA de7426b944 docs: record deferred route recovery gaps (#95) 2026-08-21 02:52:32 +08:00
AAA e867d89418 docs: clarify active media route state (#94) 2026-08-21 02:48:42 +08:00
AAA 6cd99545e6 feat(native): add window-scoped process audio (#93)
Add opt-in Windows 11 target-process audio capture, one AudioEncoder Opus stream, and one shared Pion audio track beside native video.
2026-08-21 02:44:46 +08:00
AAA 7949efac2d docs(audio): scope native Windows audio slice
Document the P1 Windows process-loopback audio slice, browser Opus encoding boundary, QPC timing, failure policy, and one-viewer smoke criteria. Documentation only; no product code changed.
2026-08-21 01:34:31 +08:00