Repository navigation
fix(ci): lint media tests with default features - #7817
Conversation
Quest-Claim: 95331552a6fa1736
Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
Co-Authored-By: GPT-6.1 Sol <noreply@openai.com>
kixelated
left a comment
There was a problem hiding this comment.
Automated review by review (OpenAI)
Reviewed head 7e247be. I found no actionable issue in the cfg corrections or the isolated default-feature media lint. The gate selects the lint when either media crate is affected, while its existing device-feature test build remains intact.
Verification: GitHub-only static review of the changed methods, selector, recipe and tests. I did not run clippy, the selector tests, or the full gate; the PR records its host-specific validation failures.
(Written by review (OpenAI))
|
No actionable comments were generated in the recent review. WalkthroughThe audio producer methods Merge Risk:
|
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
- Dead-code cfg fix —
Producer::retainsandfailnow gate oncapturealone, matching their only callers inencode/capture.rs; the remainingcfg(any(feature = "capture", test))items inmoq-audio/moq-videowere checked and do have test callers. - Isolated default-media lint — new
just rs media-defaultsruns clippy overmoq-audioandmoq-video--testswith default features, invoked once byselect.sh lintwhen either crate is selected. Explicit-pflags keep selected dependents' capture feature from unifying back in; the device-feature test build is unchanged. - Docs and tests — gate comments updated, selector tests extended to cover the trigger, one-shot, non-media, and
test-action cases; the completed quest file and its README link are removed with no dangling references.
I independently ran the exact clippy configuration after working around this environment's known libspa/PipeWire gap; it passes with the new cfgs. The selector SelectTest cases pass (the remaining fixture failures here are the known sudo prlimit and missing-just environment issues). No public API or wire impact.
deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

Problem
cargo clippy --locked -p moq-audio --tests -- -D warningsfails on main becauseretainsandfailcompile undertest, while their only callers requirecapture. The gate enables capture, so it misses the default-feature failure. moq-dev/moq#7786 adds test-target coverage but keeps those feature picks.Approach
capturealone. Audited the comparable audio/video cfgs, including test-first and multiline forms; the remaining test allowances have callers in those configurations.just rs media-defaults: clippy over audio/video--testswith their default features, isolated from dependents that could enable capture. The gate's lint phase runs it once when either media crate is selected. Unrelated selections skip it; the device-feature test build stays unchanged.Compile cost
Measured inside the Nix shell through
quest gate, with the normal shared compiler cache and dependencies available. Source-edit probes added a temporary comment, rather than relying on a timestamp-only rebuild.moq-net)These are cached local edit-loop measurements, not an uncached CI benchmark. The extra work is a scoped metadata-only compile; it does not link or rerun tests, or add a second workspace test build. That measured cost is small enough to include directly rather than adding a source-pattern lint or broadening the feature matrix.
Impact
Alternatives
any(feature, test)would reject valid existing test coverage.Validation
just rs media-defaultsrejects them with the two dead-code errors; restoring the fix passes.python3 sh/rs/select.test.py: all 25 tests pass.quest check --base origin/mainpasses.just ci: exits 1 solely for the two reproduced environment failures below. All other selected modules pass, including 11,641 Rust tests (133 skipped), Rust lint/docs, selector/tooling tests, JavaScript tests, Python, C/C++, Kotlin, Go, and Dart. No full strict-gate pass is claimed.nix develop --command quest gate nix flake check --print-build-logsin a detached base checkout at 00a3c57dca fails on the identicalk6j6qw86x77lz6dnl2wqbxi86cjy31yw-github-runner.drv, withunshare: write failed /proc/self/uid_map: Operation not permitted.nix develop --command quest gate bash .tmp/base/demo/carla/sim/python.test.sh, running unchanged base scripts with this session's environment, fails with the same expected|/gcc/lib:/existingversus Nix snapshot paths. Running from the detached checkout without that checkout's snapshot passes. This is the existingBASH_ENVenvironment override, also recorded in moq-dev/moq#7802 and moq-dev/moq#7798.Review
Claude Code, Claude Opus 5.5 (
claude-opus-5-5), medium effort, localquest reviewround 2: no findings on head 7e247bebf5 againstorigin/mainat 4506e3fdc5.Round 1's compile-cost finding was refuted with the measurement logs, the final full-gate timings, and the actual test callers of the remaining cfg allowances. The reviewer accepted that evidence in round 2. The source head is unchanged between rounds.
Follow-ups
(Written by GPT-6.1 Sol)