-
017c371611
T3.4: Tier D per-codec payload size sanity
Siavash Sameni
2026-05-12 06:24:40 +04:00
-
3220bd6151
fix: T3.2 status board — Committed → Pending Review
Siavash Sameni
2026-05-12 06:14:07 +04:00
-
e73f8a7150
T3.3: SignalMessage version field
Siavash Sameni
2026-05-12 06:08:31 +04:00
-
1b4f7b0772
T3.2: Document timestamp_ms monotonic across rekey + test
Siavash Sameni
2026-05-11 21:19:03 +04:00
-
f3398adb95
T3.1: RoomManager concurrency — Arc<RwLock<Room>> per room
Siavash Sameni
2026-05-11 21:10:51 +04:00
-
54c1a35186
T2.3-T2.6: BWE guard, relay conformance Tier A/B/C, Prometheus metrics
Siavash Sameni
2026-05-11 20:50:01 +04:00
-
3de56cf1f9
T2.2: BandwidthEstimator with cwnd/REMB target_send_bps
Siavash Sameni
2026-05-11 19:16:25 +04:00
-
fe1f9484bd
T2.1: Add SignalMessage::TransportFeedback
Siavash Sameni
2026-05-11 19:06:45 +04:00
-
0ef1f574ff
T1.8: Per-stream anti-replay window with configurable size
Siavash Sameni
2026-05-11 16:56:09 +04:00
-
b1c5837495
T1.7: Move QualityReport trailer inside AEAD payload
Siavash Sameni
2026-05-11 16:41:21 +04:00
-
6f81487778
T1.6: Protocol version negotiation in handshake
Siavash Sameni
2026-05-11 15:52:18 +04:00
-
5cdb50160a
T1.5.2: Workspace clippy hygiene + document pre-existing debt
Siavash Sameni
2026-05-11 12:57:41 +04:00
-
30d26fc7f6
T1.5.1: Remove unwrap() from encode_compact
Siavash Sameni
2026-05-11 12:57:35 +04:00
-
c93d302656
T1.5: Migrate emit/parse sites to v2 wire format
Siavash Sameni
2026-05-11 12:36:45 +04:00
-
9680b6ff34
T1.4.1: Add rustdoc on MiniHeaderV2 and MiniFrameContextV2 public items
Siavash Sameni
2026-05-11 11:38:04 +04:00
-
6b15b8f97c
T1.1.2: Address review — fix remaining stale 272 audio tests references
Siavash Sameni
2026-05-11 11:35:15 +04:00
-
6385b93391
T1.2.1: Add rustdoc on MediaType variants and methods
Siavash Sameni
2026-05-11 11:33:42 +04:00
-
6eb94f079d
T1.1.1: Address review — add rustdoc on impl MediaHeaderV2 constants and methods
Siavash Sameni
2026-05-11 11:31:42 +04:00
-
5580b794a4
T1.1.2: Refresh stale test-count figures in docs
Siavash Sameni
2026-05-11 11:29:13 +04:00
-
7c9ede9227
T1.1.1: Add rustdoc on MediaHeaderV2 fields
Siavash Sameni
2026-05-11 11:22:06 +04:00
-
e8866c6632
T1.4: Add v2 MiniHeader with seq_delta
Siavash Sameni
2026-05-11 11:17:42 +04:00
-
8c6e88ea68
T1.3: Widen CodecId wire representation to u8
Siavash Sameni
2026-05-11 11:11:42 +04:00
-
ffb92237be
T1.2: Add MediaType enum
Siavash Sameni
2026-05-11 11:09:05 +04:00
-
6af0539a72
T1.1: Add v2 MediaHeader type
Siavash Sameni
2026-05-11 10:58:05 +04:00
-
217567383d
fix(ui): timestamps in logs, proper call debounce, no cross-calling
Siavash Sameni
2026-04-14 19:16:20 +04:00
-
98ed981805
fix(ui): self-call prevention, debounce, codec in stats
Siavash Sameni
2026-04-14 19:10:31 +04:00
-
01a3133544
fix(ui): drawer buttons, stats fields, nicknames
Siavash Sameni
2026-04-14 19:00:09 +04:00
-
25471c694f
feat(ui): voice drawer replaces full-screen call UI
Siavash Sameni
2026-04-14 18:47:40 +04:00
-
a058a83c91
feat(ui): relay list management in settings
Siavash Sameni
2026-04-14 18:37:58 +04:00
-
9b8013ba7f
merge main: PresenceList direct send fix
Siavash Sameni
2026-04-14 18:36:01 +04:00
-
-
-
-
defd8eab07
fix(signal): send PresenceList directly to new client after ack
Siavash Sameni
2026-04-14 18:20:37 +04:00
-
cc23e829b2
feat(ui): handle PresenceList in lobby — show online users
Siavash Sameni
2026-04-14 18:13:45 +04:00
-
18c204c1ff
merge main: PresenceList signal for lobby
Siavash Sameni
2026-04-14 18:13:15 +04:00
-
-
-
-
1120c7b579
feat(signal): PresenceList broadcast for lobby user discovery
Siavash Sameni
2026-04-14 18:12:47 +04:00
-
7e7391fdbb
feat(ui): lobby-first main.ts rewrite for experimental-ui
Siavash Sameni
2026-04-14 17:52:51 +04:00
-
aa0362f318
feat(ui): lobby-first HTML/CSS layout for experimental-ui
Siavash Sameni
2026-04-14 17:43:15 +04:00
-
-
bb23976076
feat(quality): upgrade negotiation + asymmetric quality signals (#28, #29, #30)
Siavash Sameni
2026-04-14 17:25:34 +04:00
-
18e5e75f33
feat(analyzer): encrypted payload decoding in replay mode (#17)
Siavash Sameni
2026-04-14 17:07:43 +04:00
-
488efcb614
feat(ui): birthday attack toggle in settings (default off)
Siavash Sameni
2026-04-14 16:54:22 +04:00
-
8c360186df
feat(nat): wire birthday attack end-to-end into connect flow
Siavash Sameni
2026-04-14 16:50:11 +04:00
-
f06f9073ae
feat(nat): birthday attack module + HardNatBirthdayStart signal (#86, #87)
Siavash Sameni
2026-04-14 16:44:36 +04:00
-
6c49d7436f
feat(ui): direct-only mode setting (no relay fallback)
Siavash Sameni
2026-04-14 16:04:45 +04:00
-
1de280fe04
fix(nat): working NAT tickle + smart filter debug + timeout diags
Siavash Sameni
2026-04-14 15:58:13 +04:00
-
bc6d327ebb
feat(nat): smart candidate filtering + acceptor NAT tickle + 4s timeout
Siavash Sameni
2026-04-14 15:42:02 +04:00
-
c478224d67
fix(ui): remove buffer clear that wiped connect events
Siavash Sameni
2026-04-14 15:25:13 +04:00
-
16dcc75514
fix(ui): move buffer clear from call-end to call-start
Siavash Sameni
2026-04-14 15:17:16 +04:00
-
db5751985e
fix(ui): replace findLast with reverse().find() for WebView compat
Siavash Sameni
2026-04-14 15:06:07 +04:00
-
c0dd6c06ff
feat(debug): per-candidate dial diagnostics in dual-path race
Siavash Sameni
2026-04-14 12:16:34 +04:00
-
6805caae0e
fix(ui): P2P badge showing stale status from previous call
Siavash Sameni
2026-04-14 12:02:06 +04:00
-
5a03da72d3
feat(ui): selectable NAT detection mode + netcheck Tauri command
Siavash Sameni
2026-04-14 11:43:17 +04:00
-
e3e63a40a0
feat(nat): wire hard NAT port prediction into call flow (#85)
Siavash Sameni
2026-04-14 11:39:40 +04:00
-
7b4bce69d5
docs: update all docs for hard NAT detection + relay wiring
Siavash Sameni
2026-04-14 11:33:12 +04:00
-
ec1bdf3cd5
feat(nat): hard NAT port allocation detection + prediction + HardNatProbe signal (#29)
Siavash Sameni
2026-04-14 11:29:35 +04:00
-
ee14862376
docs: add PRD for hard NAT traversal (port prediction + birthday attack)
Siavash Sameni
2026-04-14 11:20:19 +04:00
-
f83361895e
docs: add PRDs for Phase 8 Tailscale-inspired features
Siavash Sameni
2026-04-14 11:08:46 +04:00
-
0857d190ed
chore: rename legacy Android build script to prevent accidental use
Siavash Sameni
2026-04-14 10:42:23 +04:00
-
5d431c0721
fix(android): restore tauri::Emitter import for Docker builder toolchain
Siavash Sameni
2026-04-14 10:34:23 +04:00
-
8fcf1be341
feat(nat): Tailscale-inspired STUN/ICE + port mapping + mid-call re-gathering (#28)
Siavash Sameni
2026-04-14 10:17:17 +04:00
-
9377a9009c
feat(quality): bandwidth probing for upward adaptive quality (#10)
Siavash Sameni
2026-04-13 16:47:21 +04:00
-
4471797edf
docs: update all PRDs and PROGRESS to current state (2026-04-13)
Siavash Sameni
2026-04-13 16:40:56 +04:00
-
425c67a08a
feat(analyzer): replay, HTML report, encrypted decode stub (#15, #16, #17)
Siavash Sameni
2026-04-13 16:31:28 +04:00
-
88ca3e099a
feat: wzp-analyzer binary — protocol analyzer with TUI (#13, #14, #15)
Siavash Sameni
2026-04-13 16:26:46 +04:00
-
1e82811cc1
feat(p2p): adaptive quality on direct calls (#23)
Siavash Sameni
2026-04-13 16:14:06 +04:00
-
81b5522942
refactor: clap CLI parser, safety docs, dead code docs, cross-refs
Siavash Sameni
2026-04-13 15:40:49 +04:00
-
d539a6dfb9
test(federation): 29 tests for federation.rs (was 0), engine dedup PRD
Siavash Sameni
2026-04-13 15:35:04 +04:00
-
ba12aae439
refactor: extract shared engine helpers, federation clone-before-send, constants
Siavash Sameni
2026-04-13 15:22:44 +04:00
-
fdb78e08bd
docs: full codebase refactoring audit with prioritized suggestions
Siavash Sameni
2026-04-13 12:35:59 +04:00
-
3a51db998a
docs: relay concurrency refactor guide + PRD update for DashMap
Siavash Sameni
2026-04-13 12:27:26 +04:00
-
a52b011fb5
feat(relay): replace global Mutex<RoomManager> with DashMap sharding
Siavash Sameni
2026-04-13 12:17:57 +04:00
-
2514151a89
docs: PRD for relay concurrency — per-room lock sharding
Siavash Sameni
2026-04-13 12:01:21 +04:00
-
f265fd772d
docs: relay concurrency model, Opus6k fix, build script fixes
Siavash Sameni
2026-04-13 11:54:37 +04:00
-
9ae9441de4
fix(audio): check capture ring available before read (fixes Opus6k choppy)
Siavash Sameni
2026-04-13 11:46:15 +04:00
-
d9e7e72978
docs: update PROGRESS, PRDs for completed tasks #9, #11, #12, #27
Siavash Sameni
2026-04-13 11:34:01 +04:00
-
8ff0c548a7
fix(audio): update frame_samples on codec profile switch, fix buf sizing
Siavash Sameni
2026-04-13 11:33:02 +04:00
-
f17420aa98
fix(build): sync keystores from persistent cache before build
Siavash Sameni
2026-04-13 11:11:28 +04:00
-
d424515542
feat: 5-tier quality classification, QualityDirective handling, debug tap stats
Siavash Sameni
2026-04-13 10:23:48 +04:00
-
ea5fc17c34
fix(relay): debug tap signal logging, dual_path test regression, PRD updates
Siavash Sameni
2026-04-13 09:54:52 +04:00
-
1a7dd935ee
fix(build): add zipalign + apksigner signing to build.sh
Siavash Sameni
2026-04-12 20:13:20 +04:00
-
a7c2261b70
fix(build): clean stale APKs before build, prefer release APK on upload
Siavash Sameni
2026-04-12 20:08:06 +04:00
-
eca0bb7531
Merge branch 'opus-DRED-v2'
Siavash Sameni
2026-04-12 19:57:35 +04:00
-
-
d249b32ee5
test+docs: add tests for QualityDirective, ParticipantQuality; update docs
opus-DRED-v2
Siavash Sameni
2026-04-12 19:56:46 +04:00
-
22045bc5e6
feat: adaptive quality in desktop, relay quality directive, Oboe state polling
Siavash Sameni
2026-04-12 19:54:04 +04:00
-
766c9df442
feat(dred): continuous DRED tuning, PMTUD, extended Opus6k window
Siavash Sameni
2026-04-12 19:38:37 +04:00
-
6f43415285
merge opus-DRED-v2 into main
Siavash Sameni
2026-04-12 17:41:57 +04:00
-
-
24cc74d93c
fix(audio): clear BT SCO communication device on call end
Siavash Sameni
2026-04-12 17:40:44 +04:00
-
300ea66d13
docs: update DESIGN, ARCHITECTURE, PRDs, PROGRESS for BT + network + build changes
Siavash Sameni
2026-04-12 17:39:59 +04:00
-
114d69e488
fix: use tracing::warn! instead of bare warn! in engine.rs
Siavash Sameni
2026-04-12 17:31:12 +04:00
-
15c237ceea
fix(audio): defer MODE_IN_COMMUNICATION to call start, restore on end
Siavash Sameni
2026-04-12 17:29:59 +04:00
-
a37c8b30fe
fix(native): add missing bt_active field to stall detector config
Siavash Sameni
2026-04-12 17:25:11 +04:00
-
137fe5f084
fix(bluetooth): BT SCO mode skips 48kHz + VoiceCommunication on capture
Siavash Sameni
2026-04-12 17:23:19 +04:00
-
5dfb5b3581
fix(bluetooth): use Shared mode for Oboe + delay restart for BT route
Siavash Sameni
2026-04-12 17:14:06 +04:00
-
fd0ccf8e99
fix(bluetooth): enable Oboe sample rate conversion for BT SCO (8/16kHz)
Siavash Sameni
2026-04-12 17:08:48 +04:00
-
2d4948a7b3
fix(bluetooth): add missing &[] arg to getAvailableCommunicationDevices JNI call
Siavash Sameni
2026-04-12 17:02:57 +04:00
-
19703ff66c
fix(bluetooth): use setCommunicationDevice API on Android 12+
Siavash Sameni
2026-04-12 17:01:33 +04:00
-
7e8dc400dc
fix(bluetooth): wait for SCO link before Oboe restart + detect A2DP devices
Siavash Sameni
2026-04-12 16:46:56 +04:00
-
a798634b3d
fix(signal): add call_id to Hangup — prevents stale hangup killing new calls
Siavash Sameni
2026-04-12 16:39:21 +04:00
-
d89376016a
fix(build): sign release APKs with project keystore (wzp-release.jks)
Siavash Sameni
2026-04-12 16:21:38 +04:00
-
678695776e
fix(build): correct APK output path — target/ is mounted from cache dir
Siavash Sameni
2026-04-12 16:10:03 +04:00
-
4c1ad841e1
feat(android): Bluetooth audio routing + network change detection + per-arch APK builds
Siavash Sameni
2026-04-12 16:07:41 +04:00
-
29cd23fe39
fix(p2p): connection cleanup — 4 fixes for stale/dead connections
Siavash Sameni
2026-04-12 15:11:50 +04:00