release: bump Opcore to 0.2.2 - #301
Merged
Merged
Conversation
Version bump only; no behavior change beyond the fix already merged in #298. - bumps all 17 workspace package versions and their exact internal dependency pins - bumps the Cargo workspace version and the three native artifactVersion values (binaries and checksums are unchanged; the CI native matrix rebuilds them for publish) - updates the hardcoded release version in check-workspace, release-dry-run, and release-publish, plus RELEASE_VERSION and OPCORE_CONFIRM_PUBLISH in release.yml - adds docs/release/v0.2.2.md, which the release workflow uses verbatim - backfills CHANGELOG entries for 0.2.0 and 0.2.1, which shipped undocumented Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TytwH459JMysvWDj1PopjH
Five assertions pin the released version and must move with it: - opcore-facade: `opcore --version` human output and runtimeInfo.version - native-packaging-policy: OPCORE_CONFIRM_PUBLISH in release.yml - graph-core-artifact: the unsupported-Windows message - asp-provider: the canonical ASP server manifest version Left every other 0.2.1 in tests/ alone; those are inert fixtures (sample Cargo.toml versions, schema-contract payloads, fake host versions) that do not compare against the live release version. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TytwH459JMysvWDj1PopjH
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bump Opcore to
0.2.2so the nested-workspace fix from #298 can actually reach users.npm view opcore versionis0.2.1and the repo was0.2.1, so promotingdevtomainas-is would have short-circuited inrelease-publish.mjswithalready published; ensuring dist-tagand shipped nothing.The fix itself is #298, already merged to
devatffc828c.Changes
artifactVersionin the three nativemetadata.jsonfiles. Binaries and checksums are untouched, and each binary still matches both its.sha256and its metadata checksum. The CI native-artifact matrix rebuilds all three for the actual publish, the same waydarwin-x64was handled in 0.2.1.scripts/check-workspace.mjs,scripts/release-dry-run.mjs,scripts/release-publish.mjs, plusRELEASE_VERSIONandOPCORE_CONFIRM_PUBLISHin.github/workflows/release.yml.runtime-info.ts,timing.ts,graph/src/serve.ts,graph/src/artifact.ts, andasp-provider/src/protocol.ts. Leftpackages/opcore/src/try.tsalone: that0.2.1is the sample repo's own Cargo version, not ours.opcore --versionoutput andruntimeInfo.version,OPCORE_CONFIRM_PUBLISH, the unsupported-Windows message, and the ASP server manifest). Every other0.2.1intests/is an inert fixture and stays put.docs/release/v0.2.2.md. The release workflow uses that file verbatim for the GitHub release, so it has to exist beforemainmoves.CHANGELOG.mdbackfilled for 0.2.0 and 0.2.1, which both shipped without entries, plus the 0.2.2 entry.Verification
Local, macOS darwin-arm64:
node scripts/check-workspace.mjspasses at 0.2.2.OPCORE_REQUIRE_ALL_NATIVE_PACKAGES=1 npm run release:dry-runpasses at 0.2.2.npm run graph-release:checkandnpm run release-receipt:checkpass without regenerating receipts, which are content-checksummed rather than version-pinned.check --changed --repo packages/appreportsopcore 0.2.2, runs 25 checks, catches the app'sTS2322atsrc/index.ts, and correctly excludes the sibling package. Before fix(validation): support nested Git workspace roots #298 the same command returnedinfrastructure_failurewith zero checks executed.asp-provider,graph-core-artifact,native-packaging-policy,opcore-facade): 101 tests, all passing after the assertion updates in e1d3d0b.Correction
An earlier version of this description claimed the 7 full-suite failures I saw were environmental and reproduced on unmodified
dev. That was wrong, and I had not finished the baseline run when I wrote it. The real numbers on this machine: unmodifieddevfails 3 (ASP dogfood receipt,cutover release receipt,installed package bins, all needing packed artifacts or a pinned Ruff), and the bump added 4 more. Those 4 were genuine version-assertion failures, now fixed in e1d3d0b. CI is the authority.One thing to decide before merging to main
crates/has moved substantially sincev0.2.1(39 files), so the native binaries committed in git are stale relative to currentdev. That predates this PR and is what #227 is about. It does not block publish, because the release workflow consumes CI native artifacts rather than the committed ones, but the in-repo binaries will not match what ships.After this
Merge here, then open the
dev -> mainpromotion PR. That promotion is wherenative-artifactandaggregateactually run, since both are gated onmain. Merging it triggers main CI and the automated npm release foropcore@0.2.2.