Skip to content

Downgrade desktop Huddles to audio protocol v2 - #6610

Merged
klopez4212 merged 1 commit into
mainfrom
kennylopez-desktop-huddles-v2-compat
Aug 23, 2026
Merged

Downgrade desktop Huddles to audio protocol v2#6610
klopez4212 merged 1 commit into
mainfrom
kennylopez-desktop-huddles-v2-compat

Conversation

@klopez4212

Copy link
Copy Markdown
Contributor

Summary

  • negotiate Huddle audio protocol v2 on desktop
  • decode the released one-byte peer-index prefix
  • retain roster-driven playout resets and document the missing v3 epoch fence

Testing

  • just desktop-tauri-fmt-check
  • just desktop-tauri-clippy
  • just desktop-tauri-test

Signed-off-by: kenny lopez <klopez4212@gmail.com>
@klopez4212
klopez4212 requested a review from a team as a code owner August 23, 2026 08:28

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Carl, an automated reviewer, commenting via Wes’s GitHub account.

Reviewed e23632941331502c0330e51d407e667bea26ef57..3214fe361fe98fb7e2f69b66c0c463348da13ac9.

No blocking findings.

I traced the negotiated protocol and media framing across desktop, mobile, relay-local fanout, and cross-pod mesh routing. Desktop now consistently advertises v2 and consumes the released [peer_index][8-byte header][Opus] relay frame. The relay accepts v2, pins each room to its first admitted version, rejects mixed-version joins, and preserves the one-byte v2 prefix on both local and mesh paths.

Roster transitions still remove or reset per-index decoder, player, speaker, STT, and floor state. Protocol v2 cannot fence a delayed frame from a departed occupant after that index has been reassigned, but that is the explicitly documented compatibility tradeoff of this downgrade and matches the already-merged mobile v2 behavior. It is not a regression unique to this change.

Validation at exact head: all applicable GitHub checks pass; git diff --check passes; the standalone desktop wire module ran 11/11 tests successfully. The full local Tauri test binary could not build because the checkout lacks packaged sidecar resource binaries/buzz-acp-aarch64-apple-darwin; CI's Desktop Core, Rust lint, Windows Rust, desktop build, smoke, and integration jobs cover the committed head and are green.

@klopez4212
klopez4212 merged commit 0720f53 into main Aug 23, 2026
24 checks passed
@klopez4212
klopez4212 deleted the kennylopez-desktop-huddles-v2-compat branch August 23, 2026 15:24
tlongwell-block pushed a commit that referenced this pull request Aug 23, 2026
Brings in #6312 (mobile huddle participant polish) and #6610 (desktop
audio protocol v2 downgrade: `parse_relay_frame` one-byte peer prefix,
roster-presence occupancy check). Auto-merged cleanly in playout.rs and
relay_api.rs; the branch's publisher-roster tracking and live output
device switch sit alongside main's v2 frame parsing with no overlap.

Co-authored-by: Meli <5aaa86bce934fc3445fc254aab560a40923f10252f92107e665073dede0e04d3@buzz.block.builderlab.xyz>
Signed-off-by: Meli <5aaa86bce934fc3445fc254aab560a40923f10252f92107e665073dede0e04d3@buzz.block.builderlab.xyz>
BradGroux pushed a commit to BradGroux/buzz that referenced this pull request Aug 23, 2026
## Summary
- negotiate Huddle audio protocol v2 on desktop
- decode the released one-byte peer-index prefix
- retain roster-driven playout resets and document the missing v3 epoch
fence

## Testing
- `just desktop-tauri-fmt-check`
- `just desktop-tauri-clippy`
- `just desktop-tauri-test`

Signed-off-by: kenny lopez <klopez4212@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants