Skip to content

feat: add bounded file WAV workflow - #11

Merged
matveyb9 merged 1 commit into
mainfrom
feat/bounded-file-wav-workflow
Aug 20, 2026
Merged

matveyb9 merged 1 commit into
mainfrom
feat/bounded-file-wav-workflow

Conversation

@matveyb9

Copy link
Copy Markdown
Owner

Summary

This implementation slice follows the new test-gated execution plan and adds the first bounded local file-object WAV workflow. It does not add a physical audio route.

Rust now exposes an ADLP File constructor with required file-name and MIME metadata, a deterministic binary-payload round-trip test, a committed golden WAV fixture, and reproducible adlp-cli encode-file / encode-acoustic1-file commands. The thin Flutter Rust facade accepts or decodes files with an initial 8 KiB payload limit, while preserving Rust as the sole authority for ADLP framing, CRC-32C and WAV codec behavior.

The Flutter workbench now has explicit transfer-task states, a text/file object selector, local payload selection, verified text/file receipts, and local save for only Rust-verified received file bytes. The normal widget suite remains portable through fakes. An opt-in Linux smoke test loads the freshly built native shared library and exercises the real generated Flutter-to-Rust file bridge.

The documentation adds a bilingual implementation plan, CLI file walkthrough, bridge contract, native smoke command, roadmap/status updates and the corresponding English/Russian pair check.

Scope boundary

This is an experimental local WAV reference workflow. It does not provide microphone capture, speaker playback, cables, Bluetooth, radio, background transfer, persistence/history, a file-size policy beyond the bridge's initial 8 KiB limit, authentication, encryption, device support or a live-audio claim.

Validation

The following completed successfully:

  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace
  • flutter analyze
  • flutter test — 10 passing tests and 2 deliberately skipped opt-in native-runtime tests
  • flutter build web --release
  • flutter build linux --debug
  • AUDIOMODEM_RUN_NATIVE_BRIDGE_SMOKE=1 LD_LIBRARY_PATH="$PWD/build/linux/x64/debug/bundle/lib" flutter test test/native_bridge_smoke_test.dart
  • Device-acceptance schema/validator fixture checks
  • git diff --check

The web build completes with the existing flutter_rust_bridge wasm dry-run warning. The native bridge remains intentionally unavailable in the web build.

@matveyb9
matveyb9 merged commit c5fabff into main Aug 20, 2026
5 checks passed
@matveyb9
matveyb9 deleted the feat/bounded-file-wav-workflow branch August 20, 2026 18:59
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