Commit Graph
47 Commits
Author SHA1 Message Date
AAA c962fe758b feat(media): apply live audio ceilings 2026-08-24 05:58:15 +08:00
AAA e647a1e52a refactor(route): remove application TURN (#216) 2026-08-24 02:14:12 +08:00
AAA b76d2cc0a5 feat(rooms): replace SQLite with leased memory rooms (#211)
Implements the accepted memory-resident room and access model on the single piik-v8 Browser wire. Local repository, full Web, build, and Chrome access/privacy gates passed before merge.
2026-08-23 21:47:49 +08:00
AAA 10c1a31de6 refactor(route): converge on one room controller 2026-08-23 17:17:04 +08:00
AAA d4353686a4 feat(admission): support 20-viewer rooms 2026-08-23 12:28:23 +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 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 35f9b785f9 fix(media): clamp browser relay release capacity (#177) 2026-08-22 07:29:50 +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 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 eef8d156f3 feat(media): add explicit Web codec selection [skip ci] (#150) 2026-08-21 22:11:42 +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 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 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 85c3f7342f refactor: remove stale hybrid routing artifacts (#89) 2026-08-21 01:48:29 +08:00
AAA 4b52aadda7 feat(media): add restricted host SFU selected-edge TURN
Adds the explicit host-sfu-ingress selected-edge wire and relay-only Host publisher path while preserving STUN-only ordinary peers.
2026-08-21 00:33:54 +08:00
AAA 8ed3b4e016 feat(presence): let Web Hosts set display names
Web Hosts can set local display names through the existing opt-in presence roster; Viewer/Host subscribers see the current Host name. Native exact wire remains unchanged.
2026-08-20 22:21:51 +08:00
AAA ded55bcd7d feat(access): add private room password entry (#77)
Adds bounded per-room Viewer password entry while preserving grant/public paths and Native v2 wire compatibility.
2026-08-20 20:00:52 +08:00
AAA 2930e4c788 feat: add bounded selected-edge TURN recovery (#76)
Add one default-off, generation-bound relay-only rebuild for the original failed peer edge after Viewer-root SFU exhaustion while keeping ordinary Web and Native ICE STUN-only.
2026-08-20 19:53:58 +08:00
AAA 57d6e8982b fix(media): remove participant-wide TURN capability (#72) 2026-08-20 17:32:13 +08:00
AAA 1e11e09261 feat: add exact-room peer ICE TURN fallback (#66) 2026-08-20 13:37:02 +08:00
AAA 51a3022ae1 feat(presence): show named online viewer roster (#64) 2026-08-20 13:17:26 +08:00
AAA 4b942bfda0 feat(native): add provisional fixed-high sender candidate (#61) 2026-08-20 11:32:05 +08:00
AAA 08aee25582 fix(routing): reparent persistently degraded viewer edges (#62) 2026-08-20 11:29:53 +08:00
AAA de967fbc61 feat(access): scope viewer invitations to rooms (#56) 2026-08-20 02:42:22 +08:00
AAA 7621f2766e fix(signaling): make protocol mismatch terminal 2026-08-19 21:11:54 +08:00
AAA ad10036d1b fix(media): close the UDP candidate migration boundary 2026-08-19 21:08:49 +08:00
AAA 12d4b4e4aa chore: merge main into feat/sfu-udp-exact-room
# Conflicts:
#	docs/project-memory.md
#	docs/status.md
#	docs/方案设计.md
#	docs/需求理解.md
#	src/shared/protocol.ts
#	tests/server-signal.test.ts
2026-08-19 20:46:57 +08:00
AAA ae298aadd2 feat(media): migrate ordinary ICE to STUN-only 2026-08-19 20:44:36 +08:00
AAA a949fbaf15 feat(quality): add authenticated viewer evidence 2026-08-19 20:39:56 +08:00
AAA a75c755d7c chore: merge main into spike/hybrid-warm-fallback
# Conflicts:
#	docs/README.md
#	docs/project-memory.md
#	docs/research/low-server-media-routes.md
#	docs/status.md
#	src/client/pages/HostPage.tsx
#	src/server/signaling.ts
#	src/shared/protocol.ts
#	tests/protocol.test.ts
#	tests/server-signal.test.ts
2026-08-19 15:06:43 +08:00
AAA b0ea60c95c perf(media): prewarm optional SFU fallback 2026-08-19 13:37:08 +08:00
AAA abbca9ff21 feat(media): add bounded clarity controls 2026-08-19 13:30:14 +08:00
AAA 96b2d4f1e6 feat(media): add bounded automatic hybrid routing 2026-08-19 12:38:13 +08:00
AAA baa8bcab4a feat: synchronize peer-assisted quality profiles 2026-08-19 02:55:42 +08:00
AAA adc57063e8 feat: add bounded peer-assisted relay topology 2026-08-19 01:57:18 +08:00
AAA dfd264adb4 feat: add persistent reusable rooms (#10)
* feat: add persistent reusable rooms

* fix: preserve unicode documentation paths
2026-08-18 23:17:24 +08:00
AAA 38eeadd284 feat: simplify site access and room joining (#7)
* feat: simplify site access and room joining

* docs: update access and room capacity design
2026-08-18 21:40:30 +08:00
AAA c04045957a feat: add measurable P2P screen sharing PoC (#2) 2026-08-18 16:54:38 +08:00