Report an accurate version from main builds - #1222
Conversation
Main's workspace version had been left at 0.72.1 since the release process moved version bumping into the Release workflow, so local builds from main reported a version three releases behind. - bump workspace/SDK/manifest versions to 0.76.0-dev via scripts/release-version.sh - record the actually-released 0.73.0, 0.74.0, 0.75.0 and 0.75.1 in known_mesh_llm_versions() instead of the dev version - keep user-facing SDK/docs examples pointing at the released 0.75.1
📝 WalkthroughWalkthroughThe PR updates workspace and local dependency versions to ChangesRelease Version Alignment
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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 `@website/src/docs/pages/CLI.md`:
- Line 34: Update the local source-build example in CLI.md to use mesh-llm
0.76.0-dev+gABCDEF.dirty, while preserving the 0.75.1 value on Line 33 for the
released-version example.
🪄 Autofix
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: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 3d60a38b-8849-477d-ae00-94007a442653
⛔ Files ignored due to path filters (2)
Cargo.lockis excluded by!**/*.lockcrates/mesh-llm-ui/package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (45)
Cargo.tomlcrates/mesh-client/Cargo.tomlcrates/mesh-llm-api-client/Cargo.tomlcrates/mesh-llm-api-server/Cargo.tomlcrates/mesh-llm-cli/Cargo.tomlcrates/mesh-llm-commands/Cargo.tomlcrates/mesh-llm-config/Cargo.tomlcrates/mesh-llm-config/src/model/built_in_schema.rscrates/mesh-llm-config/src/model/built_in_schema/presentation.rscrates/mesh-llm-console-server/Cargo.tomlcrates/mesh-llm-embedded-runtime/Cargo.tomlcrates/mesh-llm-hardware-profile/Cargo.tomlcrates/mesh-llm-host-runtime/Cargo.tomlcrates/mesh-llm-native-runtime/README.mdcrates/mesh-llm-node/Cargo.tomlcrates/mesh-llm-nodejs/Cargo.tomlcrates/mesh-llm-runtime-install/Cargo.tomlcrates/mesh-llm-sdk/Cargo.tomlcrates/mesh-llm-sdk/README.mdcrates/mesh-llm-system/Cargo.tomlcrates/mesh-llm-tui/Cargo.tomlcrates/mesh-llm-ui/package.jsoncrates/mesh-llm/Cargo.tomlcrates/mesh-mixture-of-agents/Cargo.tomlcrates/mesh-native-serving-plugin-host/Cargo.tomlcrates/model-artifact/Cargo.tomlcrates/model-hf/Cargo.tomlcrates/model-package/Cargo.tomlcrates/model-resolver/Cargo.tomlcrates/openai-frontend/Cargo.tomlcrates/skippy-cache/Cargo.tomlcrates/skippy-protocol/Cargo.tomlcrates/skippy-runtime/Cargo.tomlcrates/skippy-server/Cargo.tomldocs/SDK.mddocs/design/NATIVE_RUNTIMES.mddocs/sdk/rust.mddocs/sdk/swift.mdsdk/kotlin/README.mdsdk/kotlin/build.gradle.ktssdk/kotlin/example/example-jvm/build.gradle.ktssdk/node/package.jsonsdk/swift/README.mdsdk/swift/scripts/generate-swift-bindings.shwebsite/src/docs/pages/CLI.md
| Release builds report the released package version, such as `mesh-llm 0.72.1`. | ||
| Local source builds may include build metadata, such as `mesh-llm 0.72.1+gABCDEF.dirty`, so you can tell exactly which commit produced the binary. Compatibility checks, native-runtime cache paths, and release identity still use the plain release version. | ||
| Release builds report the released package version, such as `mesh-llm 0.75.1`. | ||
| Local source builds may include build metadata, such as `mesh-llm 0.75.1+gABCDEF.dirty`, so you can tell exactly which commit produced the binary. Compatibility checks, native-runtime cache paths, and release identity still use the plain release version. |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Use the development version for the local source-build example.
0.75.1 is the released package version. A build from main should identify itself as 0.76.0-dev. Change the example to mesh-llm 0.76.0-dev+gABCDEF.dirty. Keep Line 33 at 0.75.1.
Proposed documentation fix
-Local source builds may include build metadata, such as `mesh-llm 0.75.1+gABCDEF.dirty`, so you can tell exactly which commit produced the binary.
+Local source builds may include build metadata, such as `mesh-llm 0.76.0-dev+gABCDEF.dirty`, so you can tell exactly which commit produced the binary.As per the PR objective, binaries built from main must identify themselves as development builds, while released documentation examples use 0.75.1.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| Local source builds may include build metadata, such as `mesh-llm 0.75.1+gABCDEF.dirty`, so you can tell exactly which commit produced the binary. Compatibility checks, native-runtime cache paths, and release identity still use the plain release version. | |
| Local source builds may include build metadata, such as `mesh-llm 0.76.0-dev+gABCDEF.dirty`, so you can tell exactly which commit produced the binary. Compatibility checks, native-runtime cache paths, and release identity still use the plain release version. |
🤖 Prompt for 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.
In `@website/src/docs/pages/CLI.md` at line 34, Update the local source-build
example in CLI.md to use mesh-llm 0.76.0-dev+gABCDEF.dirty, while preserving the
0.75.1 value on Line 33 for the released-version example.
|
Closing — wrong shape. This fixes the symptom (main's stale version) by hand-correcting generated output, and defers the actual cause (nothing keeps main's version honest, and Replacing with targeted changes: crates.io publish-map validation first (it has a live consequence — 0.75.1 published no crates), then a structural fix for the version drift. |
What this changes for you
Binaries built from
mainnow report0.76.0-devinstead of0.72.1.Before this, a fresh
just buildfrommainreported 0.72.1 — three releases behind the published v0.75.1. That directly undermined the deploy checklist inAGENTS.md, which tells you to verifymesh-llm --versionon every node to confirm a binary is new code. A dev build claiming0.72.1was indistinguishable from a genuinely stale one.The
-devsuffix also makes a dev build self-identifying: if you see0.76.0-devon a node, you know it is not a release binary.Config settings that offer a mesh-llm version now list the versions that actually shipped —
0.75.1,0.75.0,0.74.0, and0.73.0were all missing fromknown_mesh_llm_versions(), so recent releases could not be selected.Why main drifted
The Release workflow runs
scripts/release-version.shon a throwaway "prepare release source" commit, tags it, and pushes only the tag — never the version bump back tomain. Every release tag carries the correct version (verified:v0.73.0→0.73.0,v0.74.0→0.74.0,v0.75.0→0.75.0), so published artifacts were always right, which is why this went unnoticed. Main's version was last touched by hand in7a809522(2026-06-30) — the commit that moved bumping into the workflow.This PR is the manual catch-up. Automating a post-release bump-back is a separate change.
Notes for review
Generated with
scripts/release-version.sh 0.76.0-dev, then two hand corrections where the script's literal string replacement produced values that would be wrong:known_mesh_llm_versions()is a list of released versions used as a config validation enum. The script prepended0.76.0-dev; replaced with the four real releases that were missing.mesh-llm-sdk = "...", release download URLs, SwiftPMfrom:) were rewritten to0.76.0-dev, which will never exist on crates.io or as a release URL. Pointed at0.75.1instead.sdk/kotlin/build.gradle.kts, the Kotlin JVM example, andgenerate-swift-bindings.shintentionally keep0.76.0-dev— those are the projects' own version declarations and should track the workspace dev version.Validation
Summary by CodeRabbit
Release Updates
Documentation