Commit Graph
107 Commits
Author SHA1 Message Date
AAA d4353686a4 feat(admission): support 20-viewer rooms 2026-08-23 12:28:23 +08:00
AAA f733d8f22b refactor(route): admit exact TURN allocations (#208)
* refactor(route): admit exact TURN allocations

* fix(route): preserve exact selected fallback lifecycles

* fix(route): preserve fallback replacement authority
2026-08-23 04:04:37 +08:00
AAA 14ee256232 refactor(route): reconcile SFU room lifecycle 2026-08-23 00:52:53 +08:00
AAA 524f012739 refactor(route): enforce global SFU admission 2026-08-23 00:50:11 +08:00
AAA ca1d715319 fix(route): enforce authenticated endpoint capacity 2026-08-23 00:23:15 +08:00
AAA 78871db805 refactor(route): unify endpoint media copy accounting (#200) 2026-08-22 21:59:44 +08:00
AAA 001f14aaf0 fix: stabilize relayed connection details (#187) 2026-08-22 09:38:00 +08:00
AAA 30ffe44d60 feat(routing): probe Host parents without breaking media (#183) 2026-08-22 08:47:06 +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 f81577c4c5 feat(web): observe selected pair responses (#181)
Add local, generation-guarded selected-pair response evidence without granting it routing or recovery authority.
2026-08-22 08:26:41 +08:00
AAA 12c686ea5e fix(sfu): enforce bounded root invariants (#179) 2026-08-22 08:04:05 +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 f9ecf92c34 feat(web): export privacy-safe connection diagnostics (#171)
Add an on-demand allowlisted diagnostic export that excludes addresses, identities, credentials, and raw signaling data.
2026-08-22 05:03:34 +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 42397e18ce feat(web): add bounded connection self-check (#169)
Add honest pre-share health, WSS, and STUN checks without creating media state or exposing TURN/SFU credentials.
2026-08-22 04:48:18 +08:00
AAA 0af8e90284 feat(observability): expose local media path evidence (#166)
Add local-only SFU, encoder, A/V sync, and selected candidate evidence without changing media routing or wire contracts.
2026-08-22 04:23:55 +08:00
AAA b95aaa5834 feat(media): add screen audio quality presets (#165)
Add configurable 64/128/256 kbps screen-audio presets across P2P, relay, and SFU paths.
2026-08-22 04:10:53 +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 2a1c952726 feat(web): show topology to viewers (#161) 2026-08-22 01:08:36 +08:00
AAA 2cf4746ee7 fix(media): retry healthy SFU after cooldown [skip ci] (#160) 2026-08-22 00:56:52 +08:00
AAA 3695d2ab3c feat(web): compact host viewer connection details
Progressively disclose deep diagnostics in the Host roster.
2026-08-22 00:52:05 +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 d94bac11ca fix(media): disable screen-audio speech processing [skip ci] 2026-08-21 23:27:48 +08:00
AAA 85a02b2454 fix(web): show peer-relayed viewer evidence [skip ci] 2026-08-21 23:17:16 +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 7dcb5af9c1 fix(web): explain locked codec selection [skip ci]
* fix(media): isolate forced H.264 regression [skip ci]

* feat(media): add explicit Web codec selection [skip ci]

* fix(media): raise peer Opus bitrate target [skip ci]

* fix(web): explain locked codec selection [skip ci]
2026-08-21 22:56:20 +08:00
AAA 834579a7fa fix(media): raise peer Opus bitrate target [skip ci] 2026-08-21 22:47:46 +08:00
AAA eef8d156f3 feat(media): add explicit Web codec selection [skip ci] (#150) 2026-08-21 22:11:42 +08:00
AAA f07871b73b feat: enable route-consistent screen audio stereo [skip ci]
Merge reviewed audio quality improvement after video quality-tier production cutover. Production deployment follows exact merged SHA.
2026-08-21 19:44:58 +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 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 7410278219 feat(web): prefer H.264 media [skip ci]
Prefer H.264 on Web P2P, browser relay, and SFU publication while retaining negotiated VP8 fallback and disabling parallel backup-codec publication. Local full gate and independent P0/P1 review passed.
2026-08-21 17:06:22 +08:00
AAA 4a216c8b92 fix(media): reapply negotiated P2P quality settings [skip ci] 2026-08-21 15:55:37 +08:00
AAA ef36543d6e fix(web): show current connection truth [skip ci] 2026-08-21 15:44:30 +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 91df9b7c89 feat(web): add one-share P2P debug mode [skip ci]
Locally accepted: 107 focused tests, typecheck, client/server builds, repository hygiene, and independent P0/P1 review. PR head had zero Actions runs.
2026-08-21 13:30:05 +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 f6a8d533d7 feat(web): streamline room entry UX [skip ci]
Local typecheck, 37 focused tests, client build, hygiene, responsive Chromium check, and independent P0/P1 review passed.
2026-08-21 12:17:18 +08:00
AAA 671f7ef731 feat(web): expose authoritative viewer topology
Local typecheck, 142 focused tests, client build, repository hygiene, and independent P0/P1 review passed.
2026-08-21 11:46:03 +08:00
AAA 16c08eb96f feat(web): raise screen audio send ceiling (#128) 2026-08-21 11:30:15 +08:00
AAA 766aaf4f6e fix(web): show SFU viewer connection truth (#127) 2026-08-21 11:21:28 +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 b78e25b4fb feat(web): add audio and loss diagnostics (#120) 2026-08-21 10:12:13 +08:00