From 2493ce190e7f1061c148f28c7c1eca985a7e08c5 Mon Sep 17 00:00:00 2001 From: Stackwright Bot Date: Fri, 15 May 2026 13:46:10 -0400 Subject: [PATCH 1/6] fix(ci): resolve js-yaml override conflict breaking changeset pre exit --- .changeset/fix-js-yaml-override-conflict.md | 5 +++ package.json | 9 +++-- pnpm-lock.yaml | 40 +++++++++++++++------ 3 files changed, 39 insertions(+), 15 deletions(-) create mode 100644 .changeset/fix-js-yaml-override-conflict.md diff --git a/.changeset/fix-js-yaml-override-conflict.md b/.changeset/fix-js-yaml-override-conflict.md new file mode 100644 index 00000000..c5edcbf0 --- /dev/null +++ b/.changeset/fix-js-yaml-override-conflict.md @@ -0,0 +1,5 @@ +--- +"@stackwright/cli": patch +--- + +Fix js-yaml version override conflict in pnpm overrides that caused `yaml.safeLoad is removed` errors when running `changeset pre exit` in CI. The global `js-yaml: >=4.1.1` override was stomping the scoped `read-yaml-file>js-yaml: ^3` override, forcing js-yaml v4 into read-yaml-file which doesn't support it. diff --git a/package.json b/package.json index 3ebad323..bb948b75 100644 --- a/package.json +++ b/package.json @@ -93,11 +93,10 @@ "@hono/node-server": ">=1.19.13", "basic-ftp": ">=5.3.1", "express-rate-limit": ">=8.2.2", - "uuid": ">=14.0.0", - "fast-uri": ">=3.1.2", - "js-yaml": ">=4.1.1", - "read-yaml-file>js-yaml": "^3", - "postcss": ">=8.5.10" + "uuid": ">=14.0.0", + "fast-uri": ">=3.1.2", + "read-yaml-file>js-yaml": "^3", + "postcss": ">=8.5.10" }, "onlyBuiltDependencies": [ "@swc/core", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bc7ff55e..e42e55cb 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -33,7 +33,6 @@ overrides: express-rate-limit: '>=8.2.2' uuid: '>=14.0.0' fast-uri: '>=3.1.2' - js-yaml: '>=4.1.1' read-yaml-file>js-yaml: ^3 postcss: '>=8.5.10' @@ -123,7 +122,7 @@ importers: specifier: ^7.1.0 version: 7.3.0 js-yaml: - specifier: '>=4.1.1' + specifier: ^4.1.1 version: 4.1.1 lucide-react: specifier: ^1.8.0 @@ -181,7 +180,7 @@ importers: specifier: workspace:* version: link:../types js-yaml: - specifier: '>=4.1.1' + specifier: ^4.1.0 version: 4.1.1 zod: specifier: ^4.3.6 @@ -215,7 +214,7 @@ importers: specifier: ^11.3 version: 11.3.4 js-yaml: - specifier: '>=4.1.1' + specifier: ^4.1.0 version: 4.1.1 playwright: specifier: ^1.52.0 @@ -283,7 +282,7 @@ importers: specifier: ^7.1.0 version: 7.3.0 js-yaml: - specifier: '>=4.1.1' + specifier: ^4.1.0 version: 4.1.1 prismjs: specifier: ^1.30.0 @@ -520,7 +519,7 @@ importers: specifier: workspace:* version: link:../types js-yaml: - specifier: '>=4.1.1' + specifier: ^4.1.0 version: 4.1.1 devDependencies: '@swc/core': @@ -565,7 +564,7 @@ importers: packages/sbom-generator: dependencies: js-yaml: - specifier: '>=4.1.1' + specifier: ^4.1.0 version: 4.1.1 zod: specifier: ^4.3.6 @@ -603,7 +602,7 @@ importers: packages/themes: dependencies: js-yaml: - specifier: '>=4.1.1' + specifier: ^4 version: 4.1.1 zod: specifier: ^4.3.6 @@ -646,7 +645,7 @@ importers: specifier: workspace:* version: link:../themes js-yaml: - specifier: '>=4.1.1' + specifier: ^4.1.0 version: 4.1.1 zod: specifier: ^4.3.6 @@ -3227,6 +3226,9 @@ packages: any-promise@1.3.0: resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} @@ -4571,6 +4573,10 @@ packages: js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + js-yaml@3.14.2: + resolution: {integrity: sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==} + hasBin: true + js-yaml@4.1.1: resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} hasBin: true @@ -5572,6 +5578,9 @@ packages: resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} engines: {node: '>=0.10.0'} + sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + stable-hash@0.0.5: resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} @@ -8629,6 +8638,10 @@ snapshots: any-promise@1.3.0: {} + argparse@1.0.10: + dependencies: + sprintf-js: 1.0.3 + argparse@2.0.1: {} aria-query@5.3.0: @@ -10144,6 +10157,11 @@ snapshots: js-tokens@4.0.0: {} + js-yaml@3.14.2: + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + js-yaml@4.1.1: dependencies: argparse: 2.0.1 @@ -10898,7 +10916,7 @@ snapshots: read-yaml-file@1.1.0: dependencies: graceful-fs: 4.2.11 - js-yaml: 4.1.1 + js-yaml: 3.14.2 pify: 4.0.1 strip-bom: 3.0.0 @@ -11287,6 +11305,8 @@ snapshots: dependencies: extend-shallow: 3.0.2 + sprintf-js@1.0.3: {} + stable-hash@0.0.5: {} stackback@0.0.2: {} From ffce9aa9786ff4d8f9c3ef208fb733caa6b9d894 Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 15 May 2026 18:11:12 +0000 Subject: [PATCH 2/6] chore: bump prerelease versions --- .changeset/pre.json | 4 ++++ packages/cli/CHANGELOG.md | 16 ++++++++++++++++ packages/cli/package.json | 2 +- packages/collections/CHANGELOG.md | 14 ++++++++++++++ packages/collections/package.json | 2 +- packages/hooks-registry/CHANGELOG.md | 15 +++++++++++++++ packages/hooks-registry/package.json | 2 +- packages/launch-stackwright/CHANGELOG.md | 10 ++++++++++ packages/launch-stackwright/package.json | 2 +- packages/mcp/CHANGELOG.md | 8 ++++++++ packages/mcp/package.json | 2 +- packages/scaffold-core/CHANGELOG.md | 18 ++++++++++++++++++ packages/scaffold-core/package.json | 2 +- 13 files changed, 91 insertions(+), 6 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 75aeae53..b528248e 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -23,10 +23,14 @@ }, "changesets": [ "collection-provider-interfaces-to-types", + "collections-types-cleanup", "fix-cli-bundle-workspace-deps", "fix-core-dts-zod-compat", + "fix-js-yaml-override-conflict", "fix-scaffold-template-versions", "fix-types-prebuild-plugin-zod-compat", + "generate-agent-docs-interfaces", + "hookhandler-reexport", "remove-workspace-prepublish-guard", "scaffold-hook-interfaces-to-types", "workspace-publish-guards", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 667defa1..b14eac57 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,21 @@ # @stackwright/cli +## 0.8.5-alpha.1 + +### Patch Changes + +- 182a4da: Fix js-yaml version override conflict in pnpm overrides that caused `yaml.safeLoad is removed` errors when running `changeset pre exit` in CI. The global `js-yaml: >=4.1.1` override was stomping the scoped `read-yaml-file>js-yaml: ^3` override, forcing js-yaml v4 into read-yaml-file which doesn't support it. +- e6b3459: feat(cli): generate-agent-docs now emits an interface contracts table + + A new auto-generated section in AGENTS.md documents the TypeScript interface + contracts defined in `@stackwright/types`: + - CollectionProvider, CollectionEntry, CollectionListOptions, CollectionListResult + - ScaffoldHookContext, ScaffoldHook, HookHandler, ScaffoldHookType + + The section is delimited by `` markers + and updated by `pnpm stackwright -- generate-agent-docs` alongside the existing + content-type-table. This completes Phase 1 step 8 of the types-hierarchy-refactor. + ## 0.8.5-alpha.0 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index b4dd1a44..4ec5c216 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/cli", - "version": "0.8.5-alpha.0", + "version": "0.8.5-alpha.1", "description": "CLI for Stackwright framework", "license": "MIT", "repository": { diff --git a/packages/collections/CHANGELOG.md b/packages/collections/CHANGELOG.md index 896fc1d1..26bfb6e1 100644 --- a/packages/collections/CHANGELOG.md +++ b/packages/collections/CHANGELOG.md @@ -1,5 +1,19 @@ # @stackwright/collections +## 0.1.1-alpha.4 + +### Patch Changes + +- e6b3459: chore(collections): remove duplicate CollectionProvider definitions + + `file-collection-provider.ts` now imports `CollectionProvider`, `CollectionEntry`, + `CollectionListOptions`, and `CollectionListResult` directly from `@stackwright/types` + rather than from the local `./types` file. + + `types.ts` is converted to a re-export shim so any unexpected downstream imports + remain backward-compatible. This completes the Phase 1 cleanup from the + types-hierarchy-refactor. + ## 0.1.1-alpha.3 ### Patch Changes diff --git a/packages/collections/package.json b/packages/collections/package.json index 1977f096..81c4e115 100644 --- a/packages/collections/package.json +++ b/packages/collections/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/collections", - "version": "0.1.1-alpha.3", + "version": "0.1.1-alpha.4", "description": "CollectionProvider interface and file-backed implementation for Stackwright", "license": "MIT", "repository": { diff --git a/packages/hooks-registry/CHANGELOG.md b/packages/hooks-registry/CHANGELOG.md index 79ca1724..e12b765a 100644 --- a/packages/hooks-registry/CHANGELOG.md +++ b/packages/hooks-registry/CHANGELOG.md @@ -1,5 +1,20 @@ # @stackwright/hooks-registry +## 0.1.1-alpha.3 + +### Patch Changes + +- e6b3459: fix(scaffold-core): export HookHandler type from hooks-registry and scaffold-core + + `HookHandler` is the canonical type alias for scaffold hook handler functions, + defined in `@stackwright/types`. It was re-exported by `hooks-registry/src/hooks.ts` + but not forwarded through `index.ts`, making it unavailable via the public package + import paths. + + Both `@stackwright/hooks-registry` and `@stackwright/scaffold-core` now re-export + `HookHandler` alongside the other scaffold hook types. This completes Phase 1 step 4 + of the types-hierarchy-refactor. + ## 0.1.1-alpha.2 ### Patch Changes diff --git a/packages/hooks-registry/package.json b/packages/hooks-registry/package.json index 735c8550..8369934d 100644 --- a/packages/hooks-registry/package.json +++ b/packages/hooks-registry/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/hooks-registry", - "version": "0.1.1-alpha.2", + "version": "0.1.1-alpha.3", "description": "Singleton registry for scaffold hooks - survives module boundary crossings", "license": "MIT", "repository": { diff --git a/packages/launch-stackwright/CHANGELOG.md b/packages/launch-stackwright/CHANGELOG.md index 26fb9b8a..1edb6e87 100644 --- a/packages/launch-stackwright/CHANGELOG.md +++ b/packages/launch-stackwright/CHANGELOG.md @@ -1,5 +1,15 @@ # launch-stackwright +## 0.2.5-alpha.3 + +### Patch Changes + +- Updated dependencies [182a4da] +- Updated dependencies [e6b3459] +- Updated dependencies [e6b3459] + - @stackwright/cli@0.8.5-alpha.1 + - @stackwright/scaffold-core@0.3.1-alpha.3 + ## 0.2.5-alpha.2 ### Patch Changes diff --git a/packages/launch-stackwright/package.json b/packages/launch-stackwright/package.json index 495fcfb9..e139f464 100644 --- a/packages/launch-stackwright/package.json +++ b/packages/launch-stackwright/package.json @@ -1,6 +1,6 @@ { "name": "launch-stackwright", - "version": "0.2.5-alpha.2", + "version": "0.2.5-alpha.3", "description": "Launch a new Stackwright project with the otter raft ready to build", "license": "MIT", "repository": { diff --git a/packages/mcp/CHANGELOG.md b/packages/mcp/CHANGELOG.md index 9ccca92d..c364f919 100644 --- a/packages/mcp/CHANGELOG.md +++ b/packages/mcp/CHANGELOG.md @@ -1,5 +1,13 @@ # @stackwright/mcp +## 0.4.5-alpha.4 + +### Patch Changes + +- Updated dependencies [182a4da] +- Updated dependencies [e6b3459] + - @stackwright/cli@0.8.5-alpha.1 + ## 0.4.5-alpha.3 ### Patch Changes diff --git a/packages/mcp/package.json b/packages/mcp/package.json index 553a212d..68118a4d 100644 --- a/packages/mcp/package.json +++ b/packages/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/mcp", - "version": "0.4.5-alpha.3", + "version": "0.4.5-alpha.4", "description": "MCP server for Stackwright — exposes content types, page management, and validation as agent tools", "license": "MIT", "repository": { diff --git a/packages/scaffold-core/CHANGELOG.md b/packages/scaffold-core/CHANGELOG.md index 45afb2d3..0e5e9f39 100644 --- a/packages/scaffold-core/CHANGELOG.md +++ b/packages/scaffold-core/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## 0.3.1-alpha.3 + +### Patch Changes + +- e6b3459: fix(scaffold-core): export HookHandler type from hooks-registry and scaffold-core + + `HookHandler` is the canonical type alias for scaffold hook handler functions, + defined in `@stackwright/types`. It was re-exported by `hooks-registry/src/hooks.ts` + but not forwarded through `index.ts`, making it unavailable via the public package + import paths. + + Both `@stackwright/hooks-registry` and `@stackwright/scaffold-core` now re-export + `HookHandler` alongside the other scaffold hook types. This completes Phase 1 step 4 + of the types-hierarchy-refactor. + +- Updated dependencies [e6b3459] + - @stackwright/hooks-registry@0.1.1-alpha.3 + ## 0.3.1-alpha.2 ### Patch Changes diff --git a/packages/scaffold-core/package.json b/packages/scaffold-core/package.json index 0d0d6845..dd0bff35 100644 --- a/packages/scaffold-core/package.json +++ b/packages/scaffold-core/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/scaffold-core", - "version": "0.3.1-alpha.2", + "version": "0.3.1-alpha.3", "description": "Scaffold hooks system for Stackwright - enables extensible post-scaffold processing", "license": "MIT", "repository": { From 11bfe0fecd13268314da959fa9ee5c944459106a Mon Sep 17 00:00:00 2001 From: Charles Gibson <46542971+perasperaactual@users.noreply.github.com> Date: Fri, 15 May 2026 15:00:52 -0400 Subject: [PATCH 3/6] fix(ci): handle modify/delete conflict on pre.json during back-merge rebase (#426) Co-authored-by: Stackwright Bot --- .changeset/fix-back-merge-pre-json-conflict.md | 5 +++++ .github/workflows/release.yml | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-back-merge-pre-json-conflict.md diff --git a/.changeset/fix-back-merge-pre-json-conflict.md b/.changeset/fix-back-merge-pre-json-conflict.md new file mode 100644 index 00000000..5bb72d97 --- /dev/null +++ b/.changeset/fix-back-merge-pre-json-conflict.md @@ -0,0 +1,5 @@ +--- +"@stackwright/cli": patch +--- + +Fix back-merge into dev failing with a modify/delete conflict on `.changeset/pre.json` during rebase. The release workflow deletes this file via `changeset pre exit`, but dev's alpha-bump commits still reference it. The rebase now explicitly resolves the conflict by accepting main's deletion and continuing. diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 84e4eb3e..56d1e8ef 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -134,7 +134,13 @@ jobs: # # -X ours: when conflicts arise (e.g. version numbers in package.json), # prefer main's graduated stable versions over dev's stale alpha versions. - git rebase origin/main -X ours + git rebase origin/main -X ours || { + # Expected modify/delete conflict on .changeset/pre.json: + # release deleted it via `changeset pre exit`, but dev's alpha-bump + # commit still referenced it. Accept main's deletion and continue. + git rm -f .changeset/pre.json 2>/dev/null || true + GIT_EDITOR=true git rebase --continue + } # Re-enter prerelease mode so the next dev push produces alphas. if [ ! -f ".changeset/pre.json" ]; then pnpm changeset pre enter alpha From d7c4dfe44ba0d0f9cb1267e019db8b3558c83376 Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 15 May 2026 19:01:47 +0000 Subject: [PATCH 4/6] chore: bump prerelease versions --- .changeset/pre.json | 1 + packages/cli/CHANGELOG.md | 6 ++++++ packages/cli/package.json | 2 +- packages/launch-stackwright/CHANGELOG.md | 7 +++++++ packages/launch-stackwright/package.json | 2 +- packages/mcp/CHANGELOG.md | 7 +++++++ packages/mcp/package.json | 2 +- 7 files changed, 24 insertions(+), 3 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index b528248e..5225857d 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -24,6 +24,7 @@ "changesets": [ "collection-provider-interfaces-to-types", "collections-types-cleanup", + "fix-back-merge-pre-json-conflict", "fix-cli-bundle-workspace-deps", "fix-core-dts-zod-compat", "fix-js-yaml-override-conflict", diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index b14eac57..7a3abb03 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,11 @@ # @stackwright/cli +## 0.8.5-alpha.2 + +### Patch Changes + +- 11bfe0f: Fix back-merge into dev failing with a modify/delete conflict on `.changeset/pre.json` during rebase. The release workflow deletes this file via `changeset pre exit`, but dev's alpha-bump commits still reference it. The rebase now explicitly resolves the conflict by accepting main's deletion and continuing. + ## 0.8.5-alpha.1 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index 4ec5c216..c951e0e1 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/cli", - "version": "0.8.5-alpha.1", + "version": "0.8.5-alpha.2", "description": "CLI for Stackwright framework", "license": "MIT", "repository": { diff --git a/packages/launch-stackwright/CHANGELOG.md b/packages/launch-stackwright/CHANGELOG.md index 1edb6e87..baf59196 100644 --- a/packages/launch-stackwright/CHANGELOG.md +++ b/packages/launch-stackwright/CHANGELOG.md @@ -1,5 +1,12 @@ # launch-stackwright +## 0.2.5-alpha.4 + +### Patch Changes + +- Updated dependencies [11bfe0f] + - @stackwright/cli@0.8.5-alpha.2 + ## 0.2.5-alpha.3 ### Patch Changes diff --git a/packages/launch-stackwright/package.json b/packages/launch-stackwright/package.json index e139f464..942a9852 100644 --- a/packages/launch-stackwright/package.json +++ b/packages/launch-stackwright/package.json @@ -1,6 +1,6 @@ { "name": "launch-stackwright", - "version": "0.2.5-alpha.3", + "version": "0.2.5-alpha.4", "description": "Launch a new Stackwright project with the otter raft ready to build", "license": "MIT", "repository": { diff --git a/packages/mcp/CHANGELOG.md b/packages/mcp/CHANGELOG.md index c364f919..178a3d66 100644 --- a/packages/mcp/CHANGELOG.md +++ b/packages/mcp/CHANGELOG.md @@ -1,5 +1,12 @@ # @stackwright/mcp +## 0.4.5-alpha.5 + +### Patch Changes + +- Updated dependencies [11bfe0f] + - @stackwright/cli@0.8.5-alpha.2 + ## 0.4.5-alpha.4 ### Patch Changes diff --git a/packages/mcp/package.json b/packages/mcp/package.json index 68118a4d..8b935c19 100644 --- a/packages/mcp/package.json +++ b/packages/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/mcp", - "version": "0.4.5-alpha.4", + "version": "0.4.5-alpha.5", "description": "MCP server for Stackwright — exposes content types, page management, and validation as agent tools", "license": "MIT", "repository": { From a12100d646379a74955e198b6b4816226300fa53 Mon Sep 17 00:00:00 2001 From: Charles Gibson <46542971+perasperaactual@users.noreply.github.com> Date: Sat, 16 May 2026 09:47:20 -0400 Subject: [PATCH 5/6] fix(ci): loop over pre.json conflicts during back-merge rebase (#428) Co-authored-by: Stackwright Bot --- .changeset/fix-back-merge-loop.md | 5 +++++ .github/workflows/release.yml | 20 +++++++++++++------- 2 files changed, 18 insertions(+), 7 deletions(-) create mode 100644 .changeset/fix-back-merge-loop.md diff --git a/.changeset/fix-back-merge-loop.md b/.changeset/fix-back-merge-loop.md new file mode 100644 index 00000000..b2d83090 --- /dev/null +++ b/.changeset/fix-back-merge-loop.md @@ -0,0 +1,5 @@ +--- +"@stackwright/cli": patch +--- + +Upgrade the back-merge rebase conflict handler from a one-shot block to a loop. Dev can accumulate multiple alpha-bump commits that all modified `.changeset/pre.json` — the previous one-shot `||{ }` only resolved the first conflict. The loop now runs until all pre.json conflicts are resolved or an unexpected conflict is encountered. diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 56d1e8ef..d9d9b0b9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -134,13 +134,19 @@ jobs: # # -X ours: when conflicts arise (e.g. version numbers in package.json), # prefer main's graduated stable versions over dev's stale alpha versions. - git rebase origin/main -X ours || { - # Expected modify/delete conflict on .changeset/pre.json: - # release deleted it via `changeset pre exit`, but dev's alpha-bump - # commit still referenced it. Accept main's deletion and continue. - git rm -f .changeset/pre.json 2>/dev/null || true - GIT_EDITOR=true git rebase --continue - } + git rebase origin/main -X ours || true + while [ -d ".git/rebase-merge" ]; do + if git status --porcelain | grep -q "pre.json"; then + # Expected: pre.json was deleted by `changeset pre exit` on main, + # but dev's alpha-bump commits still modified it. Accept the deletion. + git rm -f .changeset/pre.json 2>/dev/null || true + GIT_EDITOR=true git rebase --continue || true + else + echo "Unexpected rebase conflict — aborting" + git rebase --abort + exit 1 + fi + done # Re-enter prerelease mode so the next dev push produces alphas. if [ ! -f ".changeset/pre.json" ]; then pnpm changeset pre enter alpha From 87a2aa61bddd0ede4644b0679f801cb253807987 Mon Sep 17 00:00:00 2001 From: github-actions Date: Sat, 16 May 2026 13:48:17 +0000 Subject: [PATCH 6/6] chore: bump prerelease versions --- .changeset/pre.json | 15 ++------------- packages/cli/CHANGELOG.md | 6 ++++++ packages/cli/package.json | 2 +- packages/launch-stackwright/CHANGELOG.md | 7 +++++++ packages/launch-stackwright/package.json | 2 +- packages/mcp/CHANGELOG.md | 7 +++++++ packages/mcp/package.json | 2 +- 7 files changed, 25 insertions(+), 16 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 5225857d..fc6a634d 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -22,19 +22,8 @@ "@stackwright/ui-shadcn": "0.1.2" }, "changesets": [ - "collection-provider-interfaces-to-types", - "collections-types-cleanup", + "fix-back-merge-loop", "fix-back-merge-pre-json-conflict", - "fix-cli-bundle-workspace-deps", - "fix-core-dts-zod-compat", - "fix-js-yaml-override-conflict", - "fix-scaffold-template-versions", - "fix-types-prebuild-plugin-zod-compat", - "generate-agent-docs-interfaces", - "hookhandler-reexport", - "remove-workspace-prepublish-guard", - "scaffold-hook-interfaces-to-types", - "workspace-publish-guards", - "zodlike-export-path-fix" + "fix-js-yaml-override-conflict" ] } diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 7a3abb03..c0ac8bf1 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,11 @@ # @stackwright/cli +## 0.8.5-alpha.3 + +### Patch Changes + +- a12100d: Upgrade the back-merge rebase conflict handler from a one-shot block to a loop. Dev can accumulate multiple alpha-bump commits that all modified `.changeset/pre.json` — the previous one-shot `||{ }` only resolved the first conflict. The loop now runs until all pre.json conflicts are resolved or an unexpected conflict is encountered. + ## 0.8.5-alpha.2 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index c951e0e1..e07d33b5 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/cli", - "version": "0.8.5-alpha.2", + "version": "0.8.5-alpha.3", "description": "CLI for Stackwright framework", "license": "MIT", "repository": { diff --git a/packages/launch-stackwright/CHANGELOG.md b/packages/launch-stackwright/CHANGELOG.md index baf59196..7e668630 100644 --- a/packages/launch-stackwright/CHANGELOG.md +++ b/packages/launch-stackwright/CHANGELOG.md @@ -1,5 +1,12 @@ # launch-stackwright +## 0.2.5-alpha.5 + +### Patch Changes + +- Updated dependencies [a12100d] + - @stackwright/cli@0.8.5-alpha.3 + ## 0.2.5-alpha.4 ### Patch Changes diff --git a/packages/launch-stackwright/package.json b/packages/launch-stackwright/package.json index 942a9852..78b80ce4 100644 --- a/packages/launch-stackwright/package.json +++ b/packages/launch-stackwright/package.json @@ -1,6 +1,6 @@ { "name": "launch-stackwright", - "version": "0.2.5-alpha.4", + "version": "0.2.5-alpha.5", "description": "Launch a new Stackwright project with the otter raft ready to build", "license": "MIT", "repository": { diff --git a/packages/mcp/CHANGELOG.md b/packages/mcp/CHANGELOG.md index 178a3d66..b11b5d60 100644 --- a/packages/mcp/CHANGELOG.md +++ b/packages/mcp/CHANGELOG.md @@ -1,5 +1,12 @@ # @stackwright/mcp +## 0.4.5-alpha.6 + +### Patch Changes + +- Updated dependencies [a12100d] + - @stackwright/cli@0.8.5-alpha.3 + ## 0.4.5-alpha.5 ### Patch Changes diff --git a/packages/mcp/package.json b/packages/mcp/package.json index 8b935c19..f2b37f61 100644 --- a/packages/mcp/package.json +++ b/packages/mcp/package.json @@ -1,6 +1,6 @@ { "name": "@stackwright/mcp", - "version": "0.4.5-alpha.5", + "version": "0.4.5-alpha.6", "description": "MCP server for Stackwright — exposes content types, page management, and validation as agent tools", "license": "MIT", "repository": {