Commit Graph
171 Commits
Author SHA1 Message Date
AAA 42e756e00a fix(room): preserve Viewer capacity across sharing generations (#307) 2026-08-28 01:46:32 +08:00
AAA 8f7fbe5bfe fix(route): make route convergence measured and presentation-stable (#305)
* Align stable route debug ordinals

* Make route convergence measured and presentation-stable
2026-08-28 00:55:24 +08:00
AAA 992ee15437 fix(route): fix committed route state and bounded convergence (#303) 2026-08-27 22:59:12 +08:00
AAA ad175408c0 fix(route): guard SFU quality convergence (#301)
Fixes the production-proven P2P-to-SFU quality misrouting. Local full checks and independent P0/P1 review passed; the GitHub job did not start any steps.
2026-08-27 20:21:55 +08:00
AAA 71de094033 feat(route): implement native-edge topology convergence (#299)
Implements the accepted opt-in native-edge local convergence controller and the pre-share topology optimization and peer-only policies. Local full checks and independent P0/P1 reviews passed; the GitHub job did not start any steps.
2026-08-27 18:03:11 +08:00
AAA 501df27bce feat(quality): implement strict v13 quality shadow (#291) 2026-08-27 02:57:38 +08:00
AAA 1311a70cac fix(media): preserve media presentation across route updates (#289) 2026-08-27 02:08:04 +08:00
AAA d87f6730b7 fix(recovery): fence media recovery to current authority (#284) 2026-08-26 23:56:27 +08:00
AAA ba9c579f19 fix(recovery): preserve exact client authority intents (#283) 2026-08-26 23:53:04 +08:00
AAA efe3f8d6be fix(route): return exact route terminal owners (#282) 2026-08-26 23:51:41 +08:00
AAA e31e6250fc refactor(access): separate password derivation outcomes (#281) 2026-08-26 23:49:57 +08:00
AAA 06c154a080 fix(media): preserve Host capture across media recovery (#279) 2026-08-26 23:08:29 +08:00
AAA 4a919d9b65 fix(route): rebind Viewer route identity after restart (#278)
* fix(route): rebind Viewer identity after restart

* test(route): require authoritative Viewer identity
2026-08-26 22:45:57 +08:00
AAA 74e1d83d25 feat(media): add stable room controls and codec selection (#272)
* feat: add host codec preference controls

* test: retain relay codec across source replacement

* feat: identify graceful service restarts

* feat: add atomic room replacement
2026-08-26 20:32:52 +08:00
AAA dc1869778c feat(room): add optional stable SQLite room authority (#271)
* feat(rooms): add stable SQLite authority

* fix(config): require absolute room database path
2026-08-26 19:50:35 +08:00
AAA 68719dcdd8 fix: make H264 gate content independent 2026-08-26 19:05:21 +08:00
AAA 4960695821 feat: show negotiated video codec 2026-08-26 19:05:21 +08:00
AAA 6b3c3de8a0 feat: prefer proven H264 browser senders 2026-08-26 19:05:21 +08:00
AAA 962f91622e fix(viewer): make page lifecycle recovery route-safe 2026-08-26 04:58:53 +08:00
AAA 00c205edbe fix(route): converge direct paths without disrupting media 2026-08-26 03:25:40 +08:00
AAA f87c2ba0ed fix(route): preserve media while converging direct paths 2026-08-26 01:21:34 +08:00
AAA e0e7c30978 fix(rooms): bound active room preference 2026-08-25 23:43:30 +08:00
AAA d52f1b950b feat(rooms): prefer the last available room code 2026-08-25 23:35:15 +08:00
AAA c6d6655887 fix(media): stabilize reconnect and startup quality (#266)
* fix(media): scope viewer reconnect

* fix(media): serialize peer recovery

* fix(media): apply peer profile when connected

* fix(viewer): preserve unaffected route presentation

* fix(media): default game sharing to fluid

* fix(media): initialize peer quality before offer

* fix(media): seed peer startup bitrate

* fix(media): defer adaptive scaling until startup

* docs(media): record startup adaptation matrix
2026-08-25 23:08:34 +08:00
AAA 7727054581 fix(media): align quality presets (#264)
* fix(media): default screen audio to saver

* fix(media): align screen audio tiers
2026-08-25 19:09:43 +08:00
AAA 684e4d1d15 fix(media): stabilize current route presentation (#263) 2026-08-25 18:36:54 +08:00
AAA 43ff37bed9 fix(viewer): align lifecycle and native controls (#260) 2026-08-25 17:07:53 +08:00
AAA 52dca9a3aa fix(media): align SFU audio and playback state (#258) 2026-08-25 13:14:26 +08:00
AAA 31d8b354c0 fix(media): restore native quality adaptation (#257) 2026-08-25 12:48:46 +08:00
AAA d2fcf8d711 fix(sfu): lighten the lower representation (#255) 2026-08-25 12:15:45 +08:00
AAA 89db0b47ba feat(sfu): enable native representation adaptation 2026-08-25 10:01:42 +08:00
AAA aa95f5674f fix(route): keep active SFU liveness cadence 2026-08-25 09:29:49 +08:00
AAA d39f4359cd fix(sfu): publish a single high representation (#248) 2026-08-25 05:34:19 +08:00
AAA 37bfecdd2e fix(media): preserve audio across route reconnects (#245)
Keep persistent relay streams and LiveKit SFU publications bound to their current audio senders across reconnects.
2026-08-25 03:13:14 +08:00
AAA b608d18920 refactor(stats): remove unused ICE response counters (#243) 2026-08-25 02:23:40 +08:00
AAA d9cdb55cfc feat(rooms): finish Browser v12 room and UI controls
* feat(rooms): simplify code entry

* fix(host): clarify room entry labels

* docs(rooms): decouple access management from sharing

* feat(host): streamline room and quality controls

* docs(rooms): define private code entry

* feat(rooms): support private invitation-only entry

* docs(ui): unify viewer connection details

* feat(ui): unify viewer connection details

* docs(todo): queue product UI polish

* docs(route): settle local observation boundaries

* docs(rooms): align private entry truth
2026-08-25 01:50:57 +08:00
AAA cf4987c3c7 feat(browser): implement room v12 and exact audio stats 2026-08-24 22:29:56 +08:00
AAA b68f7551f5 fix(sfu): isolate Browser ICE servers 2026-08-24 20:22:43 +08:00
AAA b662ece099 refactor(browser): fix video codec to VP8 2026-08-24 14:47:58 +08:00
AAA 0121b3a912 fix(media): preserve browser screen capture semantics (#229) 2026-08-24 13:48:10 +08:00
AAA 1b7655a34d refactor(browser): simplify codec ownership 2026-08-24 10:18:23 +08:00
AAA 3536671016 feat(browser): complete v9 runtime 2026-08-24 08:09:41 +08:00
AAA eb926f89b3 feat: implement v9 viewer entry and presentation 2026-08-24 05:58:15 +08:00
AAA 37c34d9031 feat(route): add on-demand route observability 2026-08-24 05:58:15 +08:00
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 de6f6aa466 fix(route): reserve deadline stages for fallback (#214)
Prevents silent peer candidates from starving selected/SFU fallback while preserving one room-serial operation and one total deadline.
2026-08-23 23:59:56 +08:00
AAA cc44764e74 fix(sfu): reconcile late host publications (#213)
Restores SFU subscription reconciliation across real LiveKit event ordering and tightens production logging.
2026-08-23 23:02:06 +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