Skip to content

fix(release): bump the internal hamma-core pin and Cargo.lock with the release - #71

Merged
forkwright merged 1 commit into
mainfrom
fix/70-release-please-internal-pins
Jul 28, 2026
Merged

fix(release): bump the internal hamma-core pin and Cargo.lock with the release#71
forkwright merged 1 commit into
mainfrom
fix/70-release-please-internal-pins

Conversation

@forkwright

Copy link
Copy Markdown
Owner

Fixes the recurring release breakage described in #70.

release-please-config.json rewrote exactly one value — [workspace.package] version. Members inherit it via version.workspace = true, but two other places name the same version and were left behind: the workspace-dependency requirement hamma-core = { path = "crates/hamma-core", version = "0.1.0" } and the two workspace-member entries in Cargo.lock. A release that moves the minor therefore makes the workspace unresolvable.

#58 (chore: release main, 0.1.0 -> 0.2.0) fails the required cargo deny check with failed to select a version for the requirement hamma-core = "^0.1.0", and that is the only red check left on it. Patch releases hid this because ^0.1.0 still admits 0.1.x.

Changes

Two extra-files entries added to the existing package block:

  • $.workspace.dependencies.hamma-core.version — zetesis carries one such entry per internal workspace dependency for exactly this reason.
  • $.package[?(!@.source)].version on Cargo.lock — harmonia and koinon both carry this, so the lock's source-less (workspace-member) entries move with the release.

Both are fleet-established shapes rather than new local invention.

Verification

The premise was exercised both ways against a real 0.2.0 bump, since release-please's own behaviour is only observable when it regenerates the PR:

  • Bumping $.workspace.package.version alone — what the config does today — reproduces the exact CI failure: cargo metadata exits 101 with failed to select a version for the requirement hamma-core = "^0.1.0".
  • Applying that plus the two edits the new entries produce resolves clean (exit 0).

So the added jsonpaths are confirmed to name the values that actually break, not merely plausible ones. kanon gate --tier full is green on this branch.

Once this lands, #58 needs release-please to regenerate its branch so the bump includes the new edits.

Refs #70

…e release
release-please rewrote one value: `[workspace.package] version`. Every
member inherits it through `version.workspace = true`, but two places
that name the same version were left behind -- the workspace-dependency
requirement `hamma-core = { path = ..., version = "0.1.0" }` and the two
workspace-member entries in `Cargo.lock`.
So a release that moves the minor makes the workspace unresolvable: the
requirement still demands `^0.1.0` while the crate it points at is now
`0.2.0`. #58 fails the required `cargo deny` check on exactly that, and
it was the only red check left on it. Patch releases hid the defect
because `^0.1.0` still admits `0.1.x`.
Both added jsonpaths are shapes already carried elsewhere in the fleet
for this reason: zetesis lists one entry per internal workspace
dependency, and harmonia and koinon both track Cargo.lock's
source-less (workspace-member) entries.
Verified by applying each edit set to a 0.2.0 bump and resolving:
workspace-version-only reproduces `failed to select a version for the
requirement hamma-core = "^0.1.0"`; with both edits the workspace
resolves clean.
Refs #70
Gate-Passed: kanon 0.1.12 +stages:fmt,check,clippy,nextest,lint sha:21bcdd83f563c219536e3601494ab15667b6cc14
@forkwright
forkwright merged commit dfdfc35 into mainJul 28, 2026
7 checks passed
@forkwright
forkwright deleted the fix/70-release-please-internal-pins branch July 28, 2026 21:08
@github-actionsgithub-actionsBot mentioned this pull request Jul 28, 2026
forkwright pushed a commit that referenced this pull request Jul 28, 2026
🤖 I have created a release *beep* *boop*
---
<details><summary>0.2.0</summary>
## [0.2.0](v0.1.0...v0.2.0)
(2026-07-28)
### Features
* **_llm:** add T0 corpus per
[#667](https://github.com/forkwright/hamma/issues/667) /
[#673](https://github.com/forkwright/hamma/issues/673) fleet rollout
([#10](#10))
([0568f51](0568f51))
* **control:** instrument async control client entry points
([#37](#37))
([e80622f](e80622f)),
closes [#20](#20)
* **control:** support zstd map responses
([dd5ab90](dd5ab90))
* **dictyon:** add TCP/TLS connection, registration, and map streaming
([a311d8a](a311d8a))
* **dictyon:** control protocol types and map response parser
([dfc25c7](dfc25c7))
* **dictyon:** migrate tracing init to koinon
([e5a4260](e5a4260))
* **dictyon:** Noise IK handshake, key types, HTTP transport skeleton
([aafea4f](aafea4f))
* **dictyon:** trace wire noise transport phases
([#38](#38))
([2d80231](2d80231)),
closes [#20](#20)
### Bug Fixes
* **cargo:** track lockfile for pinned rust toolchain
([#30](#30))
([e6a2f01](e6a2f01)),
closes [#29](#29)
* **ci:** resolve cargo-deny + MSRV + binary smoke failures
([#13](#13))
([9bb4533](9bb4533))
* **ci:** waive gate attestation by PR author, not by github.actor
([#69](#69))
([764422e](764422e)),
closes [#68](#68)
* **control:** accept node id peer removals
([7debc6b](7debc6b))
* **control:** apply peer patch map deltas
([#33](#33))
([dfc3731](dfc3731))
* **core:** parse peer patch map fields
([0686a66](0686a66))
* **deps:** clear RUSTSEC-2026-0190 via anyhow lockfile bump
([#56](#56))
([2423485](2423485))
* **lint:** add non_exhaustive to public error enums, mark public-key
fields
([0355297](0355297))
* **lint:** mechanical wins — allow→expect, indexing/slicing, casts,
http→https
([9e339db](9e339db))
* **lint:** resolve clippy warnings in hamma-core and wire integration
test ([#42](#42))
([079ad5e](079ad5e))
* **lint:** suppress pub-visibility for library API surface
([6d54674](6d54674))
* **lint:** unblock kanon gate
([f93ff63](f93ff63))
* **release:** bump the internal hamma-core pin and Cargo.lock with the
release ([#71](#71))
([dfdfc35](dfdfc35)),
closes [#70](#70)
* resolve 1 lint violations via local
([#8](#8))
([0d4aa84](0d4aa84))
### Refactoring
* **dictyon:** replace expect with ? and rename test helper
([#9](#9))
([655b783](655b783))
* **lint:** split oversized modules; add hamma-core integration tests
([fa8f54f](fa8f54f))
* rename plegma→hamma, plegma-core→hamma-core
([a67f792](a67f792))
### Documentation
* add CLAUDE.md precedence preamble
(forge[#153](https://github.com/forkwright/hamma/issues/153))
([e91ebea](e91ebea))
* add CONTRIBUTING.md for 05e cutover
([#1](#1))
([9dd5f87](9dd5f87))
* add llms.txt per kanon doc standards (refs
[#10](#10))
([#11](#11))
([e869fe1](e869fe1))
* **agents:** add AGENTS.md per fleet repo-structure standard
([#40](#40))
([0382da1](0382da1))
* **hamma:** align pre-alpha status
([#6](#6))
([873a6c3](873a6c3))
* **hamma:** replace standards copy with kanon pointer
([#8](#8))
([324ff18](324ff18))
* sanitize local bootstrap docs
([4c57d40](4c57d40))
* **standards:** add canonical standards from kanon
([#1](#1))
([81e5007](81e5007))
</details>
---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@forkwright