Repository navigation
build(release): call the reusable release workflow with the inputs it now requires - #230
Merged
Merged
Conversation
…d permissions it now requires Every Release run since 65155c7 is startup_failure: the caller passed tools-ref, which the reusable no longer declares, omitted the required ci-workflow input, and granted no actions: write. The reusable runs version-management and github-release-management from this repo's dev shell, which did not provide them, and bump reads the root package.json version, which was absent (VersionIntentMalformed: path=package.json). The root takes 0.0.0: it is private, outside pnpm-workspace.yaml packages, never packed into workspace-tarballs, and the changesets strategy only reads it Verdict-Semantics: unchanged
…s into version-management bump writes each moved member's section to release.jsonc changelogDir (.changeset/changelogs) without creating it, and #196 left that directory empty, so git dropped it and bump failed with ChangelogUnwritable ... NotFound. The guard only reads *.md there Verdict-Semantics: unchanged
Contributor
There was a problem hiding this comment.
Verified: CI 11/11 green on 2e9cc4f, before/after bump + plan evidence, root 0.0.0 not a workspace member.
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
Every Release run since 65155c7 failed at startup, and before that the version job failed with
VersionIntentMalformed: path=package.json. So nothing after 17.0.2 shipped, including #225-#228. This PR fixes both on our side. pnpm-release-management is unchanged.release.yml): dropstools-ref, which the reusablerelease.yml@mainno longer declares. Passes the now-requiredci-workflow: ci.ymland grantsactions: write, which the reusable needs to dispatch CI on the release PR branch.ci.yml: acceptsworkflow_dispatch, so that dispatch has something to run.package.json: gets"version": "0.0.0". With thechangesetsstrategy,version-managementreads the root manifest throughROOT_TARGET(apps/version-management/src/boundary.tstargetsOf).bump.tsthen callssurfaces.readSurfaceon it unconditionally, before branching on strategy. The root isprivateand not a workspace member:pnpm-workspace.yamlpackages:lists onlytest/*,packages/*,packages/toolchain/*,packages/ignorers/*andpackages/frameworks/*. That means it is never packed intoworkspace-tarballsand never tagged. Its namestryker-js-effectcannot collide with any@systemfsoftware/*member tag. Underchangesets,writeChangesetswrites only cargo surfaces and member changelogs, so0.0.0stays put on every release.flake.nix: the default dev shell includes the pinnedpnpm-release-managementrelease-tools. The reusable runsnix develop --command version-management …andgithub-release-management …, and before this change those binaries were not in our shell (version-management: not found, exit 127)..changeset/changelogs/.gitkeep:version-management bumpwrites each member's section intochangelogDir(.changeset/changelogs) and does not create the directory. build(release): publish per-package workspace tarballs from the flake #196 left that directory empty, so git dropped it. With only the fixes above,bumpexited 1. Adding this commit was the only change, and the next run exited 0.flake.lockis unchanged. The pinnedpnpm-release-management603ecb49 already includes thechangesetsrename (ca932ae, #33) and the--tarballsplan. The commits on its main after the pin don't matter here: #34 (aaba9ed) only affects workspaces with no public package, and we have public packages.Evidence
a.
version-management bump, run in throwaway checkouts and discarded afterwards:Before, on origin/main
f06f244fa, using the pinnedrelease-tools:(With plain
nix developon main:version-management: not found, exit 127.)After, on this branch
2e9cc4ff4:It consumed all 20 pending intents. Member versions moved:
It also wrote 18
.changeset/changelogs/<pkg>@<v>.mdfiles. It printed 38must depend on the current version … vs catalog:strykernotices. Those are the intendedcatalog:strykerdogfood pins (AGENTS.md START-6) and do not fail the command.b. Plan phase:
nix build .#workspace-tarballsexits 0 and contains 17 tarballs plusindex.json. Then:c. Workflow lint: actionlint 1.7.12, pinned through the flake's nixpkgs, exits 0 on
release.ymlandci.yml. The repo has no workflow lint of its own.d. CI: green on the head (see checks).
Local gates:
format:check,lint:conventions,guard:projectsandnix flake checkall pass. No publishable package changed, so no changeset is needed.Known gap, outside this repo
Under the repo's
versioning.changelog.storage: repository(#196), the release PR thatbumpproduces will failguard:projects(CHANGELOG-SECTIONS): 35 errors. Thebumprun above shows why.ChangelogStoreLive.writeMemberChangelog(pnpm-release-managementpackages/workspace-adapter) always writes a parkedchangelogDir/<pkg>@<v>.mdfile. It never writes the section into the package'sCHANGELOG.md. Meanwhilegithub-release-engine/cycle.tsreads${member.dir}/CHANGELOG.mdunderrepository. Both sides belong to pnpm-release-management, so this PR does not touch them.Nothing was run with stryker.
Verdict-Semantics: unchanged