Commit Graph
2751 Commits
Author SHA1 Message Date
evgeny 5ddfc582f7 Merge remote-tracking branch 'origin/master' 2026-10-12 22:38:49 +02:00
evgeny db2771e8de Fix Windows interface macro collision in NCD test 2026-10-12 22:38:23 +02:00
evgeny 29a8fb2531 Check source discovery requested before desktop startup 2026-10-12 22:31:28 +02:00
evgeny 061eb0f0f8 Preserve initial channel watches until desktop core attaches 2026-10-12 22:30:38 +02:00
evgeny 17606c66b8 Document reactive stream discovery and desktop playback ownership 2026-10-12 22:29:00 +02:00
evgeny 34349bd663 Require selected epochs and verify multiple live publishers 2026-10-12 22:28:15 +02:00
evgeny e9982a2db6 Verify live Opus output and volume with real null audio devices 2026-10-12 22:26:41 +02:00
evgeny dd034a9d42 Cover channel closure and keep stream selection usable for long lists 2026-10-12 22:21:10 +02:00
evgeny cacd377d55 Use only shared source events in Android streaming UI and tests 2026-10-12 22:20:28 +02:00
evgeny dad67360b9 Remove obsolete Android stream polling and simplify lifecycle tests 2026-10-12 22:20:28 +02:00
evgeny 6e596f34a5 Notify viewers when channels close and refresh resumed playback state 2026-10-12 22:18:04 +02:00
evgeny 4e1c36955a Test desktop stream discovery, playback, pressure and teardown 2026-10-12 22:16:31 +02:00
evgeny e5d37f6e74 Translate desktop live stream controls and playback states 2026-10-12 22:15:11 +02:00
evgeny 7addfb5aa3 Keep live decoding low latency and preserve publisher stop controls 2026-10-12 22:15:11 +02:00
evgeny b4ebaa8863 Open desktop stream playback windows from channel sources 2026-10-12 22:12:41 +02:00
evgeny fe7734b9e0 Show live sources and select a stream in desktop channel headers 2026-10-12 22:12:41 +02:00
evgeny 10f197c817 Decode and play desktop live H264 and Opus streams 2026-10-12 22:11:35 +02:00
evgeny 0a5b9b50f1 Connect desktop stream bridge to core lifecycle and events 2026-10-12 22:09:39 +02:00
evgeny d9821fa89c Add bounded desktop live media bridge and source lifecycle tests 2026-10-12 22:07:35 +02:00
evgeny e3d9ac9d31 Report Android stream close reasons and epoch changes 2026-10-12 22:01:38 +02:00
evgeny d5ed19ee34 Open Android live streams from the channel header 2026-10-12 22:01:38 +02:00
evgeny ba3dd70f6c Keep Android live sources in reactive channel state 2026-10-12 22:00:12 +02:00
evgeny ba3dfa9fcc Watch Android stream sources and validate selected epochs 2026-10-12 21:58:56 +02:00
evgeny f91894aa1b Expose verified stream sources and channel watch events 2026-10-12 21:57:20 +02:00
evgeny 90d3206071 Confirm new TCP sessions and bound reciprocal challenge retries
Negotiate new TCP sessions even when the peer epoch is known, and let the retry timer send reciprocal challenges to avoid feedback loops when confirmations are lost.

Cover peer restarts, simultaneous connects, REALITY, confirmation loss, second links, stale confirmations and deadlines. Remove forced client resets and count only validated test payloads in the UDP reconnect test.

Validation: 149 tests passed; proxy, burst and load integration tests passed; Android assembleDebug succeeded.
2026-10-12 21:29:41 +02:00
evgeny d372438b6e Reuse automatically completed profiles in the NAT fixture 2026-10-12 20:57:29 +02:00
evgeny d2b96d1340 Release cold priority after a completed partial measurement 2026-10-12 20:48:33 +02:00
evgeny a32eef9ed1 Wait for the actual DOWN timer in the owner-release test 2026-10-12 20:46:43 +02:00
evgeny c7be1ebbbe Preserve cold NAT trials in the real network fixture 2026-10-12 20:43:39 +02:00
evgeny 391059c967 Refresh signed socket metadata when changing the failure-test profile 2026-10-12 20:33:31 +02:00
evgeny bea9ca88a6 Publish the test peer profile through the instance-owned snapshot 2026-10-12 20:33:16 +02:00
evgeny 1b659335b9 Test failure recheck eligibility and coalescing on a blocked UDP peer 2026-10-12 20:33:03 +02:00
evgeny 61e3ad9d24 Start a cold measurement when automatic detection is enabled 2026-10-12 20:31:45 +02:00
evgeny 406f569989 Protect cold ingress before the third routed node is announced 2026-10-12 20:29:33 +02:00
evgeny 3294f67dbf Log cold candidate eligibility and reservation changes 2026-10-12 20:27:34 +02:00
evgeny 2dc7e8d206 Document failure recheck limits and validate requested endpoints 2026-10-12 20:26:12 +02:00
evgeny 3b894753b1 Trigger NAT rechecks after direct timeout and exhausted reverse 2026-10-12 20:25:42 +02:00
evgeny 952fbe68e2 Schedule bounded endpoint rechecks after compatible UDP failure 2026-10-12 20:25:20 +02:00
evgeny 99382cf823 Cancel UDP route probes with their contexts before socket teardown 2026-10-12 20:21:02 +02:00
evgeny ceab874abc Wait for complete NAT cycles and test an indirect private helper 2026-10-12 20:18:21 +02:00
evgeny 2354e94347 Expose pending NAT candidate cycles in local diagnostic status 2026-10-12 20:17:44 +02:00
evgeny 2ba011d3fd Document grouped control, isolated helper ports and ingress correlation 2026-10-12 20:07:49 +02:00
evgeny 179aa0ef35 Release received packets when cold NAT priority defers PONG 2026-10-12 20:05:47 +02:00
evgeny bb01f243fe Allow routed observers in the NAT integration assertions 2026-10-12 19:54:39 +02:00
evgeny 3635bcf3a9 Keep connection-manager background pings out of cold NAT trials 2026-10-12 19:44:28 +02:00
evgeny e60b03916a Test automatic detection in another group over a TCP routed helper 2026-10-12 19:30:42 +02:00
evgeny 9a24ac6bdf Try controlled ingress before asking the broker for helper mapping 2026-10-12 19:27:58 +02:00
evgeny f71e94c9d8 Trace the first UDP contacts that affect cold NAT classification 2026-10-12 19:17:06 +02:00
evgeny 8906e29102 Keep background PONG replies from contaminating cold ingress checks 2026-10-12 19:01:13 +02:00
evgeny 9bd113054c Defer reachability probes while the first NAT ingress is protected 2026-10-12 18:50:08 +02:00