AAA
c30f4e9f73
docs(route): define TURN allocation admission truth ( #207 )
...
* docs(route): define TURN allocation admission
* docs(route): align TURN admission source truth
2026-08-23 03:20:41 +08:00
AAA
5dcec6efe0
chore: align Wave B with accepted LiveKit boundary
2026-08-23 01:56:55 +08:00
AAA
1fc89b51ae
docs(route): define pragmatic LiveKit trust boundary
2026-08-23 01:51:36 +08:00
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