Skip to content

chore: prepare 0.2 code freeze#103

Merged
rapids-bot[bot] merged 1 commit into
NVIDIA:mainfrom
dagardner-nv:docs/code-freeze-0.2
May 14, 2026
Merged

chore: prepare 0.2 code freeze#103
rapids-bot[bot] merged 1 commit into
NVIDIA:mainfrom
dagardner-nv:docs/code-freeze-0.2

Conversation

@dagardner-nv
Copy link
Copy Markdown
Contributor

@dagardner-nv dagardner-nv commented May 13, 2026

Overview

Prepare the NeMo Flow 0.2.0 code freeze by cutting the release branch and moving main forward for post-freeze development.

  • I confirm this contribution is my own work, or I have the right to submit it under this project's license.
  • I searched existing issues and open pull requests, and this does not duplicate existing work.

Details

  • Created upstream release branch release/0.2 from upstream/main at 47e3414, where the workspace version is 0.2.0.
  • Added release/0.2 to .github/nightly-alpha-branches.yaml so nightly alpha tags continue for the frozen release branch.
  • Ran just set-version 0.3.0 to bump main package metadata and refreshed Cargo.lock with cargo check --workspace.
  • Release-bound PRs for 0.2.0 should now target release/0.2; ongoing development PRs continue to target main.

Validation:

  • cargo check --workspace
  • just set-version 0.3.0
  • uv run python -c 'import yaml; [yaml.safe_load(open(path, encoding="utf-8")) for path in (".github/nightly-alpha-branches.yaml", ".github/workflows/nightly-alpha-tag.yaml")]'
  • git diff --check
  • uv run pre-commit run --files .github/nightly-alpha-branches.yaml Cargo.toml Cargo.lock crates/node/package.json integrations/openclaw/package.json package-lock.json

Note: the Ruby YAML validation command from the freeze checklist could not be run locally because ruby is not installed; the Python YAML parse above covered the same files, and pre-commit check yaml passed.

Where should the reviewer start?

Start with .github/nightly-alpha-branches.yaml to confirm the release branch is included, then Cargo.toml for the main version bump to 0.3.0.

Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)

  • Relates to: none

Summary by CodeRabbit

  • Chores
    • Version updated to 0.3.0 across workspace and package manifests.
    • Added release/0.2 branch to nightly build configuration.

Review Change Stack

Signed-off-by: David Gardner <dagardner@nvidia.com>
@dagardner-nv dagardner-nv requested review from a team as code owners May 13, 2026 23:58
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 13, 2026

Walkthrough

Version bump from 0.2.0 to 0.3.0 across Rust workspace packages, Node packages, and CI branch configuration. Workspace dependencies in Cargo.toml and package versions in crates/node and integrations/openclaw updated. release/0.2 branch added to nightly-alpha-branches.yaml for automated alpha builds.

Changes

Version 0.3.0 Release

