Skip to content

[ci] Run audited semver checks in parallel - #3587

Open
joshlf wants to merge 1 commit into
Gcl7ijadfh2m7eft4ucy5czoaghddreiqfrom
Gqs4rhblhbsqga3glvc6tfjnakpdspo3b
Open

[ci] Run audited semver checks in parallel#3587
joshlf wants to merge 1 commit into
Gcl7ijadfh2m7eft4ucy5czoaghddreiqfrom
Gqs4rhblhbsqga3glvc6tfjnakpdspo3b

Conversation

@joshlf

@joshlf joshlf commented Aug 25, 2026

Copy link
Copy Markdown
Member

Move semver checks out of selected build_test cells and into a
standalone target-only matrix derived by the typed planner. Reduced
events select the three targets covered by the matching ordinary-build
slice; full events select all nine configured, non-waived targets.
Publish that matrix and its enable gate with the other checked outputs,
and include every decision in the versioned plan artifact.

Give each semver cell a fresh hosted runner which depends only on
plan_ci. It can start in parallel with Docker image construction and the
ordinary matrix instead of waiting for an image download, image load,
and complete ordinary build in its former build_test cell. The expected
critical-path saving is roughly that formerly serialized setup and build
duration; the exact wall-clock improvement remains runner- and
cache-dependent.

Keep checkout, commit-message skip handling, and the pinned action in
one exactly audited three-step job. Derive the action's static inputs
from checked policy and Cargo metadata, model its logical work and exact
inputs in execution-parity checks, and reject extra job fields, steps,
conditions, environment, or workflow authority.

Use matrix.target for both rust-target and prefix-key. The action's
automatic baseline-rustdoc cache key omits the Rust target. This keeps
concurrent targets from reading and writing one cache entry. Adapt only
the historical job name and missing cache prefix at the frozen-evidence
boundary; the live plan and workflow remain strict.

Make build_test end at its typed executor, register the new planned job,
and audit both the target-only matrix consumer and its planner output
protocol.

Tests: ./tools/cargo.sh test -p zc
Tests: ./tools/cargo.sh clippy -p zc --all-targets --offline --
-D warnings
Tests: ./ci/check_actions.sh

Authored by an agent, posting via joshlf's account


Latest Update: v9 — Compare vs v8

📚 Full Patch History

Links show the diff between the row version and the column version.

Version v8 v7 v6 v5 v4 v3 v2 v1 Base
v9 v8 v7 v6 v5 v4 v3 v2 v1 Base
v8 v7 v6 v5 v4 v3 v2 v1 Base
v7 v6 v5 v4 v3 v2 v1 Base
v6 v5 v4 v3 v2 v1 Base
v5 v4 v3 v2 v1 Base
v4 v3 v2 v1 Base
v3 v2 v1 Base
v2 v1 Base
v1 Base
⬇️ Download this PR

Branch

git fetch origin refs/heads/Gqs4rhblhbsqga3glvc6tfjnakpdspo3b && git checkout -b pr-Gqs4rhblhbsqga3glvc6tfjnakpdspo3b FETCH_HEAD

Checkout

git fetch origin refs/heads/Gqs4rhblhbsqga3glvc6tfjnakpdspo3b && git checkout FETCH_HEAD

Cherry Pick

git fetch origin refs/heads/Gqs4rhblhbsqga3glvc6tfjnakpdspo3b && git cherry-pick FETCH_HEAD

Pull

git pull origin refs/heads/Gqs4rhblhbsqga3glvc6tfjnakpdspo3b

Stacked PRs enabled by GHerrit.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e53b901bb4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread tools/zc/src/semver_adapter.rs Outdated
Comment thread tools/zc/src/semver_adapter.rs Outdated
Comment thread tools/zc/src/semver_adapter.rs Outdated
@joshlf
joshlf force-pushed the Gqs4rhblhbsqga3glvc6tfjnakpdspo3b branch from e53b901 to 08726ef Compare August 25, 2026 18:32
@joshlf
joshlf force-pushed the Gvwvbb4qvqvk2nt4mdo3fp333lmrtmydn branch from 2c3096c to 01b16a9 Compare August 25, 2026 18:32
@joshlf
joshlf changed the base branch from Gvwvbb4qvqvk2nt4mdo3fp333lmrtmydn to Gcl7ijadfh2m7eft4ucy5czoaghddreiq August 25, 2026 18:40

joshlf commented Aug 25, 2026

Copy link
Copy Markdown
Member Author

Authored by an agent, posting via joshlf's account

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🚀

Reviewed commit: 08726ef78a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@joshlf
joshlf force-pushed the Gcl7ijadfh2m7eft4ucy5czoaghddreiq branch from 89b8771 to f9ea695 Compare August 25, 2026 22:48
@joshlf
joshlf force-pushed the Gqs4rhblhbsqga3glvc6tfjnakpdspo3b branch from 08726ef to 762a0dc Compare August 25, 2026 22:48
@codecov-commenter

