Commit Graph
1626 Commits
Author SHA1 Message Date
evgeny 38eaae8bb6 Remove measurement IDs and timestamps from NODEINFO profiles 2026-10-12 17:00:38 +02:00
evgeny a96d5926c7 Fix Android external network monitoring and startup readiness
Select frontend network callbacks for auto_sockets=android instead of opening a denied netlink monitor. Preserve monitor descriptor ownership, keep native monitoring failures fatal, and release caller config on failed Android core creation and restart.

Register ConnectivityManager before requesting startup, report readiness after SERVICE_STARTED, and refresh addresses after initialization with serialized updates and generation checks. Add regression coverage for denied netlink, socket failures, address updates, and fd=0 preservation. Record the separate cancellation issue for startup before readiness.

Validation: full check.sh passed, including proxy/burst/load integrations. Clean Android build installed successfully on SM-A525F and Q8; logcat confirms both cores initialized and entered the poll loop with external monitoring and post-start address refresh.
2026-10-12 16:01:26 +02:00
evgeny 72e2c89e3b Fix sockless TCP keepalive and require complete UTUN initialization
Receive keepalive through the owning ETCP link, preserve RX deadlines, and report routing metrics without TUN. Use independent netlink requests and track installed routes for rollback. Reject incomplete resource initialization and release partially constructed cores while preserving caller config ownership.

