chore: prepare 0.2 code freeze#103
Conversation
Signed-off-by: David Gardner <dagardner@nvidia.com>
WalkthroughVersion 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. ChangesVersion 0.3.0 Release
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
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
⛔ Files ignored due to path filters (2)
Cargo.lockis excluded by!**/*.lockpackage-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (4)
.github/nightly-alpha-branches.yamlCargo.tomlcrates/node/package.jsonintegrations/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 followdocs/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.jsonversion aligned with the workspace-rootpackage-lock.jsonunderpackages["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.jsonCargo.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-nodefor 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.jsonversion aligned with the workspace-rootpackage-lock.jsonunderpackages["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 checkfor Rust dependency auditing as configured indeny.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 --allto maintain consistent Rust code style
Cargo.toml: KeepCargo.toml[workspace.package].versionas the source of truth for the Rust workspace and Python build versioning
KeepCargo.toml[workspace.dependencies]self-references aligned when the workspace version changes, includingnemo-flow.version,nemo-flow-adaptive.version, andnemo-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 asrelease/<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.yamlto 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.yamland.github/workflows/nightly-alpha-tag.yamlwith 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!
Salonijain27
left a comment
There was a problem hiding this comment.
Approved from a dependency point of view
|
/merge |
Overview
Prepare the NeMo Flow
0.2.0code freeze by cutting the release branch and movingmainforward for post-freeze development.Details
release/0.2fromupstream/mainat47e3414, where the workspace version is0.2.0.release/0.2to.github/nightly-alpha-branches.yamlso nightly alpha tags continue for the frozen release branch.just set-version 0.3.0to bumpmainpackage metadata and refreshedCargo.lockwithcargo check --workspace.0.2.0should now targetrelease/0.2; ongoing development PRs continue to targetmain.Validation:
cargo check --workspacejust set-version 0.3.0uv 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 --checkuv run pre-commit run --files .github/nightly-alpha-branches.yaml Cargo.toml Cargo.lock crates/node/package.json integrations/openclaw/package.json package-lock.jsonNote: the Ruby YAML validation command from the freeze checklist could not be run locally because
rubyis not installed; the Python YAML parse above covered the same files, and pre-commitcheck yamlpassed.Where should the reviewer start?
Start with
.github/nightly-alpha-branches.yamlto confirm the release branch is included, thenCargo.tomlfor themainversion bump to0.3.0.Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)
Summary by CodeRabbit