Skip to content

ci(v8): gate Windows source builds on relevant changes - #27715

Merged
cconger merged 4 commits into
mainfrom
cconger/gate-v8-windows-source-canary
Jun 12, 2026
Merged

ci(v8): gate Windows source builds on relevant changes#27715
cconger merged 4 commits into
mainfrom
cconger/gate-v8-windows-source-canary

Conversation

@cconger

@cconger cconger commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Avoid rebuilding sandboxed Windows MSVC V8 artifacts for unrelated changes to codex-rs/Cargo.toml.

The V8 canary now compares the resolved V8 version between the base and head commits and only runs the Windows source-build matrix when:

  • the resolved V8 crate version changes;
  • Windows artifact-production scripts or workflows change; or
  • the workflow is manually dispatched.

The existing Bazel V8 matrix is unchanged.

Why

The Windows MSVC source builds take roughly two to three hours and currently run whenever any entry in the broad v8-canary path filter changes.

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

Copy link
Copy Markdown
Contributor

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: 30c334f609

ℹ️ 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/scripts/v8_canary_changes.py
Comment thread .github/scripts/v8_canary_changes.py Outdated


def changed_files(base: str, head: str) -> set[str]:
output = git_output("diff", "--name-only", "--no-renames", base, head)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Codex thinks this is going to miss some things:

git diff base head includes changes made only on main after a PR branched. A stale PR can therefore unnecessarily trigger the two multi-hour Windows builds. PR comparisons should use the merge base, matching GitHub’s three-dot comparison model.

Seems legit?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Nice. Yes this is updated now with the test for it.

Comment thread .github/scripts/v8_canary_changes.py
Comment thread .github/scripts/v8_canary_changes.py
@cconger
cconger merged commit 16c7c79 into main Jun 12, 2026
46 checks passed
@cconger
cconger deleted the cconger/gate-v8-windows-source-canary branch June 12, 2026 01:44
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 12, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants