Skip to content

ci(bundle-check): add --all-targets to per-bundle cargo check - #6670

Merged
bug-ops merged 1 commit into
mainfrom
fix/6609-ci-bundle-check-all-targets
Jul 28, 2026
Merged

ci(bundle-check): add --all-targets to per-bundle cargo check#6670
bug-ops merged 1 commit into
mainfrom
fix/6609-ci-bundle-check-all-targets

Conversation

@bug-ops

@bug-ops bug-ops commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • Bundle-check job in .github/workflows/ci.yml only compiled lib/bin targets per feature bundle via cargo check --features <bundle> (no --all-targets), so test-module compilation was never verified per-bundle.
  • Every job that does use --all-targets (lint-clippy, msrv, release-build, postgres/sqlite parity) always combines feature strings that enable both session and acp-http together, or uses full, so a narrower bundle like ide was never checked with --all-targets in isolation.
  • This let a test whose #[cfg(...)] gate is narrower than the production code it calls ship and pass CI indefinitely, as happened with build_combined_deps_wires_equivalent_security_pipeline_from_config test-only compile failure under --features ide --all-targets #6607 (fixed in fix(acp): align test cfg gate with build_combined_deps' own feature gate #6608).
  • Adds --all-targets to the existing per-bundle cargo check step and bumps the job timeout 10 -> 15 minutes to account for compiling test/bench/example targets per bundle.
  • ci-non-linux.yml has no bundle-check job, confirmed directly, left untouched.

Closes #6609

Test plan

  • fy lint .github/workflows/ci.yml — 0 errors (30 pre-existing warnings, none on changed lines)
  • gitleaks protect --staged — no leaks
  • Reviewed diff scope: only .github/workflows/ci.yml and CHANGELOG.md, no src/*.rs touched
  • CI run on this PR exercises the new --all-targets step for the ide bundle (and all other bundles) for the first time

@github-actions github-actions Bot added ci CI/CD configuration size/S Small PR (11-50 lines) documentation Improvements or additions to documentation labels Jul 28, 2026
@bug-ops
bug-ops enabled auto-merge (squash) July 28, 2026 00:20
The bundle-check job only compiled lib/bin targets per feature bundle;
every job that runs --all-targets always combines session and
acp-http together (or uses full), so a narrower bundle like ide was
never checked with --all-targets anywhere in CI. Test-only cfg gates
narrower than the production code they exercise could ship and pass
CI indefinitely, as happened in #6607.
@bug-ops
bug-ops force-pushed the fix/6609-ci-bundle-check-all-targets branch from 75f3452 to d6f21c1 Compare July 28, 2026 00:24
@bug-ops
bug-ops merged commit 1e92c1f into main Jul 28, 2026
43 checks passed
@bug-ops
bug-ops deleted the fix/6609-ci-bundle-check-all-targets branch July 28, 2026 00:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci CI/CD configuration documentation Improvements or additions to documentation size/S Small PR (11-50 lines)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI bundle-check jobs never run cargo check --all-targets, missing a whole class of test-only cfg-gate mismatches

1 participant