Commit Graph
1292 Commits
Author SHA1 Message Date
evgeny eab9223f39 Clarify audio queue, capture clock and PCM reserve contracts 2026-10-27 14:43:24 +01:00
evgeny 799a71d361 Merge remote-tracking branch 'origin/master' 2026-10-27 14:32:36 +01:00
evgeny c7dadb0539 Clarify optional audio period and PTT latch release wording 2026-10-27 14:31:31 +01:00
evgeny 4389b511bf Align audio ownership comments with lease and recovery behavior 2026-10-27 14:28:02 +01:00
evgeny 29e2afc3ce Describe shared audio capture and buffer tuning contracts 2026-10-27 14:27:20 +01:00
evgeny cb49b9d4a4 Complete desktop radio UI and audio engine contracts 2026-10-27 14:24:46 +01:00
evgeny 3d48024fd8 Trim desktop message link punctuation in linear time 2026-10-27 14:22:32 +01:00
evgeny b5063f435b Explain radio settings reload and publication ordering 2026-10-27 14:12:49 +01:00
evgeny 8a96e5d1c7 Verify radio settings order during reentrant reload 2026-10-27 14:10:53 +01:00
evgeny 2226f54a56 Invalidate stale radio settings requests on reload 2026-10-27 14:08:22 +01:00
evgeny b4186dfae3 Cover radio settings recovery across core restarts 2026-10-27 14:06:05 +01:00
evgeny 5c2ba74e3e Document desktop PTT chords and portal lifecycle 2026-10-27 13:54:55 +01:00
evgeny e9391c9790 Clarify desktop video modes and encoder output contracts 2026-10-27 13:43:00 +01:00
evgeny b1510ab437 Describe camera worker lifecycle and capture signals 2026-10-27 13:39:12 +01:00
evgeny 0594be9513 Document camera IPC framing and shared buffer ownership 2026-10-27 13:38:07 +01:00
evgeny 6fdba59885 Correct cache cleanup glob documentation 2026-10-27 13:32:12 +01:00
evgeny 2d255afa6c Document avatar manager jobs and Lights Out behavior 2026-10-27 13:29:54 +01:00
evgeny 8691608924 Clarify avatar cache and image viewer contracts 2026-10-27 13:27:55 +01:00
evgeny fd80b35f8f Merge remote-tracking branch 'origin/master' 2026-10-27 13:17:50 +01:00
evgeny 7eaeb0e2f9 Preserve documentation audit and Android bridge fixes 2026-10-27 13:17:22 +01:00
evgeny ae4fb89bef Keep validation errors visible after explicit join attempts 2026-10-27 12:57:20 +01:00
evgeny d730dee925 Use accurate shared join errors and preserve result status 2026-10-27 12:56:13 +01:00
evgeny fcbec01c07 Translate shared join and offer failure messages 2026-10-27 12:55:13 +01:00
evgeny 16a68652ae Add UI regression tests for join and offer result errors 2026-10-27 12:53:47 +01:00
evgeny eca03747b3 Log desktop join and offer results with request context 2026-10-27 12:53:21 +01:00
evgeny b62ca4093e Report precise avatar editor source validation failures 2026-10-27 12:30:21 +01:00
evgeny 6c1b429e91 Check avatar editor coordinates after EXIF rotation 2026-10-27 12:29:20 +01:00
evgeny d72a2c092e Log avatar preparation generation and teardown state 2026-10-27 12:28:12 +01:00
evgeny 90d6f78a9e Resolve Qt 5 collection deduction in avatar and settings code 2026-10-27 12:26:58 +01:00
evgeny f54aa17e55 Observe buttonless pointer moves to cancel interrupted crop drags 2026-10-27 12:25:03 +01:00
evgeny 803d5f6583 Trace crop pointer state when a drag loses its button 2026-10-27 12:23:12 +01:00
evgeny 8c30c8e6ce Isolate avatar preparation generations and guard reentrant signals 2026-10-27 12:19:31 +01:00
evgeny d307492d22 Cover avatar preparation cancellation and reentrant owner deletion 2026-10-27 12:17:06 +01:00
evgeny b95d3628bf Check crop preview rendering and interrupted drags 2026-10-27 12:15:17 +01:00
evgeny 0a69864d10 Guard avatar upload controls across nested file and crop dialogs 2026-10-27 12:15:17 +01:00
evgeny 9c782be562 Bound avatar crop geometry and protect asynchronous preview lifetime 2026-10-27 12:10:36 +01:00
evgeny bfc280310d Cover avatar crop input bounds and modal owner lifetime 2026-10-27 12:07:36 +01:00
evgeny c25ed7c243 Report readable causes for malformed avatar blobs 2026-10-27 11:57:30 +01:00
evgeny 138de8d446 Document retryable avatar snapshot read failures 2026-10-27 11:57:30 +01:00
evgeny 90a588cfc1 Separate unpublished avatars from malformed published storage 2026-10-27 11:57:30 +01:00
evgeny 7d4da3a54d Treat an unpublished avatar as a successful empty read 2026-10-27 11:57:30 +01:00
evgeny a701580d54 Exercise main window destruction inside channel settings exec 2026-10-27 11:57:30 +01:00
evgeny bd105c630d Validate avatar read recovery and bounded typed blobs 2026-10-27 11:57:30 +01:00
evgeny 6106fc1b5d Keep transient SQLite failures out of the avatar cache 2026-10-27 11:57:30 +01:00
evgeny 905d30ceaf Distinguish failed avatar reads from committed empty blobs 2026-10-27 11:57:30 +01:00
evgeny 95e88ac66f Reproduce avatar cache poisoning after a transient SQL read error 2026-10-27 11:57:30 +01:00
evgeny 9fdd2dc9fb Specify the native channel ID range in GUI contracts 2026-10-27 11:57:30 +01:00
evgeny d4a969dc38 Match channel IDs to the native signed integer range 2026-10-27 11:57:30 +01:00
evgeny cf4a209837 Own group avatar commands and preserve pending result identity 2026-10-27 11:57:30 +01:00
evgeny 6c0aa98508 Cover group avatar publication ownership and result correlation 2026-10-27 11:57:30 +01:00