evgeny
1cdead18de
Expose bounded DM history snapshots with text and media delivery state
2026-10-01 15:59:38 +03:00
evgeny
b47918fad5
Keep media publication and durable deletion off the event loop
2026-10-01 15:57:30 +03:00
evgeny
55c9d79a01
Integrate atomic media registration and orderly transfer/worker shutdown
2026-10-01 15:53:53 +03:00
evgeny
d7a12b24bf
Coordinate offline DM media custody and durable deletion on supernodes
2026-10-01 15:52:05 +03:00
evgeny
41fc5902be
Implement durable DM downloads, media-node custody, quota and expiry
2026-10-01 15:47:05 +03:00
evgeny
e47c7fb2ac
Allow file owners to revoke active transfers on custody expiry or deletion
2026-10-01 15:42:54 +03:00
evgeny
84c148acff
Prepare and publish target-encrypted DM files with exact media receipts
2026-10-01 15:42:02 +03:00
evgeny
d559cbf473
Add configurable seven-day DM custody TTL and reserved storage quota
2026-10-01 15:36:31 +03:00
evgeny
5e9a9059c8
Bind signed file descriptors to atomic DM enqueue and receive
2026-10-01 15:28:40 +03:00
evgeny
27fa3a4812
Define independent DM media metadata, receipts and custody contracts
2026-10-01 15:27:44 +03:00
evgeny
3d0ab35efe
Register file transfer and DM media services in the common core
2026-10-01 15:22:10 +03:00
evgeny
f39ba840b8
Add bounded signed file transfers with per-operation CM ownership
2026-10-01 15:21:44 +03:00
evgeny
0e0f611d3c
Check atomic DM enqueue rollback and explain sequence conflicts
2026-10-01 14:41:33 +03:00
evgeny
467d2e7605
Prepare DM media as authenticated records using target key
2026-10-01 14:33:45 +03:00
evgeny
10de4f1c71
Commit DM activity timestamps together with message state
2026-10-01 14:28:47 +03:00
evgeny
794d7b70f3
Authorize DM custody by signed group role instead of NAT type
2026-10-01 14:27:54 +03:00
evgeny
3cdb3e6580
Create DM router streams before checking queue capacity
2026-10-01 14:24:18 +03:00
evgeny
5800902a42
Deliver offline DM through durable supernode custody
2026-10-01 14:18:50 +03:00
evgeny
cc072cceb2
Persist DM outbox and verify exact delivery receipts
2026-10-01 14:14:46 +03:00
evgeny
67bbf80769
Fix DM CCM length setup and separate media nonces
2026-10-01 14:04:25 +03:00
evgeny
50e3db81ea
Separate playback backlog from adaptive call reserve
2026-10-01 02:49:35 +03:00
evgeny
d8745fd303
Measure call jitter from media delivery timestamps
2026-10-01 02:48:53 +03:00
evgeny
5487bc8c20
call: suppress loss tone until first received PCM
2026-10-01 02:08:17 +03:00
evgeny
426fc2f4e8
conn_mgr: verify route loss and document handle lifetime recovery
2026-10-01 01:06:56 +03:00
evgeny
a65ef30d78
conn_mgr: resume recovery when local sockets change
2026-10-01 00:51:17 +03:00
evgeny
8f5f2b089c
conn_mgr: keep demand alive across bounded recovery attempts
2026-10-01 00:50:44 +03:00
evgeny
111432aa64
conn_mgr: race connection probes and report call path with correct RTT
2026-10-01 00:42:47 +03:00
evgeny
1c51df039f
Fix call gap tone to follow 500ms of missing jitter PCM
2026-09-30 21:14:37 +03:00
evgeny
9e3a417059
Synchronize standby transitions and immediate keepalive phase announcements
2026-09-30 20:42:40 +03:00
evgeny
3c5c9604b3
Keep Android calls active independently of screen and UI
2026-09-30 19:12:04 +03:00
evgeny
2d21c53b4b
Improve call buffering, CM handle lifecycle and radio PTT controls
2026-09-30 17:31:53 +03:00
evgeny
7ebc282eb2
Prioritize supernodes in invites and update chat background and ringtone
2026-09-30 12:56:59 +03:00
evgeny
0d44ada922
Improve Android radio capture lifecycle, VAD and PTT controls
2026-09-30 12:25:42 +03:00
evgeny
52ffb91101
Fix TCP proxy use-after-free during synchronous close
2026-09-30 10:43:02 +03:00
evgeny
556b0bc7b7
call/radio: mic AGC compressor + selectable input device; proximity lock
2026-09-29 19:34:23 +03:00
evgeny
f12f61d7ee
call: add SpeexDSP AEC (acoustic echo cancellation) for desktop + Android
2026-09-29 17:01:30 +03:00
evgeny
1176411b79
radio: Silero VAD + auto-PTT; chatgui/android: app icon and background
2026-09-29 16:19:25 +03:00
evgeny
74ca98b38f
proxy: rename pcb guard, dedupe abort; tasks: FIN_WAIT_2 leak
2026-09-29 13:52:35 +03:00
evgeny
961a234d7d
proxy: detach lwIP pcb on local close, guard abort against freed pcb
...
При half-close (exit закрылся первым, браузер держит соединение) pcb уходил в
TIME_WAIT, а conn_finish ждал flow.fin_sent (доставку FIN в exit) — при backpressure
это не наступало, pc->pcb оставался висячим. Таймер TIME_WAIT освобождал pcb без
err_cb, и CLOSE_ALL давал double free. Теперь pcb отсоединяется по завершении
локальной стороны, а tcp_abort/tcp_close защищены проверкой memory_pool_is_freed.
2026-09-29 13:37:00 +03:00
evgeny
a73ae13df4
lwip/proxy: trace PCB lifetime in debug category, drop old noisy debug
2026-09-29 13:18:18 +03:00
evgeny
e1946b208d
Preserve proxy TCP streams across connect, backpressure and FIN
2026-09-29 04:00:34 +03:00
evgeny
09bc8c35c5
Release TUN proxy connections when lwIP aborts their PCB
2026-09-29 03:59:30 +03:00
evgeny
f19ff11b36
Scope TCP proxy streams and restart messages to their peer
2026-09-29 03:58:53 +03:00
evgeny
268243feeb
Isolate datagram proxy state and replies between instances and peers
2026-09-29 03:58:14 +03:00
evgeny
4be1e62251
Parse IPv4 options and reject malformed TUN proxy packets
2026-09-29 03:57:37 +03:00
evgeny
10b66e2ad0
Validate SOCKS5 authentication and destination addresses
2026-09-29 03:57:21 +03:00
evgeny
518df33b0e
Fix UDP and ICMP packet construction at the TUN boundary
2026-09-29 03:56:55 +03:00
evgeny
fdec5b65c5
Add independent radio compressor and Android audio controls
2026-09-29 03:37:47 +03:00
evgeny
ce1f23fe46
Radio: stereo capture/playback with mono fallback; CAMCORDER source; bump RADIO_MAX_OPUS
...
- stereo capture: Android AudioRecord stereo (CAMCORDER source for stereo,
voice sources fall back to CAMCORDER) + desktop separate miniaudio
capture/playback devices (no asymmetric duplex)
- Opus stereo encode/decode, voice_jitter stereo (per-channel frame_size,
slot-based SoundTouch)
- radio_audio_start takes explicit capture_channels (stereo->mono fallback)
- RADIO_MAX_OPUS 256->512 (128kbps stereo frames up to 320B)
- radio_capture_stereo setting + desktop radio settings UI (opus mode/bitrate,
capture stereo)
- radio_send_to send stats logging (etcp_send ok/fail per second)
2026-09-29 02:31:41 +03:00
evgeny
331970a121
Radio: Opus mode/bitrate + mic source + PTT release tail; drop online status from member JSON
2026-09-29 00:40:10 +03:00