Commit Graph
1767 Commits
Author SHA1 Message Date
evgeny 00666499fe android: start call capture before playback setup 2026-10-01 02:12:44 +03:00
evgeny 5487bc8c20 call: suppress loss tone until first received PCM 2026-10-01 02:08:17 +03:00
evgeny a3f6b6e86e docs: outline simple Android call startup improvements 2026-10-01 02:00:56 +03:00
evgeny 6f66df61f7 docs: record false audio loss tone during call startup 2026-10-01 01:58:20 +03:00
evgeny 72b5a9887f chatgui: measure duplex audio stalls and record SM call evidence 2026-10-01 01:36:34 +03:00
evgeny 076cc3c617 docs: record full recovery checks and root socket test 2026-10-01 01:19:37 +03:00
evgeny 91a69b939c docs: record conn_mgr recovery validation and check timeout limitation 2026-10-01 01:15:15 +03:00
evgeny 969c085085 tests: resend withdrawn relay advertisements during recovery 2026-10-01 01:09:15 +03:00
evgeny 426fc2f4e8 conn_mgr: verify route loss and document handle lifetime recovery 2026-10-01 01:06:56 +03:00
evgeny 464575ef44 conn_mgr: exercise persistent retries with valid signed node updates 2026-10-01 01:01:49 +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 e914a1bdc1 Improve Android member details contrast 2026-09-30 20:13:25 +03:00
evgeny b36c685cfa Show ongoing Android calls on the lock screen 2026-09-30 19:42:12 +03:00
evgeny 3c5c9604b3 Keep Android calls active independently of screen and UI 2026-09-30 19:12:04 +03:00
evgeny fb37ca747a 1 2026-09-30 17:37:13 +03:00
evgeny 2d21c53b4b Improve call buffering, CM handle lifecycle and radio PTT controls 2026-09-30 17:31:53 +03:00
evgeny 752c1f140c Add unified Android dark theme and improve UI contrast 2026-09-30 13:41:45 +03:00
evgeny db3cacd33e Rename Android app to vibechat 2026-09-30 13:10:09 +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 745ec3dbd2 android radio: preserve output route on reconfigure, link input/output settings 2026-09-29 22:35:08 +03:00
evgeny 15958a078e android: self-managed Telecom ConnectionService for call audio routing 2026-09-29 21:26:24 +03:00
evgeny 61bf235ef4 radio: PTT double-tap latch + single-tap off (in-chat & overlay); compressor initial gain = mid-range 2026-09-29 20:00:28 +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 d8cbe2e589 Add proxy bug list and lightsout game (desktop + Android) 2026-09-29 12:19:23 +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 7a41fcf512 Notify TCP writers when the final synchronous send drains 2026-09-29 03:57:15 +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
evgeny e3caf15f32 Guard routing loops and reconcile blocked transit against current paths
Track visited nodes outside the signed body for all routed packet types. Recheck queued transit routes without losing FIFO priority, reject unknown-group transit, and suppress BGP announcements caused only by RTT jitter.

Document routing rules and wire format. Validate graph churn, REINIT, encrypted transit, malformed paths, loop drops and queue cleanup; full suite: 106 passed, 1 skipped, plus proxy integration and sanitizer checks.
2026-09-28 15:36:47 +03:00
evgeny fa9e102271 Preserve config string terminator when preparing key updates 2026-09-28 15:16:57 +03:00
evgeny 39ce249361 Prune unconfirmed BGP paths and restart stalled exchanges 2026-09-28 14:58:13 +03:00
evgeny b76e6553bc Reconcile BGP paths and advertise selected routes per neighbor 2026-09-28 14:37:44 +03:00