Commit Graph
2229 Commits
Author SHA1 Message Date
evgeny 539f09004c Use channel member snapshots for desktop participant details 2026-10-25 20:04:59 +01:00
evgeny c832a5d7a5 Unify member snapshots and fix Android member status flicker 2026-10-25 19:29:44 +01:00
evgeny e75bd460b8 Avoid identity reload when removing expired LAN candidates 2026-10-25 18:00:56 +01:00
evgeny 199839b273 Cover socket reuse and TCP LAN recovery and document lifecycle 2026-10-25 17:58:18 +01:00
evgeny 8dd28fb90a Distinguish LAN nonce failures from ordinary unknown devices 2026-10-25 17:55:35 +01:00
evgeny 94a76e569e Respect SOCKS policy and report LAN lookup failures precisely 2026-10-25 17:55:34 +01:00
evgeny 469f95c596 Apply nonce-verified LAN endpoints to offline NCD transports 2026-10-25 17:47:08 +01:00
evgeny 88c2d7a4e3 Share LAN interface matching for socket announcements and NCD 2026-10-25 17:44:52 +01:00
evgeny e8713e7a2c Load known node identities for verified LAN candidates 2026-10-25 17:43:21 +01:00
evgeny 28c447370a Add signed LAN endpoint announcements and nonce proofs 2026-10-25 17:42:40 +01:00
evgeny c26b626c35 Handle comments consistently in desktop socket protocol settings 2026-10-25 16:35:54 +01:00
evgeny 7bcdccc4d6 Verify autosocket protocol modes across IPv4 and IPv6 lifecycle 2026-10-25 16:35:54 +01:00
evgeny ae85423e39 Add automatic socket protocol selector to desktop settings 2026-10-25 16:35:54 +01:00
evgeny 556f6e0b9e Add selectable protocols for automatic transport sockets 2026-10-25 16:35:54 +01:00
evgeny 270b9fcf80 Merge remote-tracking branch 'origin/master' 2026-10-25 16:30:55 +01:00
evgeny 288b8091ce Document targeted recovery and retain scheduler diagnostics 2026-10-25 16:26:14 +01:00
evgeny 46f6c03147 Keep requests queued by callbacks for the next scheduler batch 2026-10-25 16:19:40 +01:00
evgeny 2eade0a7c0 Scope deferred chat synchronization to channel and peer 2026-10-25 16:11:11 +01:00
evgeny 0e17756e19 Show stream playback buffer chains on desktop and Android
Send coalesced per-hop telemetry every 200 ms ahead of video DATA using the shared ETCP transport. Measure pending frames before ETCP handoff, retain stale and unavailable node values, and display the worst path with playback tempo.

Bump stream wire protocol to v7. Validate with 187 core tests, 21 desktop player tests, two Android indicator tests, and an Android APK build.
2026-10-25 15:21:23 +01:00
evgeny 5b5221189c Buffer stream PCM before playback and recover underruns without resets 2026-10-25 12:51:19 +01:00
evgeny c3cf86b9e0 Recover streams after five seconds and start from complete keys
Preserve queued media under backpressure, advertise retained keyframe ranges in stream wire v6, and reopen stalled subflows without resetting playback.

Cover large fragmented keys, sustained slow delivery, missing subflows, buffer eviction and stale bootstrap snapshots in integration regressions.
2026-10-25 12:03:49 +01:00
evgeny 4a785c2598 Improve stream recovery, delivery diagnostics and buffer indicators
Preserve essential FEC parts under pressure, coordinate stale-data gaps and reopen source subflows in parallel after transport failures.

Add per-peer network and playback diagnostics, Android and desktop buffer indicators, and regression coverage for Wi-Fi switching and congestion.
2026-10-25 01:18:02 +02:00
evgeny b7d74d8f87 Verify every NCD control ID byte and clarify new-socket scope 2026-10-24 20:27:57 +02:00
evgeny 9844fdefcb Align automatic socket documentation with shared NCD link matching 2026-10-24 20:24:22 +02:00
evgeny a353797edb Specify NCD ownership callbacks matching and fixed little-endian control wire 2026-10-24 20:22:45 +02:00
evgeny 702389d8d9 Retain NCD entry and transport through synchronous CLOSE callbacks 2026-10-24 20:18:15 +02:00
evgeny 772c0728e1 Use one NCD address matcher for opens updates and new sockets 2026-10-24 20:15:30 +02:00
evgeny b23d5e6047 Unify NCD opens and retain owners across failed startup and callbacks 2026-10-24 20:15:30 +02:00
evgeny 4695fe4371 Register NCD transport events atomically and reuse ETCP close lifecycle 2026-10-24 20:15:30 +02:00
evgeny 28c951ed9e Reject stale NCD notifications and validate complete control frames 2026-10-24 20:15:30 +02:00
evgeny c311bb7a1f Prevent deferred CM readiness from restarting cancelled file transfers 2026-10-24 20:14:58 +02:00
evgeny b387c4b127 Preserve unowned member download temporaries on refusal and cancellation 2026-10-24 20:14:29 +02:00
evgeny 6d6afb4faa Align FULL and inline loss counters in dummynet documentation 2026-10-24 19:57:24 +02:00
evgeny e996e09f6e Specify dummynet datagram timing reconfiguration and filter ownership contracts 2026-10-24 19:57:24 +02:00
evgeny 0df339c384 Verify inline filters with real UDP delivery and independent ETCP teardown 2026-10-24 19:57:24 +02:00
evgeny 79e37f64f8 Document member files audit findings and verified fixes 2026-10-24 18:47:06 +02:00
evgeny 4d729a2ff0 docs(member-files): align lifecycle and receipt retry behavior 2026-10-24 18:47:06 +02:00
evgeny 4f96926f6b docs(member-files): complete public request and transfer contracts 2026-10-24 18:47:06 +02:00
evgeny c1da55ad87 docs(member-files): clarify storage lifecycle and internal owners 2026-10-24 18:47:06 +02:00
evgeny f7b064a11a docs(member-files): specify wire codec and worker ownership 2026-10-24 18:47:06 +02:00
evgeny 41f0aa2439 fix(member-files): reject local FIFO without blocking disk worker 2026-10-24 18:47:06 +02:00
evgeny 488577ac0e test(member-files): verify timed replay and bulk removal 2026-10-24 18:47:06 +02:00
evgeny 4d40b6f5f7 fix(member-files): bound busy retries by receipt lifetime 2026-10-24 18:47:06 +02:00
evgeny 2d8384830d test(member-files): cover bulk mutations and lost result replay 2026-10-24 18:47:06 +02:00
evgeny 0c8e9eef3c fix(member-files): retry busy mutations within replay guarantees 2026-10-24 18:47:06 +02:00
evgeny 20b4975d57 fix(member-files): prevent restart after early transfer cancellation 2026-10-24 18:47:06 +02:00
evgeny 0f42f92feb fix(member-files): clean up only owned download temporaries 2026-10-24 18:47:06 +02:00
evgeny a198cfb9e3 Bind inline dummynet filters to UDP link lifetime and report failures 2026-10-24 17:33:59 +02:00
evgeny 83bf76dd41 Release borrowed send-hook owners before ETCP link teardown 2026-10-24 17:33:59 +02:00
evgeny 36c096c4e9 Make UDP dummynet configuration and resource failures recoverable 2026-10-24 17:33:59 +02:00