Skip to content

fix(workers): pin Bazel version for the four worker subtrees#433

Merged
balajinvda merged 1 commit into
mainfrom
fix/worker-bazelversion-pin
Jul 25, 2026
Merged

fix(workers): pin Bazel version for the four worker subtrees#433
balajinvda merged 1 commit into
mainfrom
fix/worker-bazelversion-pin

Conversation

@balajinvda

@balajinvda balajinvda commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Why

Follow-up to #432, same root cause, different file.

The release image is built from an isolated subtree snapshot. In that snapshot the subtree's own MODULE.bazel is the Bazel workspace root, so bazelisk resolves .bazelversion from the subtree and never sees the umbrella's root pin. Four subtrees ship no .bazelversion:

.bazelversion subtrees
pinned 15 releasable subtrees
MISSING worker-init, worker-llm-credentials, worker-task, worker-utils

So their release builds run whatever bazelisk considers latest. The worker-llm-credentials v1.0.6 release build (nvcf-internal pipeline 59468597) downloaded Bazel 9.2.0, while this repo pins 9.1.1:

2026/07/24 20:11:01 Downloading https://releases.bazel.build/9.2.0/release/bazel-9.2.0-linux-x86_64...

That is non-reproducible by construction, and it means an upstream Bazel release can break these release builds with no change in this repo. All four workers release actively (worker-init v1.0.9, worker-task v1.0.7, worker-utils v1.0.7, worker-llm-credentials v1.0.6), so all four are exposed.

#432 fixes the missing .bazelrc for worker-llm-credentials, but adds no .bazelversion, so this is still needed for all four.

What changed

Add .bazelversion pinned to 9.1.1 (matching the root .bazelversion) to worker-init, worker-llm-credentials, worker-task, and worker-utils. After this, every subtree with a MODULE.bazel carries its own pin.

Customer Release Notes

Not customer visible.

Testing

USE_BAZEL_VERSION=9.1.1 bazel build //... in src/compute-plane-services/worker-utils completes successfully (2115 actions, exit 0), confirming these subtrees build on the pinned version rather than only on latest.

The public mirror already carries sibling .bazelrc and .bazelversion files, so no OSS allowlist change is needed for the release snapshot to pick these up.

Notes

Separate pre-existing drift, not addressed here: the 15 subtrees that do pin are on 8.6.0 while the root pins 9.1.1. Worth converging, but it is a behavior change for those services and belongs in its own change.

References

Follows #432. nvcf-internal pipeline 59468597.

Related Merge Requests/Pull Requests

#432 (adds the missing subtree .bazelrc for worker-llm-credentials).

Dependencies

None.

Summary by CodeRabbit

  • Chores
    • Standardized the build configuration across compute-plane services to use Bazel version 9.1.1.
    • Improves consistency and reliability for service builds.

The release image is built from an isolated subtree snapshot, where the
subtree's own MODULE.bazel is the workspace root, so bazelisk resolves
.bazelversion from the subtree and never sees the umbrella's root pin. The
four worker subtrees ship no .bazelversion, so their release builds run
whatever bazelisk considers latest: the worker-llm-credentials v1.0.6 release
build downloaded Bazel 9.2.0 while the repo pins 9.1.1 and the other 15
releasable subtrees pin their own version.

That makes those builds non-reproducible and lets an upstream Bazel release
break them with no change in this repo. Pin all four to 9.1.1, matching the
root .bazelversion.

Same root cause as the missing subtree .bazelrc fixed in #432 (the snapshot
does not carry umbrella root files); that PR covers .bazelrc for
worker-llm-credentials only, so .bazelversion is still needed for all four.

Verified: worker-utils builds clean under USE_BAZEL_VERSION=9.1.1
(bazel build //..., 2115 actions).

Co-authored-by: Balaji Ganesan <bganesan@nvidia.com>
@balajinvda
balajinvda requested a review from a team as a code owner July 24, 2026 21:48
@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 7ddb2220-754f-4a77-930d-a87e3eb729a4

📥 Commits

Reviewing files that changed from the base of the PR and between 698e3e9 and 6120f31.

📒 Files selected for processing (4)
  • src/compute-plane-services/worker-init/.bazelversion
  • src/compute-plane-services/worker-llm-credentials/.bazelversion
  • src/compute-plane-services/worker-task/.bazelversion
  • src/compute-plane-services/worker-utils/.bazelversion

📝 Walkthrough

Walkthrough

The pull request adds or updates .bazelversion files for four compute-plane worker services, pinning each to Bazel 9.1.1.

Changes

Bazel version pinning

Layer / File(s) Summary
Pin worker Bazel versions
src/compute-plane-services/worker-*/.bazelversion
The worker-init, worker-llm-credentials, worker-task, and worker-utils Bazel configuration files now specify version 9.1.1.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Suggested reviewers: kristinapathak

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title follows Conventional Commits and accurately reflects the PR’s Bazel version pinning fix for the worker subtrees.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/worker-bazelversion-pin

Comment @coderabbitai help to get the list of available commands.

@balajinvda
balajinvda added this pull request to the merge queue Jul 25, 2026
Merged via the queue into main with commit 68991a9 Jul 25, 2026
18 checks passed
@balajinvda
balajinvda deleted the fix/worker-bazelversion-pin branch July 25, 2026 01:17
@balajinvda

Copy link
Copy Markdown
Contributor Author

🎉 This PR is included in version nvcf-worker-init-v1.0.10 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

@balajinvda

Copy link
Copy Markdown
Contributor Author

🎉 This PR is included in version nvcf-worker-utils-v1.0.8 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

@balajinvda

Copy link
Copy Markdown
Contributor Author

🎉 This PR is included in version nvcf-worker-llm-credentials-v1.0.8 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

@balajinvda

Copy link
Copy Markdown
Contributor Author

🎉 This PR is included in version nvcf-worker-task-v1.0.8 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants