evgeny
f1da7d7ee8
Align desktop history reads with Merkle schema and fix PM test setup
2026-10-26 22:11:39 +01:00
evgeny
cd0329b301
Cover deleted PM composer state and log GUI deletion failures
2026-10-26 22:11:39 +01:00
evgeny
8ccad3b56b
Test PM deletion through the desktop window and history snapshot generations
2026-10-26 22:11:39 +01:00
evgeny
e88f3ce46a
Finish PM composer cleanup and skip history requests after shutdown
2026-10-26 22:11:39 +01:00
evgeny
f83033d3a1
Guard Android PM history and pending deletion across asynchronous sends
2026-10-26 22:11:39 +01:00
evgeny
5778c8aa0a
Translate desktop PM deletion confirmation and errors
2026-10-26 22:11:39 +01:00
evgeny
6382c794ea
Complete desktop PM deletion after the core transaction result
2026-10-26 22:11:39 +01:00
evgeny
4089944673
Guard desktop PM sends and history by conversation generation
2026-10-26 22:11:39 +01:00
evgeny
e10354a0ac
Keep PM composer work bound to its history generation
2026-10-26 22:11:39 +01:00
evgeny
df80c43a57
Offer conversation deletion in the desktop PM context menu
2026-10-26 22:11:39 +01:00
evgeny
8e3c536cbb
Bridge desktop DM deletion requests and results
2026-10-26 22:11:39 +01:00
evgeny
f0b7b22f92
Read visible DM generations in the desktop conversation list
2026-10-26 22:11:39 +01:00
evgeny
07f63c3047
Document audited call video and session contracts
2026-10-26 21:54:18 +01:00
evgeny
f521bb37f4
fix(call): align audio frontend ownership with core lifecycle
...
Keep the borrowed audio provider on UTUN_INSTANCE across chat service restarts.
Attach and detach Android voice from the core worker and reject DSP startup
after detach. Preserve TX owner epochs, pending slots and foreign-instance RX
isolation. Remove the unused cross-thread online API and keep its check local
to call.c.
Add eight lifecycle regressions with real cores and the Android host bridge.
Audit public call, DSP, clock, headless and desktop audio contracts and record
the findings and validation scope.
Validation: voice/desktop 38/38, four native call suites, native and both Android
ABI builds, full check 204/204 plus proxy/burst/load. JVM results remain Gradle
UP-TO-DATE (155 app and 15 router). No hardware runtime validation.
2026-10-26 20:22:46 +01:00
evgeny
2e8885548b
docs(call): clarify Android output and Bluetooth proxy ownership
2026-10-26 20:21:58 +01:00
evgeny
83df895532
build(android): run router lifecycle regressions with app unit tests
2026-10-26 20:21:58 +01:00
evgeny
f724703156
test(android): cover Bluetooth router teardown and callback races
2026-10-26 20:21:58 +01:00
evgeny
34133e4f6f
test(android): isolate router application and logging fixtures
2026-10-26 20:21:58 +01:00
evgeny
8cbadd821f
test(android): model Bluetooth proxy ownership and device callbacks
2026-10-26 20:21:58 +01:00
evgeny
161422b2cd
test(android): add isolated host context and clock fixtures
2026-10-26 20:21:58 +01:00
evgeny
de83d7bbf4
fix(android): own Bluetooth proxies across router lifecycle
2026-10-26 20:21:58 +01:00
evgeny
79b06846c6
Test Android bridge mute after real AEC and AGC across unmute
2026-10-26 17:14:18 +01:00
evgeny
000b28027c
Preserve Android raw capture through AEC and apply mute before Opus
2026-10-26 17:14:18 +01:00
evgeny
bdaff406be
Forward Android frame mute through the native capture bridge
2026-10-26 17:14:18 +01:00
evgeny
f0df3d8848
Make stale TX regressions assert observable behavior first
2026-10-26 14:57:24 +01:00
evgeny
bbc9f750c3
Cover call audio TX ownership across lifecycle transitions
2026-10-26 14:57:24 +01:00
evgeny
962a2df3f8
Add local channel deletion to desktop channel settings
2026-10-26 10:47:39 +01:00
evgeny
d67e0b0c23
Report desktop startup failures and validate generated configs
2026-10-26 10:12:30 +01:00
evgeny
9ab9d01907
Fix Android config storage limits for the strict parser
2026-10-26 10:12:30 +01:00
evgeny
8e74619501
Make chat joins atomic and test invitation lifecycle failures
2026-10-26 09:19:35 +01:00
evgeny
8b0002e489
Disable UTUN by default in chat frontends and retain core bootstrap transports
2026-10-25 22:10:06 +01:00
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
f276fda411
Restore Android core activity after internal restart
2026-10-25 17:20:42 +01:00
evgeny
c26b626c35
Handle comments consistently in desktop socket protocol settings
2026-10-25 16:35:54 +01:00
evgeny
fc8a06547d
Test automatic socket protocol configuration and Android port reuse
2026-10-25 16:35:54 +01:00
evgeny
b1a07df606
Translate automatic socket protocol settings
2026-10-25 16:35:54 +01:00
evgeny
9d465bce16
Add Android autosocket protocol selection to network settings
2026-10-25 16:35:54 +01:00
evgeny
eda65ece52
Generate Android autosockets per selected protocol and retain ports
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
f3bc5acacc
Persist automatic socket protocols in desktop configuration
2026-10-25 16:35:54 +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
677f79881c
Diagnose stream audio underruns and fixture timing jitter
2026-10-25 12:30:30 +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
51c667edd8
Distinguish early ACK packets from legitimate batched entries
2026-10-24 14:43:03 +02:00
evgeny
055ffa27b2
Add offline multipath charts and count timestamped ACKs
2026-10-24 14:43:03 +02:00
evgeny
cecbc682a0
Move stream start and stop into the title bar
2026-10-22 18:13:43 +02:00
evgeny
6a1c289ab2
Keep Bluetooth SCO active for radio reception without capture
2026-10-22 17:59:11 +02:00