Prepare v0.4.0
Bump the crate and the pub.dev launcher to 0.4.0. The npm, PyPI and NuGet manifests stay on their placeholder versions on purpose — those channels read the version from the release tag at publish time. Also record the actual release flow in the git skill: release branch into development, development into main, tag the main merge commit. Co-Authored-By: siGit Code <297239231+sigitc@users.noreply.github.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Seto Elkahfi committed
Jul 22, 2026 at 21:46 UTC
9d2026d69a61de82e55f364a6d68fad922ae23c0
5 files changed
+38
-7
.agents/skills/git/SKILL.md
+31
-4
@@ -15,21 +15,47 @@ user-invocable: true
15
16
- Do not fast-forward merge feature branches, release branches, or hotfix branches.
17
- Prefer explicit merge commits so the branch history stays visible.
18
-- If release prep happens on a branch, merge it into `main` with `--no-ff` before tagging.
18
+- Release prep goes through `development` on its way to `main`, with `--no-ff` at every hop.
19
- Tag the merge commit that contains the final release state.
20
21
-## Release guidance
21
+## Branch flow
22
+
23
+Feature branches merge into `development`. Releases go:
24
+
25
+```
26
+release/vX.Y.Z -> development -> main
27
+```
28
23
-For releases, prefer a flow like this:
29
+Never merge a release branch straight into `main` — `development` has to carry the
30
+release state too, or the next feature branch starts from a base that is missing it.
31
+
32
+## Release guidance
33
34
```bash
35
+# 1. cut the release branch from development, commit the version bumps
36
+git checkout development
37
+git checkout -b release/vX.Y.Z
38
+git commit -am "Prepare vX.Y.Z"
39
+
40
+# 2. release branch -> development
41
+git checkout development
42
+git merge --no-ff release/vX.Y.Z -m "Merge release prep for vX.Y.Z"
43
+
44
+# 3. development -> main
45
git checkout main
27
-git merge --no-ff <release-branch> -m "Merge release prep for vX.Y.Z"
46
+git merge --no-ff development -m "Merge development for vX.Y.Z"
47
+
48
+# 4. tag the main merge commit, then push
49
git tag vX.Y.Z
50
+git push origin development
51
git push origin main
52
git push origin vX.Y.Z
53
```
54
55
+The tag belongs on the step-3 merge commit on `main`, not on the release branch and not
56
+on `development`. Pushing the tag is what triggers the wrapper publish workflows, which
57
+read the version from the tag.
58
+
59
If the work is already on `main`, make a normal commit and tag that commit. Do not rewrite history just to avoid a merge commit.
60
61
## Avoid
@@ -37,6 +63,7 @@ If the work is already on `main`, make a normal commit and tag that commit. Do n
63
- `git merge --ff`
64
- `git pull --ff-only` as a default recommendation for this repo's merge policy
65
- Tagging a branch tip that has not been merged into `main` when the intended release source of truth is `main`
66
+- Merging a release branch directly into `main`, skipping `development`
67
68
## Why
69
Cargo.lock
+1
-1
@@ -3360,7 +3360,7 @@ dependencies = [
3360
3361
[[package]]
3362
name = "onde-cli"
3363
-version = "0.3.1"
3363
+version = "0.4.0"
3364
dependencies = [
3365
"anyhow",
3366
"candle-core",
Cargo.toml
+1
-1
@@ -1,6 +1,6 @@
1
[package]
2
name = "onde-cli"
3
-version = "0.3.1"
3
+version = "0.4.0"
4
edition = "2024"
5
description = "Terminal UI to fine-tune model and manage your Onde Inference account."
6
license = "MIT OR Apache-2.0"
pub/onde_cli/CHANGELOG.md
+4
@@ -1,3 +1,7 @@
1
+## 0.4.0
2
+
3
+- Launcher tracks CLI 0.4.0, which adds the MCP server mode and catalog publishing.
4
+
5
## 0.3.1
6
7
- Release alignment and workflow updates.
pub/onde_cli/pubspec.yaml
+1
-1
@@ -1,6 +1,6 @@
1
name: onde_cli
2
description: Dart launcher for the Onde Inference CLI that downloads the right native binary on first run.
3
-version: 0.3.1
3
+version: 0.4.0
4
homepage: https://ondeinference.com
5
repository: https://github.com/ondeinference/onde-cli
6
issue_tracker: https://github.com/ondeinference/onde-cli/issues