codecov-commenter commented Aug 25, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.85%. Comparing base (104d5a2) to head (7a4ccf8).

Additional details and impacted files
@@                        Coverage Diff                         @@
##           Gcl7ijadfh2m7eft4ucy5czoaghddreiq    #3587   +/-   ##
==================================================================
  Coverage                              91.85%   91.85%           
==================================================================
  Files                                     20       20           
  Lines                                   6093     6093           
==================================================================
  Hits                                    5597     5597           
  Misses                                   496      496           

☔ 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.

joshlf commented Aug 25, 2026

Copy link
Copy Markdown
Member Author

Authored by an agent, posting via joshlf's account

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ecf9460695

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread tools/zc/src/semver_adapter.rs
Comment thread tools/zc/src/semver_adapter.rs
Comment thread tools/zc/src/semver_adapter.rs
@joshlf
joshlf force-pushed the Gqs4rhblhbsqga3glvc6tfjnakpdspo3b branch from ecf9460 to 456f2d4 Compare August 26, 2026 01:28
@joshlf
joshlf force-pushed the Gcl7ijadfh2m7eft4ucy5czoaghddreiq branch from 438d2d3 to 135f323 Compare August 26, 2026 01:28
@joshlf joshlf changed the title [ci] Audit the semver action adapter [ci] Run audited semver checks in parallel Aug 26, 2026
Move semver checks out of selected build_test cells and into a
standalone target-only matrix derived by the typed planner. Reduced
events select the three targets covered by the matching ordinary-build
slice; full events select all nine configured, non-waived targets.
Publish that matrix and its enable gate with the other checked outputs,
and include every decision in the versioned plan artifact.

Give each semver cell a fresh hosted runner which depends only on
plan_ci. It can start in parallel with Docker image construction and the
ordinary matrix instead of waiting for an image download, image load,
and complete ordinary build in its former build_test cell. The expected
critical-path saving is roughly that formerly serialized setup and build
duration; the exact wall-clock improvement remains runner- and
cache-dependent.

Keep checkout, commit-message skip handling, and the pinned action in
one exactly audited three-step job. Derive the action's static inputs
from checked policy and Cargo metadata, model its logical work and exact
inputs in execution-parity checks, and reject extra job fields, steps,
conditions, environment, or workflow authority.

Use matrix.target for both rust-target and prefix-key. The action's
automatic baseline-rustdoc cache key omits the Rust target. This keeps
concurrent targets from reading and writing one cache entry. Adapt only
the historical job name and missing cache prefix at the frozen-evidence
boundary; the live plan and workflow remain strict.

Make build_test end at its typed executor, register the new planned job,
and audit both the target-only matrix consumer and its planner output
protocol.

Tests: ./tools/cargo.sh test -p zc
Tests: ./tools/cargo.sh clippy -p zc --all-targets --offline --
       -D warnings
Tests: ./ci/check_actions.sh

*Authored by an agent, posting via joshlf's account*

gherrit-pr-id: Gqs4rhblhbsqga3glvc6tfjnakpdspo3b
@joshlf
joshlf force-pushed the Gqs4rhblhbsqga3glvc6tfjnakpdspo3b branch from 456f2d4 to 7a4ccf8 Compare August 26, 2026 01:31
@joshlf
joshlf force-pushed the Gcl7ijadfh2m7eft4ucy5czoaghddreiq branch from 135f323 to 104d5a2 Compare August 26, 2026 01:31

joshlf commented Aug 26, 2026

Copy link
Copy Markdown
Member Author

Authored by an agent, posting via joshlf's account

@codex review

Please review the current head. Treat earlier reviews of older commits as stale.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7a4ccf8c0f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/ci.yml
if: ${{ always() }}
runs-on: ubuntu-latest
needs: [build_test, miri, codegen, coverage, kani, check_be_aarch64, check_avr_atmega, check_fmt, check_tools, check_actions, check_readme, check_versions, check_msrv_is_minimal, check_stale_stderr, check-job-dependencies, check-todo, run-git-hooks, zizmor, build_docker_env, plan_ci]
needs: [build_test, miri, semver, codegen, coverage, kani, check_be_aarch64, check_avr_atmega, check_fmt, check_tools, check_actions, check_readme, check_versions, check_msrv_is_minimal, check_stale_stderr, check-job-dependencies, check-todo, run-git-hooks, zizmor, build_docker_env, plan_ci]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Account for a disabled semver matrix in aggregation

When a valid reduced-event policy gives none of the semver target-set members pr_eligible, plan_ci emits semver_enabled=false and this newly added dependency is skipped. However, Require every dependency to succeed only permits a skipped Miri job—or otherwise requires every result to be success—so the additional semver skip makes all-jobs-succeed fail despite the checked plan being valid. Validate the semver outputs and pass the semver gate/result into the aggregation predicate just as is done for Miri.

Useful? React with 👍 / 👎.

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