Validated startup failure and rollback, padded keepalive, standby, STCP traffic, transport lifecycle, dynamic sockets, and daemon startup. Real TUN/netlink checks passed in an isolated Linux network namespace; modified modules passed FreeBSD compilation checks.
2026-10-12 14:24:32 +02:00
evgeny 150b3c3bdb Explain invalid media metadata and codec transitions in logs 2026-10-12 11:26:27 +02:00
evgeny 5c23c10c04 Register audiovisual stream sources and regression target 2026-10-12 01:46:06 +02:00
evgeny 1389bac261 Define FEC protected audiovisual blocks and frame assembly 2026-10-12 01:45:08 +02:00
evgeny 47caca82a1 Expose atomic publication of stream batches 2026-10-12 01:43:31 +02:00
evgeny baeaef3ab1 Preserve logical block boundaries in stream sources 2026-10-12 01:43:21 +02:00
evgeny fdaa20977d Recheck expired down lifetime when the last NCD owner releases it 2026-10-12 01:34:44 +02:00
evgeny 11f1a14063 Retain down ETCP connections while local NCD handles exist 2026-10-12 01:34:44 +02:00
evgeny 0d7f7630b0 Expose actual NCD handle ownership for an ETCP transport 2026-10-12 01:34:44 +02:00
evgeny 6704a18897 Clarify independent RX watchdog and sleep-aware graceful close deadlines 2026-10-12 01:34:44 +02:00
evgeny 24c64967fd Propagate remote UDP link DOWN to the connection expiry timer 2026-10-12 01:34:44 +02:00
evgeny 85b4af5b1d Shorten RX deadline immediately when a sleeping peer wakes 2026-10-12 01:34:44 +02:00
evgeny 2e66cdb122 Preserve cancellation of pending outgoing attempts and size packet fixture correctly 2026-10-12 01:34:44 +02:00
evgeny b57221f6b5 Document ETCP down retention and separate RX lifetime from keepalive sending 2026-10-12 01:34:44 +02:00
evgeny 0ba8380db4 Test incoming ETCP expiry, reconnect, sleep and graceful close 2026-10-12 01:34:44 +02:00
evgeny f090d697c4 Initialize inbound graceful close and honor remote transport ownership 2026-10-12 01:34:44 +02:00
evgeny 3cfdb9e6ec Keep a finite RX deadline while ETCP keepalive sending is suspended 2026-10-12 01:34:44 +02:00
evgeny 034be69ac1 Expire ETCP transports after 30 seconds continuously down 2026-10-12 01:34:44 +02:00
evgeny 9f907d0f31 Stop NAT detectors before service callbacks and verify STUN restart isolation 2026-10-12 01:25:59 +02:00
evgeny 152ebfef48 Release retained STUN port history during final core destruction 2026-10-12 01:24:00 +02:00
evgeny 3d5f009380 Keep STUN port history owned by the core across configuration reloads 2026-10-12 01:24:00 +02:00
evgeny 3735b78328 Verify STUN cache expiry and preserve partial ETCP measurement priority 2026-10-12 01:20:56 +02:00
evgeny f433413c49 Test deduplicated STUN groups and fallback promotion through real ETCP 2026-10-12 01:01:11 +02:00
evgeny 164a3a1f0f Keep connection attempts available for STUN hints and verify signed provenance 2026-10-12 00:58:50 +02:00
evgeny 9aa56e6b56 Show NAT profile origin and recheck interface STUN from control 2026-10-12 00:58:50 +02:00
evgeny 01b0992c39 Select interface STUN fallback only when ETCP lacks independent observers 2026-10-12 00:57:54 +02:00
evgeny 735ac36579 Sign endpoint profile provenance and restrict external-address publication 2026-10-12 00:56:43 +02:00
evgeny 6beae21ec4 Group STUN probes by interface path and refresh independent-port results 2026-10-12 00:55:29 +02:00
evgeny 5c83aac96e Adapt STUN diagnostics to endpoint profiles and helper sockets 2026-10-12 00:03:07 +02:00
evgeny ff69552a61 Measure owned endpoint mapping and inbound reachability separately 2026-10-12 00:01:40 +02:00
evgeny 802134c846 Preserve delivered cursor when stream restarts from a stale supplier 2026-10-12 00:01:40 +02:00
evgeny a877ba8a73 Keep automatic stream recovery active until signed END is drained 2026-10-12 00:01:40 +02:00
evgeny 6b18ad45ea Restore automatic suppliers after proven resynchronization and test unilateral generation changes 2026-10-12 00:01:39 +02:00
evgeny a8cd802aad Resynchronize unilateral peer generations through nonce-bound INFO without epoch ping-pong 2026-10-12 00:01:39 +02:00
evgeny 6749d09025 Enforce distinct manual and automatic upstream ownership 2026-10-12 00:01:39 +02:00
evgeny 0d2d7c913d Keep optimizer diagnostic format strings within repository line limits 2026-10-12 00:01:39 +02:00
evgeny 090964a786 Log provider offers and measured reasons for confirmed stream migrations 2026-10-12 00:01:39 +02:00
evgeny c6bf960eec Isolate monotonic probe scheduling policy for precise boundary checks 2026-10-12 00:01:39 +02:00
evgeny ab4b75986d Reopen closed peer ownership and drive reverse requests from current stream attempts 2026-10-12 00:01:39 +02:00
evgeny 7144bbe694 Verify deferred standby restoration and END-only automatic streams 2026-10-12 00:01:39 +02:00
evgeny 03814b9660 Tie active-mode holds to stream ownership and deliver signed END for empty live sources 2026-10-12 00:01:39 +02:00
evgeny bccf8c6b38 Preserve frontend activity requests while stream owners hold the core active 2026-10-12 00:01:39 +02:00
evgeny aa3fb9cac7 Admit reverse-capable providers without requiring an outgoing-compatible address 2026-10-12 00:01:39 +02:00
evgeny 22342b310c Bound stale offer storage, detect initial DATA stalls and report verified FEC protection 2026-10-12 00:01:39 +02:00
evgeny 2d9616eca5 Refresh matching active path RTT through probes and isolate integration event counters 2026-10-12 00:01:39 +02:00
evgeny 99359f987c Use observed provider quality and keep empty-source queue accounting bounded 2026-10-12 00:01:39 +02:00
evgeny 94c482ed35 Handle empty sources and next-batch tail subscriptions without startup races 2026-10-12 00:01:39 +02:00
evgeny ef48fa2a37 Enable automatic upstream selection for subscriptions with lifecycle-safe cleanup 2026-10-12 00:01:39 +02:00