You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🤖 Consolidates cargo-anvil's generated footprint and replaces recipe-side orchestration with released domain-tool interfaces.
Summary
moves ownership state to .anvil/manifest.toml with safe legacy migration and conflict detection
emits exactly four generated recipe files: .anvil/anvil.just, .anvil/checks.just, .anvil/setup.just, and .anvil/container.just
retains per-recipe delimiter-free catalog sections so downstream catalogs can add, replace, or remove individual recipes without creating per-check files
relocates GitHub local actions to .anvil/github/actions/ and ADO implementation templates to .anvil/ado/, while retaining externally discovered workflow and pipeline stubs
replaces impact scripts with cargo-delta 0.4 package files consumed directly by cargo-each 0.4, including explicit nonempty, empty, and missing-input contracts
adopts cargo-each 0.4's optional {workspace-rust-version} contract: absent root declarations use Cargo's default toolchain and dedicated MSRV recipes become native empty-plan no-ops
replaces PowerShell in stable validation, MSRV setup/testing, package-isolated all-target checks, PR-title validation, scheduled/full tier scoping, and Bolero target fan-out with direct Just and tool invocations
redirects pinned cargo-bolero discovery records to target/bolero-list-<just-pid>.jsonl, consumed by cargo-each 0.4 record mode and removed after success
delegates coverage collection to cargo-coverage-gate 0.6 and GitHub credential discovery to cargo-aprz 1.2
removes the SemVer check, tool pin/setup, advisory-comment wiring, CI permissions, and stale repository documentation
preserves Loom fail-loud validation, example no-run exclusions, Miri profile flags, cargo-mutants working-tree diffs, and fail-closed container input checks
Deliberate boundaries
GitHub workflows remain under .github/workflows/ and ADO registration files remain under .pipelines/ because those locations are externally discovered
.delta.toml and spellcheck.toml remain managed-region hosts because their tools do not support layered configuration
remaining non-container scripts are limited to behavior current domain tools cannot express directly: cargo-careful cache repair, doctest capability projection, example target opt-outs, Loom structural validation, Miri profile environment, mutation-diff preparation, README target selection, and spell-dictionary preparation
container orchestration remains a separate platform boundary and does not justify an Anvil-specific runner or broadening cargo-each
Move generated recipes, backend implementation files, actions, and the
ownership manifest under .anvil. Compose recipes as independently
addressable catalog sections and delegate portable execution to the released
domain tools.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Compose the generated Just surface under .anvil, relocate movable backend
artifacts, migrate the manifest, and replace script orchestration with
cargo-each, cargo-delta, cargo-coverage-gate, and cargo-aprz interfaces.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Human review is required at e312bfcae4fc2c26d1fa6f68948dc8f2aeb18246: Artifact adds OwnedFileSection to an exported, exhaustive enum, breaking existing downstream exhaustive matches (the no-breaking-changes invariant). The manifest/recipe/CI redesign also exceeds the bounded fast path. Anvil CI failed preparation and skipped the test/coverage groups. A maintainer must review compatibility, migration, and preserved test execution, and obtain successful required checks. No approval was issued.
The reason will be displayed to describe this comment to others. Learn more.
Posted by an AI agent
Warning: Incomplete review coverage
Some review areas could not be completed:
Behavioral defects (review-correctness): mandatory executable baseline/head reproductions and falsification were unavailable.
Recovery and resilience (review-resilience): required Cargo-metadata capture and executable baseline/fault-path validation were unavailable.
Output-only public contract (review-public-api): matching full baseline/head cargo public-api captures and their paired comparison were unavailable. The mandatory isolated empty-claim filter completed, but API coverage remains blocked.
Public API documentation (review-public-docs): matching baseline/head rustdoc JSON was unavailable; public paths, docs, attributes and change markers remain unresolved.
No combined verdict is issued. The eight findings come only from completed source-based API-design, test-preservation and code/docs-consistency passes. Source-based performance and naming passes completed without findings; telemetry had no changed signal contract. These results do not establish runtime correctness or complete public-API coverage.
Reviewed head e312bfcae4fc2c26d1fa6f68948dc8f2aeb18246 against comparison base 876e5ec42876512eb7076bec51088c3ea906ca5a, targeting microsoft/ox-tools:main. Anvil run 36045777265 stopped in Linux and Windows preparation while installing cargo-each; the downstream verification groups were skipped. No PR/dependency code was executed on the shared credentialed host, and no authorized isolated runner or matching API/rustdoc artifacts were available.
Reconcile the consolidation work with current cargo-anvil behavior, split generated recipes into hub/check/setup/container files, remove the SemVer check, and address package-file and review contract gaps.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Keep binstall as a single portable setup invocation while allowing newly published crates to compile when no prebuilt artifact is indexed yet.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Container execution is documented as removable via without_artifact for the container artifact group (crates/cargo-anvil/docs/design/containers.md:659-670). A catalog that removes .anvil/container.just will now leave this hard import in the hub, making every unrelated just invocation fail to parse. Keep this import optional so disabling containers does not break the remaining recipes.
The reason will be displayed to describe this comment to others. Learn more.
Posted by an AI agent
Warning: Incomplete review coverage
This fresh review covers the full comparison from 8cedad4fefe571eceeecb99b4869f5020445b350 to cd914dfa8db7d78af8e09c4c4a6ac1110886e73b, targeting microsoft/ox-tools:main. Source API-design, tests and naming completed; telemetry was evidence-backed not applicable.
These areas remain blocked:
review-correctness: no paired baseline/head reproductions or controlled falsification; inspected CI is bounded head evidence only.
review-perf: no matching comparative measurements for the retained bootstrap estimate or changed Miri/impact work.
review-resilience: the required Cargo metadata attempt failed because Rust 1.97 was unavailable; fault-path behavior remains unexecuted.
review-consistency: static comparison finished, but authoritative reachable-public-item documentation coverage is missing.
review-public-api: no full paired public-API captures/comparison or matching rustdoc evidence. The mandatory isolated filter completed an empty claim set, not API verification.
review-public-docs: no paired rustdoc JSON captures, verified producing configuration or authoritative item resolution.
No authorized isolated generation/execution environment was available. No combined verdict is issued. The inline finding comes only from the completed tests area and reports an actual tree-matched CI fixture failure, not a proven baseline production regression. Existing recipe-suite and dogfood findings are not duplicated.
Update actionlint glob for generated local actions
crates/cargo-anvil/docs/verification.md:103
The recipe relocation updates the validation bullet below, but the actionlint bullet immediately above still scans .github/actions/*/action.yml. Generated local actions now live under .anvil/github/actions/, so the documented validation no longer covers the emitted action files; update that glob.
Output-only API (review-public-api): paired full API captures/comparison and producing configuration are missing. The required isolated empty-claim filter completed but does not close this gap.
Public documentation (review-public-docs): both required rustdoc JSON captures and authoritative item/member/documentation-closure resolution are missing.
No combined verdict is issued. Three new test-coverage findings below come only from a completed area; previously raised roots are not duplicated. API-design, tests, naming and telemetry completed their scoped procedures. Candidates from blocked areas remain withheld.
This is the full selected comparison 8cedad4fefe571eceeecb99b4869f5020445b350 to 4e175b8ef8a319a061113cecb89d426cef2a39f7, targeting microsoft/ox-tools:main. Local Rust/Cargo/rustup and PR/dependency execution were prohibited; no such commands were attempted and no authorized isolated execution service was supplied.
The earlier base-ref fixture finding is not repeated: the selected source clears the inherited variables, and current Linux, Linux ARM and Windows coverage logs explicitly record the named test as passing. Those jobs' separate failures do not negate that scoped result or establish a new production regression.
✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.8%. Comparing base (ef0d64b) to head (ec21f9b).
❌ Your project status has failed because the head coverage (99.8%) is below the target coverage (100.0%). You can increase the head coverage or adjust the target coverage.
The reason will be displayed to describe this comment to others. Learn more.
Posted by an AI agent
Warning: Incomplete review coverage
This fresh review covers the full selected 8cedad4fefe571eceeecb99b4869f5020445b350 to 0732f4daec2dba08053a530fa71a015bcecf96ec comparison against microsoft/ox-tools:main (172 changed paths; cargo-anvil and cargo-gamma-lib), not just the latest commit delta. Three areas completed: test/behavior preservation, naming, and telemetry. Seven required areas remain blocked:
Public contract and manifests (review-api-design): Static inventory is complete, but effective shipping configurations, paired downstream compatibility proof and matching authoritative public documentation remain unavailable.
Behavioral correctness (review-correctness): Faithful paired base/head reproductions, falsifying controls and candidate-specific fault/portability evidence are unavailable. Suspected runtime defects remain unverified.
Performance (review-perf): Matched comparative measurements for changed Miri and command/impact orchestration are unavailable; no performance regression, improvement or neutrality is established.
Recovery and resilience (review-resilience): Effective dependency/feature metadata, exact version-matched recovery documentation and paired fault/restart/cancellation proof are unavailable.
Code/docs agreement (review-consistency): Authoritative paired reachable public item/member/link/documentation closure is unavailable for both libraries. Static document inspection does not complete this required area.
Output-only public API (review-public-api): Real full paired API captures, matching extraction configurations and comparisons are unavailable for both libraries. The fresh isolated filter completed an empty claim set, not extraction.
Public API documentation (review-public-docs): Paired rustdoc captures, extraction configuration and authoritative item resolution are unavailable across all four present package/revision sides; none of the 24 requested configuration cells has an accepted capture. Inventories are unknown, not empty.
Required local Rust/Cargo/rustup and PR/dependency execution is prohibited on the shared credentialed host. No authorized isolated service or sufficient paired captures was available. Existing matched provider results do not substitute for the missing evidence.
No combined verdict is issued. Findings below come only from completed areas. They identify statically established losses of regression-test assertions, not proved production failures. Existing discussion roots are not re-filed.
Use the root manifest's declared Rust version directly for MSRV setup, validation, and tests, leaving internal environments to expose equivalent compilers under that public rustup name.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
The reason will be displayed to describe this comment to others. Learn more.
Posted by an AI agent
Warning: Incomplete review
I reviewed source-level public contracts, correctness, test preservation, performance, naming, telemetry, resilience and documentation across 8cedad4f..0d403bab, targeting main. I could not check:
Public API surfaces of cargo-anvil and cargo-gamma-lib: matching generated API listings were unavailable, and running Rust tools on this host is not permitted.
No local tests or benchmarks were run. Existing CI observations do not establish before/after behavioral equivalence. No overall verdict is given. The comments below cover three lost regression protections, Miri documentation drift and one naming nit; existing discussions are not repeated.
When a repository has both a root rust-version and a rust-toolchain.toml/rust-toolchain, this initializes setup_toolchain from ANVIL_RUST_VERSION and line 48 exports it as RUSTUP_TOOLCHAIN for the whole setup. The setup recipes then install rustfmt/clippy and other components into the MSRV toolchain, while container runs mount the checkout and let its root toolchain file select a different channel; those components are not installed for the channel the recipes actually use. Prefer the copied toolchain file when present and use ANVIL_RUST_VERSION only when neither file exists.
Merge current main into the consolidated Anvil architecture, adopt cargo-each's optional workspace-version contract, and replace MSRV, stable validation, all-targets, PR-title, and tier wrapper PowerShell logic with direct Just and tool invocations.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Pin cargo-each 0.4.0, use its optional workspace-version contract for stable and MSRV selection, replace PowerShell wrappers in all-targets, PR-title, stable validation, and tier scoping, and regenerate owned files and snapshots.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Redirect per-package cargo-bolero discovery into a deterministic temporary JSON Lines file and execute the discovered targets through cargo-each 0.4 record mode, removing the PowerShell parsing and fan-out loop.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Store discovered Bolero targets in target/bolero-list-<just-pid>.jsonl, create target through an idempotent _ensure-target-dir recipe after impact calculation, and remove the handoff after successful execution.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
Integrate live GitHub PR-title lookup for workflow reruns while retaining consolidated .anvil action paths, Just-based title validation, and removal of legacy SemVer advisory wiring.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: a9fc919b-99f7-4134-aad1-2116321b4e0c
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 Consolidates cargo-anvil's generated footprint and replaces recipe-side orchestration with released domain-tool interfaces.
Summary
.anvil/manifest.tomlwith safe legacy migration and conflict detection.anvil/anvil.just,.anvil/checks.just,.anvil/setup.just, and.anvil/container.just.anvil/github/actions/and ADO implementation templates to.anvil/ado/, while retaining externally discovered workflow and pipeline stubs{workspace-rust-version}contract: absent root declarations use Cargo's default toolchain and dedicated MSRV recipes become native empty-plan no-opstarget/bolero-list-<just-pid>.jsonl, consumed by cargo-each 0.4 record mode and removed after successno-runexclusions, Miri profile flags, cargo-mutants working-tree diffs, and fail-closed container input checksDeliberate boundaries
.github/workflows/and ADO registration files remain under.pipelines/because those locations are externally discovered.delta.tomlandspellcheck.tomlremain managed-region hosts because their tools do not support layered configurationValidation
just anvil-fmt --fixcargo clippy -p cargo-anvil --all-targets --all-features --locked -- -D warningscargo test -p cargo-anvil --all-features --no-fail-fastcargo run --package cargo-anvil -- anvil --dry-run