Program: implement WebRtcTest #96

Closed
opened 2026-08-08 08:24:35 +00:00 by hugo · 1 comment
Owner

Objective

Port the WebRTC validation program over the native Rust WebRTC voice adapter.

Deliverables

  • Preserve signaling, peer/session, device selection, media/data-channel behavior, diagnostics, and clean teardown.
  • Use fake signaling plus virtual/fake audio in CI.
  • Document native libopus/audio prerequisites and opt-in real-device testing.

Validation

  • CLI, fake signaling, and virtual-audio tests pass.
  • No physical device or live service is required in CI.
  • Cancellation/teardown leaves no peer/audio tasks.

Prerequisite

The library behavior required by the program is implemented and its translated parity tests pass.

Project constraints

  • Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback.
  • Provide deterministic offline/fake validation before opt-in live or device tests.
  • Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in.
  • Update program/source completeness, docs, and workspace validation evidence.
## Objective Port the WebRTC validation program over the native Rust WebRTC voice adapter. ## Deliverables - Preserve signaling, peer/session, device selection, media/data-channel behavior, diagnostics, and clean teardown. - Use fake signaling plus virtual/fake audio in CI. - Document native libopus/audio prerequisites and opt-in real-device testing. ## Validation - CLI, fake signaling, and virtual-audio tests pass. - No physical device or live service is required in CI. - Cancellation/teardown leaves no peer/audio tasks. ## Prerequisite The library behavior required by the program is implemented and its translated parity tests pass. ## Project constraints - Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback. - Provide deterministic offline/fake validation before opt-in live or device tests. - Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in. - Update program/source completeness, docs, and workspace validation evidence.
hugo added this to the 11 - Programs and live-grid validation milestone 2026-08-08 08:24:35 +00:00
hugo added the enhancement label 2026-08-08 08:24:35 +00:00
Author
Owner

Implemented and pushed in 66f10ba. The pending WebRtcTest shell now uses a native Rust str0m ICE/DTLS/SRTP/SCTP peer, ordered SLData, native libopus encode/decode, WAV resampling/playback, virtual audio endpoints, optional cross-platform CPAL devices, grid capability signaling, redacted credentials, diagnostics, and bounded normal/error/drop teardown. Added deterministic secure-loopback signaling/media tests, CLI gates, protocol compatibility cases, native prerequisite/device documentation, and Ubuntu workspace checks. Verification: native tests 5 passed/0 ignored; CLI tests 4 passed/0 ignored on the default virtual-audio path; WebRTC compatibility tests 3 passed/0 ignored; command-module tests 3 passed; strict Clippy passed for default and real-audio builds plus the compatibility target; formatting, locked checks, generated surface/mapping/shims, and parity checks passed. No live grid service is required by this issue and no live credential transmission was performed.

Implemented and pushed in 66f10ba. The pending WebRtcTest shell now uses a native Rust str0m ICE/DTLS/SRTP/SCTP peer, ordered SLData, native libopus encode/decode, WAV resampling/playback, virtual audio endpoints, optional cross-platform CPAL devices, grid capability signaling, redacted credentials, diagnostics, and bounded normal/error/drop teardown. Added deterministic secure-loopback signaling/media tests, CLI gates, protocol compatibility cases, native prerequisite/device documentation, and Ubuntu workspace checks. Verification: native tests 5 passed/0 ignored; CLI tests 4 passed/0 ignored on the default virtual-audio path; WebRTC compatibility tests 3 passed/0 ignored; command-module tests 3 passed; strict Clippy passed for default and real-audio builds plus the compatibility target; formatting, locked checks, generated surface/mapping/shims, and parity checks passed. No live grid service is required by this issue and no live credential transmission was performed.
hugo closed this issue 2026-08-11 15:47:13 +00:00
Sign in to join this conversation.