Skip to content

feat(cargo-anvil): add opt-in release-profile validation - #358

Draft
martinhavelka (wukchung) wants to merge 1 commit into
mainfrom
u/mhavelka/release-profile-validation
Draft

martinhavelka (wukchung) wants to merge 1 commit into
mainfrom
u/mhavelka/release-profile-validation

Conversation

@wukchung

Copy link
Copy Markdown
Contributor

🤖

Summary

Adds an opt-in anvil-release-profile group for repositories that need full-workspace Clippy, nextest, and doctest validation under Cargo's release profile. The group stays outside the default PR, scheduled, and full tiers, so existing adopters keep their current cost and behavior.

repository CI
  anvil-release-profile
    release Clippy
    release nextest
      write JUnit
    release doctests
  backend publishes JUnit

Generated ADO support publishes results through PublishTestResults@2. GitHub gets a manual/reusable Linux and Windows workflow, and the shared group action retains JUnit artifacts after success or failure. The catalog and generated files move to cargo-anvil 0.26.0.

Evidence

  • cargo +1.99.1 test -p cargo-anvil --all-features: passed.
  • just anvil-pr-fast: passed.
  • Generator dry-run with the GitHub backend: no drift.
  • Real just anvil-release-profile run: release Clippy passed and JUnit recorded 1,506 tests, including two existing unrelated cargo-aprz-lib failures. The same failures block the full just anvil-pr run.

Risk Assessment

Door: Two-way

The generated catalog and workflows can be reverted without migrating stored data.

Blast Radius: Consumers

Only repositories that invoke the new group or workflow execute it. The main risk is backend orchestration or result publication differing between ADO and GitHub.

WI: https://dev.azure.com/O365Exchange/O365%20Core/_workitems/edit/8181002

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: ec0fdc71-26be-4825-b1c4-3515da730fca
@codecov-commenter

Codecov Comments Bot (codecov-commenter) commented Nov 11, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.4%. Comparing base (95fa400) to head (fb19e13).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##            main    #358     +/-   ##
=======================================
- Coverage   99.5%   99.4%   -0.1%     
=======================================
  Files        351     350      -1     
  Lines      64328   63881    -447     
=======================================
- Hits       64029   63560    -469     
- Misses       299     321     +22     
Flag Coverage Δ
linux 99.4% <100.0%> (+<0.1%) ⬆️
linux-arm 99.4% <100.0%> (+<0.1%) ⬆️
scheduled ?
windows ?

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

2 participants