Adopt merged DeepFilterNet dependency refresh in streaming-engines
Update streaming-engines to the immutable merged revision from Kaukus/DeepFilterNet PR #39: 8add4191923a520c09588923b6f9ee51682bfafb. Both fork PR #39 and streaming-engines dependency PR #150 are verified merged. Start from clean origin/main 7c0d88c on chore/update-deepfilternet-pin; do not reuse the historical update-deepfilter-revision worktree/branch or inherit unrelated commits. Scope: change crates/gst-audio-enhance/Cargo.toml revision, remove obsolete Tract 0.23.3 holdback, and selectively resolve the fork's required Tract 0.23.9/Rubato 5 transitive dependencies without refreshing unrelated packages. Extend the existing embedding test to process real consecutive audio frames with the pinned embedded model rather than only loading it. No new direct dependencies, model changes, deployment or live device access. No commit/push/PR unless requested. Acceptance: lockfile identifies exactly the verified merged fork revision and required current Tract family; embedding regression processes finite non-silent frames and silence recovery; relevant Rust formatting, locked workspace/consumer checks and tests pass; inspect graph/diff for unrelated dependency churn. Record validation limits honestly. Implementation: exact merged fork revision and obsolete holdback removal are applied, with a selective `cargo update -p deep_filter`. New and removed/replaced package identities are verified against the new/old DeepFilterNet dependency graphs; no unrelated package-version refresh. Cargo also adjusted edges between already-locked shared/platform packages within their declared version ranges. The entire Tract family is now 0.23.9 and Rubato is 5.0.1. Only Cargo.lock, gst-audio-enhance/Cargo.toml and its worker test are modified. Existing model-load-only test now processes 24 non-silent frames plus 12 silence frames, checking 48 kHz/480-sample contract, finite estimates/samples, nonzero energy and silence recovery. Final verified validation: all 3 audio-enhancement tests pass, including actual consecutive-frame inference/silence recovery; locked workspace all-target/all-feature check and all-feature workspace tests pass (569 passed, 8 existing opt-in ignored). Formatting/diff checks pass. Affected all-target Clippy completes with one verified pre-existing chunks_exact_to_as_chunks warning in gst-audio-enhance/src/lib.rs, outside this pin/test patch; no warning-free claim. RustSec audit reports zero vulnerability entries with the existing unmaintained dotenv warning. Graph verification covers every new/changed package identity and every removed/replaced old identity; it is not a claim that unchanged package dependency edges stayed identical. Complete lockfile inspection also identified Cargo reuse of existing platform versions allowed by broad requirements. Windows cross-compilation was not performed. Exactly three files differ from clean origin/main 7c0d88c. Evidence /tmp/streaming-deepfilter-pin; temporary compiled artifacts cleaned after successful validation. User authorized publication with /open-pr. Committed the complete three-file change as 41c2187 (chore: Update the pinned DeepFilterNet revision), pushed chore/update-deepfilternet-pin, and opened ready PR #152 against main: https://git.kaukus.no/Kaukus/streaming-engines/pulls/152. Fresh origin/main remained 7c0d88c, with no unrelated inherited commits. PR body uses a behavior-oriented Before/Now section and keeps validation reporting in private chat. Working tree clean with upstream tracking. No deployment, release-container build, remote CI or live hardware access performed.
Checklist
2 of 2 complete- Pin the verified merged fork revision and resolve only its required dependency graph.
- Verify real embedded inference and relevant locked workspace/consumer validation.
- Area
- Streaming
- Project
- streaming-engines
- Kind
- Chore
- Task ID
tsk_ksh9mr6v8p- Updated