The README, getting-started and quickstart now install and add skills from the current release, v0.7.4, instead of v0.7.3. docs/releases/README.md says it holds the per-release notes for v0.1.12 through v0.6.3 plus v0.6.12, points to CHANGELOG.md and GitHub Releases for later ones, and its release steps match how releases are published now. Shipped skills and the kernel culture no longer route to a skill that isn't shipped: rig-lifecycle points to rig context get help, the kernel culture's restart case points to getting-started's "Incomplete setup and restart", and the dead sibling entries are dropped. Both skill copies stay identical and their digests are updated. 12 files, +28 -56: docs, skill text and the digest file only; no code change.
Release Notes
This directory holds one note per release for OpenRig v0.1.12 through v0.6.3, plus v0.6.12 (for example v0.1.12.md).
Notes for later releases are in CHANGELOG.md and on the GitHub Releases page.
Minimal Process
For each release:
-
Add the release's section to
CHANGELOG.md. -
Write the release's GitHub Release notes. No new file is added to this directory.
-
Run the substance gate at the exact release cut. The gate derives every file under the shipped pack sources, verifies a hash-bound human judgment and an individual disposition for each mechanical candidate, scans the complete npm artifact set derived by the packager, and writes the durable receipt. The receipt records both artifact and scanned file lists; their artifact-minus-scanned diff must be empty. The review JSON carries one entry per file:
{ "surfaces": [{ "path": "packages/daemon/context-packs-src/example/guide.md", "sha256": "<sha256 of the reviewed bytes>", "verdict": "ship", "reason": "Generic product guidance.", "candidateDispositions": [] }] }Assemble the package first, then run the named gate from the same clean worktree with the judge and cut SHA explicit. The assembly emits the substance roots it actually staged; the gate never carries its own root list. A non-shipping human verdict is one of
instance-fact,internal-path,position-knowledge, orlore-classand carries its reason in the same per-file entry:bash scripts/build-package.sh npm run gate:substance -- \ --review /path/to/substance-review.json \ --receipt /path/to/substance-receipt.json \ --judge <seat-or-person> \ --cut-sha "$(git rev-parse HEAD)"A missing/stale judgment, an undispositioned candidate, internal substance, a lore-classed pack, a failed full artifact scan, or any artifact absent from the scanned set refuses the cut.
-
Create a git tag for the release:
git tag vX.Y.Z git push origin vX.Y.Z -
Create the GitHub Release with the notes from step 2:
gh release create vX.Y.Z \ --repo mvschwarz/openrig \ --title "OpenRig X.Y.Z" \ --notes-file <release-notes.md> -
Publish the npm package.
Guidance
- Prefer user-facing language over commit-log language.
- Group related fixes into a small number of bullets.
- Be explicit about operator-impacting changes: setup, permissions, startup state, restore, recovery, and environment notes.
- Keep internal refactors out unless they materially change user behavior or operator confidence.
- If verification was limited, say so directly.
Scope
This directory is a release-note archive, not a full historical changelog taxonomy.