Skip to content

Add cross-platform audio backend foundation - #108

Merged
pranc1ngpegasus merged 2 commits into
mainfrom
agent/cross-platform-audio-abstraction
Aug 1, 2026
Merged

Add cross-platform audio backend foundation#108
pranc1ngpegasus merged 2 commits into
mainfrom
agent/cross-platform-audio-abstraction

Conversation

@pranc1ngpegasus

Copy link
Copy Markdown
Member

Summary

  • Add backend-neutral capture and transcript contracts in wisp-core.
  • Add capability-aware, privacy-preserving backend selection and bounded session orchestration in wisp-audiokit.
  • Harden Windows WASAPI recording, lifecycle, timeline, overflow, and callback paths while preserving macOS and legacy compatibility.

Scope

This PR establishes the cross-platform abstraction foundation. The Linux PipeWire adapter, the Windows local-model inference connection, and a Nemotron backend remain follow-up work. Existing SessionConfig, SourceLabel, and macOS WispAudioKit compatibility are retained.

Validation

  • cargo test --workspace --exclude wisp-desktop --no-fail-fast (wisp-audiokit 83 tests, wisp-core 7 tests, plus workspace suites and doctests)
  • cargo clippy --workspace --exclude wisp-desktop --all-targets -- -D warnings
  • cargo fmt --all -- --check
  • bash formal/check.sh (Kani 5/5, Shuttle 2/2)
  • Windows MSVC xwin Clippy with tests and warnings denied
  • Final implementation, test, and security reviews: clean

Limitations

  • The full desktop workspace build is blocked in this local environment because the Apple metal compiler is unavailable.
  • Windows-specific paths were cross-compiled and linted, but were not exercised on physical Windows hardware.

@pranc1ngpegasus
pranc1ngpegasus marked this pull request as ready for review July 31, 2026 17:36
@pranc1ngpegasus
pranc1ngpegasus merged commit 05865eb into main Aug 1, 2026
5 checks passed
@pranc1ngpegasus
pranc1ngpegasus deleted the agent/cross-platform-audio-abstraction branch August 1, 2026 10:21
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.

1 participant