Layer / File(s) Summary
Rust workspace version coordination
Cargo.toml
[workspace.package] version and all nemo-flow* workspace dependency versions bumped from 0.2.0 to 0.3.0, preserving path references and feature configuration.
Node package versions
crates/node/package.json, integrations/openclaw/package.json
Package versions updated from 0.2.0 to 0.3.0 across Node packages.
CI nightly alpha branch configuration
.github/nightly-alpha-branches.yaml
Added release/0.2 to the branches list for nightly alpha build automation.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • NVIDIA/NeMo-Flow#95: Release workflow automation that consumes the nightly-alpha-branches configuration to drive alpha tagging from the configured branches.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed Title follows Conventional Commits format with type 'chore', no scope, no breaking change indicator, is concise and under 72 characters.
Description check ✅ Passed Description includes all required template sections with comprehensive details about the code freeze, validation steps performed, and clear reviewer guidance.
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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@github-actions github-actions Bot added size:S PR is small Maintenance CI or Build or general repository maintenance labels May 13, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Cargo.toml`:
- Around line 25-28: This change updates multiple crate versions in Cargo.toml
(nemo-flow, nemo-flow-adaptive, nemo-flow-ffi, nemo-flow-cli) but lacks the
required dependency-audit evidence; run `cargo deny check` in the repo root
(using the existing deny.toml) and attach the command output to the PR (or add
it to the release-prep artifacts) so the audit for these Cargo.toml changes is
recorded—if `cargo deny` reports issues, fix or document them, then re-run and
include the successful/updated report with the PR.

In `@crates/node/package.json`:
- Line 3: This change bumps the Node binding version in crates/node/package.json
("version": "0.3.0") but lacks evidence that the Node tests passed; run the test
loop by checking out the branch and executing the command just test-node,
capture the full terminal output (or CI job log) showing all tests passing, and
attach that output to the PR (or paste it in a review comment) so there is proof
that the Node binding tests passed for this version bump.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: f74874e1-828b-4b9c-a8e6-6273eeaa9a73

📥 Commits

Reviewing files that changed from the base of the PR and between 47e3414 and 8f36067.

⛔ Files ignored due to path filters (2)
  • Cargo.lock is excluded by !**/*.lock
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (4)
  • .github/nightly-alpha-branches.yaml
  • Cargo.toml
  • crates/node/package.json
  • integrations/openclaw/package.json
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Check / Run
🧰 Additional context used
📓 Path-based instructions (16)
**/{integrations,integration,*-integration}/**

📄 CodeRabbit inference engine (.agents/skills/contribute-integration/SKILL.md)

**/{integrations,integration,*-integration}/**: Keep NeMo Flow optional in framework integrations
Preserve the framework's original behavior when NeMo Flow is absent
Wrap tool and LLM paths at the correct framework boundary
Integration pattern must follow docs/integrate-frameworks/adding-scopes.md

Files:

  • integrations/openclaw/package.json
integrations/openclaw/package.json

📄 CodeRabbit inference engine (.agents/skills/update-project-version/SKILL.md)

Keep integrations/openclaw/package.json version aligned with the workspace-root package-lock.json under packages["integrations/openclaw"].version

Files:

  • integrations/openclaw/package.json
{Cargo.toml,pyproject.toml,go/nemo_flow/go.mod,package.json,package-lock.json,crates/node/package.json}

📄 CodeRabbit inference engine (.agents/skills/maintain-packaging/SKILL.md)

Maintain consistent package names, import paths, and module names across Rust, Python, Go, Node, and WebAssembly workspaces in NeMo Flow

Files:

  • crates/node/package.json
  • Cargo.toml
crates/node/**/*.{ts,tsx,js,jsx,json}

📄 CodeRabbit inference engine (.agents/skills/test-node-binding/SKILL.md)

Format changed Node files with npm run format --workspace=nemo-flow-node

Files:

  • crates/node/package.json
crates/node/**

📄 CodeRabbit inference engine (.agents/skills/test-node-binding/SKILL.md)

Run just test-node for the normal dev/test loop when working on Node binding changes

Files:

  • crates/node/package.json
crates/node/package.json

📄 CodeRabbit inference engine (.agents/skills/update-project-version/SKILL.md)

Keep crates/node/package.json version aligned with the workspace-root package-lock.json under packages["crates/node"].version

Files:

  • crates/node/package.json
crates/{python,ffi,node,wasm}/**/*

⚙️ CodeRabbit configuration file

crates/{python,ffi,node,wasm}/**/*: Treat binding changes as public API changes. Check for parity with the other language bindings, FFI ownership/lifetime safety,
callback error propagation, stable type conversion, and consistent async/stream semantics.
Flag changes that update one binding without corresponding tests or documentation for the same surface elsewhere.

Files:

  • crates/node/package.json
**/Cargo.{toml,lock}

📄 CodeRabbit inference engine (CONTRIBUTING.md)

Run cargo deny check for Rust dependency auditing as configured in deny.toml

Files:

  • Cargo.toml
**/*.toml

📄 CodeRabbit inference engine (CONTRIBUTING.md)

Include SPDX license headers in TOML files using TOML comment syntax

Files:

  • Cargo.toml
{Cargo.toml,setup.py,setup.cfg,pyproject.toml,go.mod,go.sum,package.json,package-lock.json,yarn.lock,pom.xml,*.gradle}

📄 CodeRabbit inference engine (.agents/skills/rename-surfaces/SKILL.md)

Update repository manifest files (Cargo.toml, setup.py, go.mod, package.json, etc.) with new package/crate names during rename operations

Files:

  • Cargo.toml
Cargo.toml

📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)

Format Rust project files with cargo fmt --all to maintain consistent Rust code style

Cargo.toml: Keep Cargo.toml [workspace.package].version as the source of truth for the Rust workspace and Python build versioning
Keep Cargo.toml [workspace.dependencies] self-references aligned when the workspace version changes, including nemo-flow.version, nemo-flow-adaptive.version, and nemo-flow-ffi.version

Files:

  • Cargo.toml
**/Cargo.toml

📄 CodeRabbit inference engine (.agents/skills/prepare-code-freeze/SKILL.md)

Confirm or infer the target release version from upstream/main:Cargo.toml. Derive the release branch as release/<major>.<minor>

Files:

  • Cargo.toml
{.github/**/*.{yml,yaml},*.patch,scripts/**/*,*.sh,*.bat,Dockerfile*}

📄 CodeRabbit inference engine (.agents/skills/rename-surfaces/SKILL.md)

Update CI configuration, patch files, and build scripts with new functional identifiers after rename operations

Files:

  • .github/nightly-alpha-branches.yaml
.github/nightly-alpha-branches.yaml

📄 CodeRabbit inference engine (.agents/skills/prepare-code-freeze/SKILL.md)

Update .github/nightly-alpha-branches.yaml to include the new release branch during code freeze preparation

Files:

  • .github/nightly-alpha-branches.yaml
.github/{nightly-alpha-branches.yaml,workflows/nightly-alpha-tag.yaml}

📄 CodeRabbit inference engine (.agents/skills/prepare-code-freeze/SKILL.md)

Validate .github/nightly-alpha-branches.yaml and .github/workflows/nightly-alpha-tag.yaml with YAML parsing during code freeze validation

Files:

  • .github/nightly-alpha-branches.yaml
{.github/**,.gitlab-ci.yml,.pre-commit-config.yaml,justfile,scripts/**}

⚙️ CodeRabbit configuration file

{.github/**,.gitlab-ci.yml,.pre-commit-config.yaml,justfile,scripts/**}: Review automation changes for reproducibility, pinned versions where appropriate, secret handling, and consistency with the documented validation matrix.
Pay attention to commands that need generated native artifacts, FFI libraries, or platform-specific environment variables.

Files:

  • .github/nightly-alpha-branches.yaml
🔇 Additional comments (3)
.github/nightly-alpha-branches.yaml (1)

6-6: LGTM!

integrations/openclaw/package.json (1)

3-3: LGTM!

Cargo.toml (1)

19-19: LGTM!

Comment thread Cargo.toml
Comment thread crates/node/package.json
Copy link
Copy Markdown
Collaborator

@Salonijain27 Salonijain27 left a comment

Choose a reason for hiding this comment

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

Approved from a dependency point of view

@willkill07
Copy link
Copy Markdown
Member

/merge

@rapids-bot rapids-bot Bot merged commit 954d961 into NVIDIA:main May 14, 2026
41 checks passed
@willkill07 willkill07 added this to the 0.3 milestone May 14, 2026
@coderabbitai coderabbitai Bot mentioned this pull request May 15, 2026
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Maintenance CI or Build or general repository maintenance size:S PR is small

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants