From c2b498e452a3304eb02339ee55de392ab1415979 Mon Sep 17 00:00:00 2001 From: Tom Boucher Date: Fri, 24 Jul 2026 22:49:29 -0400 Subject: [PATCH] fix(#2498): pass --no-track when branching off origin/$DEFAULT_BRANCH (#2628) * test(#2498): guard branch-creation uses --no-track (all workflows) * fix(#2498): pass --no-track when branching off origin/$DEFAULT_BRANCH * chore(#2498): backfill changeset pr to 2628 --- .changeset/gentle-voles-frolic.md | 5 ++ gsd-core/workflows/execute-phase.md | 6 +- gsd-core/workflows/quick.md | 6 +- tests/branch-no-track-guard.test.cjs | 56 +++++++++++++++++++ .../golden-install-parity/antigravity.json | 4 +- .../golden-install-parity/augment.json | 4 +- .../golden-install-parity/claude-local.json | 4 +- .../golden-install-parity/claude.json | 4 +- .../fixtures/golden-install-parity/cline.json | 4 +- .../golden-install-parity/codebuddy.json | 4 +- .../fixtures/golden-install-parity/codex.json | 4 +- .../golden-install-parity/copilot.json | 4 +- .../golden-install-parity/cursor.json | 4 +- .../golden-install-parity/hermes.json | 4 +- .../fixtures/golden-install-parity/kilo.json | 4 +- .../golden-install-parity/kimi-code.json | 4 +- .../fixtures/golden-install-parity/kimi.json | 4 +- .../golden-install-parity/opencode.json | 4 +- tests/fixtures/golden-install-parity/pi.json | 4 +- .../fixtures/golden-install-parity/qwen.json | 4 +- .../fixtures/golden-install-parity/trae.json | 4 +- .../golden-install-parity/windsurf.json | 4 +- .../fixtures/golden-install-parity/zcode.json | 4 +- tests/workflow-size-baseline.json | 4 +- 24 files changed, 108 insertions(+), 45 deletions(-) create mode 100644 .changeset/gentle-voles-frolic.md create mode 100644 tests/branch-no-track-guard.test.cjs diff --git a/.changeset/gentle-voles-frolic.md b/.changeset/gentle-voles-frolic.md new file mode 100644 index 000000000..bff564810 --- /dev/null +++ b/.changeset/gentle-voles-frolic.md @@ -0,0 +1,5 @@ +--- +type: Fixed +pr: 2628 +--- +**`/gsd-execute-phase` and `/gsd-quick` branches no longer auto-track `origin/master`** — the branch-creation `git checkout -b origin/$DEFAULT_BRANCH` omitted `--no-track`, so with the default `branch.autoSetupMerge=true` git wired the new branch's upstream to `refs/heads/$DEFAULT_BRANCH`. A subsequent GUI sync (GitHub Desktop, VS Code) then pushed the branch's commits straight onto `origin/$DEFAULT_BRANCH`, bypassing PR review — in one project every commit of a 7-plan phase landed on `origin/master`. `--no-track` is now passed; the first `git push -u origin ` sets up correct same-name tracking. (#2498) diff --git a/gsd-core/workflows/execute-phase.md b/gsd-core/workflows/execute-phase.md index cc4ec60ab..9548724e6 100644 --- a/gsd-core/workflows/execute-phase.md +++ b/gsd-core/workflows/execute-phase.md @@ -311,10 +311,8 @@ else else git switch --quiet "$DEFAULT_BRANCH" 2>/dev/null && git merge --ff-only --quiet "origin/$DEFAULT_BRANCH" 2>/dev/null || true fi - # Pinned base + fail-fast: on success HEAD is exactly at origin/$DEFAULT_BRANCH, - # so a post-creation merge-base or "ahead-of" guard would be unreachable. The - # explicit base argument here is the single source of correctness for #2916. - git checkout -b "$BRANCH_NAME" "origin/$DEFAULT_BRANCH" \ + # Pinned base (#2916); --no-track (#2498) so default autoSetupMerge doesn't wire upstream to origin/$DEFAULT_BRANCH. + git checkout -b "$BRANCH_NAME" "origin/$DEFAULT_BRANCH" --no-track \ || { echo "ERROR: Could not create '$BRANCH_NAME' from origin/$DEFAULT_BRANCH (#2916)." >&2; exit 1; } fi ``` diff --git a/gsd-core/workflows/quick.md b/gsd-core/workflows/quick.md index 880427487..6544fca11 100644 --- a/gsd-core/workflows/quick.md +++ b/gsd-core/workflows/quick.md @@ -236,7 +236,11 @@ else # On success HEAD is exactly at origin/$DEFAULT_BRANCH, so a post-creation # merge-base / "ahead-of" guard would be unreachable — the explicit base # argument here is the single source of correctness for #2916. - git checkout -b "$branch_name" "origin/$DEFAULT_BRANCH" \ + # --no-track: with the default branch.autoSetupMerge=true, checkout -b from a + # remote-tracking ref wires branch..merge to refs/heads/$DEFAULT_BRANCH + # (origin/master), so a GUI sync pushes quick-task commits straight onto + # origin/$DEFAULT_BRANCH, bypassing PR review (#2498). + git checkout -b "$branch_name" "origin/$DEFAULT_BRANCH" --no-track \ || { echo "ERROR: Could not create '$branch_name' from origin/$DEFAULT_BRANCH (#2916)." >&2; exit 1; } fi ``` diff --git a/tests/branch-no-track-guard.test.cjs b/tests/branch-no-track-guard.test.cjs new file mode 100644 index 000000000..2e19722e1 --- /dev/null +++ b/tests/branch-no-track-guard.test.cjs @@ -0,0 +1,56 @@ +// allow-test-rule: structural-regression-guard see #2498 +// Guards the --no-track fix: any workflow that creates a branch from a remote-tracking +// ref (origin/$DEFAULT_BRANCH / origin/$_BRANCH) MUST pass --no-track. Without it, +// the default branch.autoSetupMerge=true wires branch..merge to +// refs/heads/$DEFAULT_BRANCH, so a GUI sync (GitHub Desktop, VS Code) pushes the +// branch's commits straight onto origin/$DEFAULT_BRANCH, bypassing PR review entirely +// (#2498 — caused a 7-plan phase's commits to land on origin/master in a real project). +// Scans ALL workflow .md files so a newly-added workflow reintroducing the pattern is +// caught, not just the two originally-fixed ones. +'use strict'; + +const { test } = require('node:test'); +const assert = require('node:assert/strict'); +const fs = require('node:fs'); +const path = require('node:path'); + +const ROOT = path.resolve(__dirname, '..'); +const WORKFLOWS_DIR = path.join(ROOT, 'gsd-core', 'workflows'); + +function collectMdFiles(dir) { + const results = []; + if (!fs.existsSync(dir)) return results; + for (const entry of fs.readdirSync(dir, { withFileTypes: true })) { + const full = path.join(dir, entry.name); + if (entry.isDirectory()) { + results.push(...collectMdFiles(full)); + } else if (entry.isFile() && entry.name.endsWith('.md')) { + results.push(full); + } + } + return results; +} + +test('#2498: branch creation from a remote-tracking ref uses --no-track', () => { + const violations = []; + for (const file of collectMdFiles(WORKFLOWS_DIR)) { + const rel = path.relative(ROOT, file).replace(/\\/g, '/'); + const lines = fs.readFileSync(file, 'utf8').split(/\r?\n/); + lines.forEach((line, i) => { + const isCheckoutFromRemoteRef = + /git\s+checkout\s+-b\b/.test(line) && + /origin\/\$[A-Z_]+_?BRANCH|origin\/\$DEFAULT_BRANCH/.test(line); + if (isCheckoutFromRemoteRef && !/--no-track/.test(line)) { + violations.push(`${rel}:${i + 1}: ${line.trim()}`); + } + }); + } + assert.equal( + violations.length, + 0, + `Found ${violations.length} \`git checkout -b\` from a remote-tracking ref ` + + `(origin/$) without --no-track (#2498). Default branch.autoSetupMerge would ` + + `wire the branch upstream to origin/$, so a GUI sync pushes commits onto it, ` + + `bypassing PR review. Add --no-track. Violations:\n${violations.join('\n')}`, + ); +}); diff --git a/tests/fixtures/golden-install-parity/antigravity.json b/tests/fixtures/golden-install-parity/antigravity.json index d3ad085be..9ac6c5122 100644 --- a/tests/fixtures/golden-install-parity/antigravity.json +++ b/tests/fixtures/golden-install-parity/antigravity.json @@ -247,7 +247,7 @@ "gsd-core/workflows/docs-update.md": "0b3023a3caa2123f", "gsd-core/workflows/edit-phase.md": "fc932e82ba1f585a", "gsd-core/workflows/eval-review.md": "9e8b169c05098b57", - "gsd-core/workflows/execute-phase.md": "df25a040ef14d483", + "gsd-core/workflows/execute-phase.md": "910f445e1af26714", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "1832b97d0923fa67", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "13aa54f8279960ae", @@ -294,7 +294,7 @@ "gsd-core/workflows/pr-branch.md": "dc5598ae8accdecd", "gsd-core/workflows/profile-user.md": "3a3f8e417de0074c", "gsd-core/workflows/progress.md": "9fb8c93970e0b4aa", - "gsd-core/workflows/quick.md": "949d028c0370d802", + "gsd-core/workflows/quick.md": "2eeb1985e0ea1ac8", "gsd-core/workflows/reapply-patches.md": "4dcd6117d0a507ca", "gsd-core/workflows/remove-phase.md": "23b9eb0858a2535e", "gsd-core/workflows/remove-workspace.md": "1058d1d3160eb120", diff --git a/tests/fixtures/golden-install-parity/augment.json b/tests/fixtures/golden-install-parity/augment.json index 2ada12e3e..7c12c77b2 100644 --- a/tests/fixtures/golden-install-parity/augment.json +++ b/tests/fixtures/golden-install-parity/augment.json @@ -318,7 +318,7 @@ "gsd-core/workflows/docs-update.md": "a320371be70f43d8", "gsd-core/workflows/edit-phase.md": "966a3eadd1bebc04", "gsd-core/workflows/eval-review.md": "32d3d7e80ab2bfc7", - "gsd-core/workflows/execute-phase.md": "014d1ce28cc64f48", + "gsd-core/workflows/execute-phase.md": "4b05739b7c8715ea", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "f7782680c2b8ad6b", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -365,7 +365,7 @@ "gsd-core/workflows/pr-branch.md": "c87db7ac8c28be1b", "gsd-core/workflows/profile-user.md": "59e5066c5c66572a", "gsd-core/workflows/progress.md": "46c83ad61b3c4a84", - "gsd-core/workflows/quick.md": "aee93e826a1d6146", + "gsd-core/workflows/quick.md": "96c81d9453073d4d", "gsd-core/workflows/reapply-patches.md": "39050f72601aec89", "gsd-core/workflows/remove-phase.md": "df9a45f0b1880999", "gsd-core/workflows/remove-workspace.md": "f67860c795fb4bfe", diff --git a/tests/fixtures/golden-install-parity/claude-local.json b/tests/fixtures/golden-install-parity/claude-local.json index 9221dda06..e7349a1fe 100644 --- a/tests/fixtures/golden-install-parity/claude-local.json +++ b/tests/fixtures/golden-install-parity/claude-local.json @@ -317,7 +317,7 @@ "gsd-core/workflows/docs-update.md": "7aef1019ce141558", "gsd-core/workflows/edit-phase.md": "dbbb6191f5a8b65e", "gsd-core/workflows/eval-review.md": "11620e0dc4a003dd", - "gsd-core/workflows/execute-phase.md": "cbdeabca6be48255", + "gsd-core/workflows/execute-phase.md": "d45261ba907a1436", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "9a1f3deffb4dab14", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "a7f9b9a45303382f", @@ -364,7 +364,7 @@ "gsd-core/workflows/pr-branch.md": "513f6cff722eff2d", "gsd-core/workflows/profile-user.md": "7a7786eb43efda0d", "gsd-core/workflows/progress.md": "01079a85cbc41ffe", - "gsd-core/workflows/quick.md": "e61417610154f513", + "gsd-core/workflows/quick.md": "39203821058597f8", "gsd-core/workflows/reapply-patches.md": "44a96b52b975e9bb", "gsd-core/workflows/remove-phase.md": "8effc8742d58a11a", "gsd-core/workflows/remove-workspace.md": "64b73daff58b9aec", diff --git a/tests/fixtures/golden-install-parity/claude.json b/tests/fixtures/golden-install-parity/claude.json index c8030b5c5..2c645f910 100644 --- a/tests/fixtures/golden-install-parity/claude.json +++ b/tests/fixtures/golden-install-parity/claude.json @@ -246,7 +246,7 @@ "gsd-core/workflows/docs-update.md": "ea47bd2d5a0d1d85", "gsd-core/workflows/edit-phase.md": "8323bfe10faa0c0a", "gsd-core/workflows/eval-review.md": "7c2f5ff8cc4d06e5", - "gsd-core/workflows/execute-phase.md": "7278bc14f1360c3e", + "gsd-core/workflows/execute-phase.md": "8722fff6ecdc9444", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "d2020c5e01c7bd7f", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -293,7 +293,7 @@ "gsd-core/workflows/pr-branch.md": "ab157cd8e49621dd", "gsd-core/workflows/profile-user.md": "84fff69a630033ed", "gsd-core/workflows/progress.md": "1b56219777ea078c", - "gsd-core/workflows/quick.md": "8b1d335007abe852", + "gsd-core/workflows/quick.md": "985fea314d8a172e", "gsd-core/workflows/reapply-patches.md": "ba9406b60f2c4041", "gsd-core/workflows/remove-phase.md": "ada8a0546c686483", "gsd-core/workflows/remove-workspace.md": "015cde237c75be39", diff --git a/tests/fixtures/golden-install-parity/cline.json b/tests/fixtures/golden-install-parity/cline.json index 098b73c72..8b64f917b 100644 --- a/tests/fixtures/golden-install-parity/cline.json +++ b/tests/fixtures/golden-install-parity/cline.json @@ -250,7 +250,7 @@ "gsd-core/workflows/docs-update.md": "7eb7095ca86d506f", "gsd-core/workflows/edit-phase.md": "9c9fadc047c61d74", "gsd-core/workflows/eval-review.md": "17fc9b4c4f7e1c74", - "gsd-core/workflows/execute-phase.md": "233b289d04dba64f", + "gsd-core/workflows/execute-phase.md": "6583d13e35054091", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "1b3558cb8f41b65a", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "35612890c1173577", @@ -297,7 +297,7 @@ "gsd-core/workflows/pr-branch.md": "9923878a4f6a2d91", "gsd-core/workflows/profile-user.md": "4c51320e7caa09ca", "gsd-core/workflows/progress.md": "53b4310b873d233e", - "gsd-core/workflows/quick.md": "6d47dcf851ec6201", + "gsd-core/workflows/quick.md": "7210b094411691e0", "gsd-core/workflows/reapply-patches.md": "eb4272145a117904", "gsd-core/workflows/remove-phase.md": "e336350f8113a328", "gsd-core/workflows/remove-workspace.md": "79d3669cc9eb0b10", diff --git a/tests/fixtures/golden-install-parity/codebuddy.json b/tests/fixtures/golden-install-parity/codebuddy.json index b0ac3e34a..bf9f93038 100644 --- a/tests/fixtures/golden-install-parity/codebuddy.json +++ b/tests/fixtures/golden-install-parity/codebuddy.json @@ -318,7 +318,7 @@ "gsd-core/workflows/docs-update.md": "a320371be70f43d8", "gsd-core/workflows/edit-phase.md": "966a3eadd1bebc04", "gsd-core/workflows/eval-review.md": "32d3d7e80ab2bfc7", - "gsd-core/workflows/execute-phase.md": "6339681fe63b9151", + "gsd-core/workflows/execute-phase.md": "aa39a0f01567166c", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "f7782680c2b8ad6b", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -365,7 +365,7 @@ "gsd-core/workflows/pr-branch.md": "c87db7ac8c28be1b", "gsd-core/workflows/profile-user.md": "1419f1dad1853da0", "gsd-core/workflows/progress.md": "46c83ad61b3c4a84", - "gsd-core/workflows/quick.md": "15877e84cc86bab6", + "gsd-core/workflows/quick.md": "cb5e16b02f29a5d2", "gsd-core/workflows/reapply-patches.md": "39050f72601aec89", "gsd-core/workflows/remove-phase.md": "df9a45f0b1880999", "gsd-core/workflows/remove-workspace.md": "f67860c795fb4bfe", diff --git a/tests/fixtures/golden-install-parity/codex.json b/tests/fixtures/golden-install-parity/codex.json index 828b1c499..f1ebaae03 100644 --- a/tests/fixtures/golden-install-parity/codex.json +++ b/tests/fixtures/golden-install-parity/codex.json @@ -353,7 +353,7 @@ "gsd-core/workflows/docs-update.md": "bf32efe90219d3dd", "gsd-core/workflows/edit-phase.md": "e592a4d85ce5380f", "gsd-core/workflows/eval-review.md": "c89a63285ead961e", - "gsd-core/workflows/execute-phase.md": "968a8a22878c8f88", + "gsd-core/workflows/execute-phase.md": "a805ba08992a6b78", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "cd8678d082d6e191", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -400,7 +400,7 @@ "gsd-core/workflows/pr-branch.md": "d13e1cc81de40896", "gsd-core/workflows/profile-user.md": "6d23d0594082c78a", "gsd-core/workflows/progress.md": "e57d5a148df38508", - "gsd-core/workflows/quick.md": "8fdb02f61e5a189e", + "gsd-core/workflows/quick.md": "6cbc2a3d115b2507", "gsd-core/workflows/reapply-patches.md": "26297b84736e66a4", "gsd-core/workflows/remove-phase.md": "9ee0fddd11a0d9d4", "gsd-core/workflows/remove-workspace.md": "d0160c5d05bcb2bb", diff --git a/tests/fixtures/golden-install-parity/copilot.json b/tests/fixtures/golden-install-parity/copilot.json index dc653f55a..2e4b1e95a 100644 --- a/tests/fixtures/golden-install-parity/copilot.json +++ b/tests/fixtures/golden-install-parity/copilot.json @@ -248,7 +248,7 @@ "gsd-core/workflows/docs-update.md": "f64b067d0d729f04", "gsd-core/workflows/edit-phase.md": "8667c28b22b1599f", "gsd-core/workflows/eval-review.md": "1ae2d3d3fbf72893", - "gsd-core/workflows/execute-phase.md": "ffd43d2e08880866", + "gsd-core/workflows/execute-phase.md": "9c765cec7679b24c", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "ca37f91f7bd6f05c", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "25bebed74e645109", @@ -295,7 +295,7 @@ "gsd-core/workflows/pr-branch.md": "2833905f119b5722", "gsd-core/workflows/profile-user.md": "e2135bdd20e17620", "gsd-core/workflows/progress.md": "97f4971366c381ee", - "gsd-core/workflows/quick.md": "d36729da4e0e62ac", + "gsd-core/workflows/quick.md": "68388e871da4cdeb", "gsd-core/workflows/reapply-patches.md": "8fd59e24b486f180", "gsd-core/workflows/remove-phase.md": "e262654e319d1bc4", "gsd-core/workflows/remove-workspace.md": "e7e5b5b1e0cc9d81", diff --git a/tests/fixtures/golden-install-parity/cursor.json b/tests/fixtures/golden-install-parity/cursor.json index d17875da8..bca095e5e 100644 --- a/tests/fixtures/golden-install-parity/cursor.json +++ b/tests/fixtures/golden-install-parity/cursor.json @@ -318,7 +318,7 @@ "gsd-core/workflows/docs-update.md": "215b0122c4d2b1e5", "gsd-core/workflows/edit-phase.md": "8323bfe10faa0c0a", "gsd-core/workflows/eval-review.md": "9389c58f7384972d", - "gsd-core/workflows/execute-phase.md": "569fcc8eff1c9321", + "gsd-core/workflows/execute-phase.md": "f55929bb18a78cac", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "d2020c5e01c7bd7f", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -365,7 +365,7 @@ "gsd-core/workflows/pr-branch.md": "c67d90c65da47168", "gsd-core/workflows/profile-user.md": "e1a6ec04051931f7", "gsd-core/workflows/progress.md": "2dbc495deed1a36d", - "gsd-core/workflows/quick.md": "bbfb5d48f59418f5", + "gsd-core/workflows/quick.md": "eaa4c5f920d97d87", "gsd-core/workflows/reapply-patches.md": "ba9406b60f2c4041", "gsd-core/workflows/remove-phase.md": "ada8a0546c686483", "gsd-core/workflows/remove-workspace.md": "0572a83d71650937", diff --git a/tests/fixtures/golden-install-parity/hermes.json b/tests/fixtures/golden-install-parity/hermes.json index 2a5607e47..d5176ebf1 100644 --- a/tests/fixtures/golden-install-parity/hermes.json +++ b/tests/fixtures/golden-install-parity/hermes.json @@ -247,7 +247,7 @@ "gsd-core/workflows/docs-update.md": "02811dd7aa32d5ba", "gsd-core/workflows/edit-phase.md": "7f27003f20e88fb8", "gsd-core/workflows/eval-review.md": "e7cd5dfcf18e2458", - "gsd-core/workflows/execute-phase.md": "5d6eac4e2b01028c", + "gsd-core/workflows/execute-phase.md": "b76c1701cee71add", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "9b2193de25506b3b", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "26ee34c543926402", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "362123fdf99e9980", @@ -294,7 +294,7 @@ "gsd-core/workflows/pr-branch.md": "ecabd55e4eabf229", "gsd-core/workflows/profile-user.md": "877c2c9b3ab8742c", "gsd-core/workflows/progress.md": "589f60eb809c0bb9", - "gsd-core/workflows/quick.md": "3f6f6b7b2cc860f6", + "gsd-core/workflows/quick.md": "c6c33dc8325b3289", "gsd-core/workflows/reapply-patches.md": "158083a310859594", "gsd-core/workflows/remove-phase.md": "fce799aae3ab2715", "gsd-core/workflows/remove-workspace.md": "42029a7559f1d8fb", diff --git a/tests/fixtures/golden-install-parity/kilo.json b/tests/fixtures/golden-install-parity/kilo.json index 922e881f8..1350b77a6 100644 --- a/tests/fixtures/golden-install-parity/kilo.json +++ b/tests/fixtures/golden-install-parity/kilo.json @@ -318,7 +318,7 @@ "gsd-core/workflows/docs-update.md": "3c0d5ef72202d246", "gsd-core/workflows/edit-phase.md": "8323bfe10faa0c0a", "gsd-core/workflows/eval-review.md": "35be91cd22a9bc11", - "gsd-core/workflows/execute-phase.md": "fcd4c5d6d2630bed", + "gsd-core/workflows/execute-phase.md": "c9ba41385808e527", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "b1e6588cd32a6f08", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -365,7 +365,7 @@ "gsd-core/workflows/pr-branch.md": "ab157cd8e49621dd", "gsd-core/workflows/profile-user.md": "645f81d80c4775c4", "gsd-core/workflows/progress.md": "172e4168e326ca61", - "gsd-core/workflows/quick.md": "8ef8a06f8dec4714", + "gsd-core/workflows/quick.md": "4b0b10e53022601e", "gsd-core/workflows/reapply-patches.md": "becf9728cdb124c4", "gsd-core/workflows/remove-phase.md": "ada8a0546c686483", "gsd-core/workflows/remove-workspace.md": "f5dc82bb63e2efa4", diff --git a/tests/fixtures/golden-install-parity/kimi-code.json b/tests/fixtures/golden-install-parity/kimi-code.json index 2911cb6a6..59d6e056d 100644 --- a/tests/fixtures/golden-install-parity/kimi-code.json +++ b/tests/fixtures/golden-install-parity/kimi-code.json @@ -275,7 +275,7 @@ "gsd-core/workflows/docs-update.md": "a320371be70f43d8", "gsd-core/workflows/edit-phase.md": "966a3eadd1bebc04", "gsd-core/workflows/eval-review.md": "32d3d7e80ab2bfc7", - "gsd-core/workflows/execute-phase.md": "385158f8200e0b4b", + "gsd-core/workflows/execute-phase.md": "68d41c524ab90953", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "f7782680c2b8ad6b", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -322,7 +322,7 @@ "gsd-core/workflows/pr-branch.md": "c87db7ac8c28be1b", "gsd-core/workflows/profile-user.md": "37af07833c81a0bd", "gsd-core/workflows/progress.md": "46c83ad61b3c4a84", - "gsd-core/workflows/quick.md": "f8afe04525992f67", + "gsd-core/workflows/quick.md": "b2b493b33312456b", "gsd-core/workflows/reapply-patches.md": "39050f72601aec89", "gsd-core/workflows/remove-phase.md": "df9a45f0b1880999", "gsd-core/workflows/remove-workspace.md": "f67860c795fb4bfe", diff --git a/tests/fixtures/golden-install-parity/kimi.json b/tests/fixtures/golden-install-parity/kimi.json index 956931a31..b2697ec2a 100644 --- a/tests/fixtures/golden-install-parity/kimi.json +++ b/tests/fixtures/golden-install-parity/kimi.json @@ -311,7 +311,7 @@ "gsd-core/workflows/docs-update.md": "a320371be70f43d8", "gsd-core/workflows/edit-phase.md": "966a3eadd1bebc04", "gsd-core/workflows/eval-review.md": "32d3d7e80ab2bfc7", - "gsd-core/workflows/execute-phase.md": "a4a4860eaebd1493", + "gsd-core/workflows/execute-phase.md": "4098733ed70e3898", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "f7782680c2b8ad6b", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -358,7 +358,7 @@ "gsd-core/workflows/pr-branch.md": "c87db7ac8c28be1b", "gsd-core/workflows/profile-user.md": "37af07833c81a0bd", "gsd-core/workflows/progress.md": "46c83ad61b3c4a84", - "gsd-core/workflows/quick.md": "c895c0989f310083", + "gsd-core/workflows/quick.md": "70b5ef1c5408c97b", "gsd-core/workflows/reapply-patches.md": "39050f72601aec89", "gsd-core/workflows/remove-phase.md": "df9a45f0b1880999", "gsd-core/workflows/remove-workspace.md": "f67860c795fb4bfe", diff --git a/tests/fixtures/golden-install-parity/opencode.json b/tests/fixtures/golden-install-parity/opencode.json index f22c1349a..4b15d2451 100644 --- a/tests/fixtures/golden-install-parity/opencode.json +++ b/tests/fixtures/golden-install-parity/opencode.json @@ -318,7 +318,7 @@ "gsd-core/workflows/docs-update.md": "f6210dc8ff7776d5", "gsd-core/workflows/edit-phase.md": "1876c855fb0a0a39", "gsd-core/workflows/eval-review.md": "1973f08d0eb34159", - "gsd-core/workflows/execute-phase.md": "8f636a478e627dec", + "gsd-core/workflows/execute-phase.md": "acdb85a38ea89628", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "a15993affd62f4bf", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "c4cba01539f0368a", @@ -365,7 +365,7 @@ "gsd-core/workflows/pr-branch.md": "929b7cb0c99c7b9e", "gsd-core/workflows/profile-user.md": "9275d5895237b801", "gsd-core/workflows/progress.md": "c3d7149133d571a9", - "gsd-core/workflows/quick.md": "7c3da986603d682b", + "gsd-core/workflows/quick.md": "d6a8da51867039f8", "gsd-core/workflows/reapply-patches.md": "a0e9b53f90abceb2", "gsd-core/workflows/remove-phase.md": "dea4661e8f89596f", "gsd-core/workflows/remove-workspace.md": "21a8581add5f31ae", diff --git a/tests/fixtures/golden-install-parity/pi.json b/tests/fixtures/golden-install-parity/pi.json index 11a753690..ef3445643 100644 --- a/tests/fixtures/golden-install-parity/pi.json +++ b/tests/fixtures/golden-install-parity/pi.json @@ -214,7 +214,7 @@ "gsd-core/workflows/docs-update.md": "a320371be70f43d8", "gsd-core/workflows/edit-phase.md": "966a3eadd1bebc04", "gsd-core/workflows/eval-review.md": "32d3d7e80ab2bfc7", - "gsd-core/workflows/execute-phase.md": "3ce575de94c6d4e2", + "gsd-core/workflows/execute-phase.md": "0e0359655e2913fd", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "f7782680c2b8ad6b", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -261,7 +261,7 @@ "gsd-core/workflows/pr-branch.md": "c87db7ac8c28be1b", "gsd-core/workflows/profile-user.md": "e5c0e0a0dc54dccb", "gsd-core/workflows/progress.md": "46c83ad61b3c4a84", - "gsd-core/workflows/quick.md": "96b9b0239e5f33a0", + "gsd-core/workflows/quick.md": "523bb6ed1e73610e", "gsd-core/workflows/reapply-patches.md": "39050f72601aec89", "gsd-core/workflows/remove-phase.md": "df9a45f0b1880999", "gsd-core/workflows/remove-workspace.md": "f67860c795fb4bfe", diff --git a/tests/fixtures/golden-install-parity/qwen.json b/tests/fixtures/golden-install-parity/qwen.json index 0250e09ae..35a98ca0f 100644 --- a/tests/fixtures/golden-install-parity/qwen.json +++ b/tests/fixtures/golden-install-parity/qwen.json @@ -247,7 +247,7 @@ "gsd-core/workflows/docs-update.md": "226550a6d556b09f", "gsd-core/workflows/edit-phase.md": "0fb5e0123cfc6f36", "gsd-core/workflows/eval-review.md": "88431952699d9fa6", - "gsd-core/workflows/execute-phase.md": "a2ffd60956eba939", + "gsd-core/workflows/execute-phase.md": "19d01bc7f7b45279", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "0e0949db56deebeb", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "0b04cc2dcab61107", @@ -294,7 +294,7 @@ "gsd-core/workflows/pr-branch.md": "cef0f65b16d500b4", "gsd-core/workflows/profile-user.md": "bb02367a5fc8653c", "gsd-core/workflows/progress.md": "475eb60a2e739eed", - "gsd-core/workflows/quick.md": "44fb88e3beece382", + "gsd-core/workflows/quick.md": "f5af5939e0b2bf43", "gsd-core/workflows/reapply-patches.md": "de0ee8acfe7245b2", "gsd-core/workflows/remove-phase.md": "e8ae4fbbfac700f0", "gsd-core/workflows/remove-workspace.md": "ae520235f4d1f4a5", diff --git a/tests/fixtures/golden-install-parity/trae.json b/tests/fixtures/golden-install-parity/trae.json index 6f1fe0200..5c0564dc9 100644 --- a/tests/fixtures/golden-install-parity/trae.json +++ b/tests/fixtures/golden-install-parity/trae.json @@ -247,7 +247,7 @@ "gsd-core/workflows/docs-update.md": "89e760e665ff99f8", "gsd-core/workflows/edit-phase.md": "7facd0faa33c8cad", "gsd-core/workflows/eval-review.md": "90a29a4fa0cdd947", - "gsd-core/workflows/execute-phase.md": "10c31efb8ef7b218", + "gsd-core/workflows/execute-phase.md": "729bf037d4bdec10", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "296b812e8d0e9ce8", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7d30384e9bf82664", @@ -294,7 +294,7 @@ "gsd-core/workflows/pr-branch.md": "79fd55b88ea2db9c", "gsd-core/workflows/profile-user.md": "aa0737531d487f10", "gsd-core/workflows/progress.md": "1fe098b4d559ba55", - "gsd-core/workflows/quick.md": "a8eea45d352ea010", + "gsd-core/workflows/quick.md": "11348e364c4fb1e7", "gsd-core/workflows/reapply-patches.md": "21b38c374f19fd78", "gsd-core/workflows/remove-phase.md": "a46c2fe853bf4e86", "gsd-core/workflows/remove-workspace.md": "8ddc5f04f7c48d6c", diff --git a/tests/fixtures/golden-install-parity/windsurf.json b/tests/fixtures/golden-install-parity/windsurf.json index 864cbeef2..56d30cb66 100644 --- a/tests/fixtures/golden-install-parity/windsurf.json +++ b/tests/fixtures/golden-install-parity/windsurf.json @@ -247,7 +247,7 @@ "gsd-core/workflows/docs-update.md": "6bd25d0123ee6c73", "gsd-core/workflows/edit-phase.md": "c0ae7d0063f3e789", "gsd-core/workflows/eval-review.md": "713de00ea5326988", - "gsd-core/workflows/execute-phase.md": "e4138bc697e320b1", + "gsd-core/workflows/execute-phase.md": "24db4d3799ad23bc", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "3194ecd382690755", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "fb4497767cdf73a3", @@ -294,7 +294,7 @@ "gsd-core/workflows/pr-branch.md": "acd59f915d018ad4", "gsd-core/workflows/profile-user.md": "33b150468a6789db", "gsd-core/workflows/progress.md": "3e4ac518362ba665", - "gsd-core/workflows/quick.md": "39dbcc9134466c77", + "gsd-core/workflows/quick.md": "db77a864d4eb70fa", "gsd-core/workflows/reapply-patches.md": "d449a23d3acf6379", "gsd-core/workflows/remove-phase.md": "e7a6af429b36e77b", "gsd-core/workflows/remove-workspace.md": "30ca05fe4a3efc25", diff --git a/tests/fixtures/golden-install-parity/zcode.json b/tests/fixtures/golden-install-parity/zcode.json index 350328757..641b1b3b2 100644 --- a/tests/fixtures/golden-install-parity/zcode.json +++ b/tests/fixtures/golden-install-parity/zcode.json @@ -318,7 +318,7 @@ "gsd-core/workflows/docs-update.md": "a320371be70f43d8", "gsd-core/workflows/edit-phase.md": "966a3eadd1bebc04", "gsd-core/workflows/eval-review.md": "32d3d7e80ab2bfc7", - "gsd-core/workflows/execute-phase.md": "9c4b1a77eb4fbd17", + "gsd-core/workflows/execute-phase.md": "b5e7fced436a73fd", "gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md": "f7782680c2b8ad6b", "gsd-core/workflows/execute-phase/steps/per-plan-worktree-gate.md": "7ebb7d1af6082028", "gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "7b2d9a4a4013fd6a", @@ -365,7 +365,7 @@ "gsd-core/workflows/pr-branch.md": "c87db7ac8c28be1b", "gsd-core/workflows/profile-user.md": "74005f062c870393", "gsd-core/workflows/progress.md": "46c83ad61b3c4a84", - "gsd-core/workflows/quick.md": "00729685595c3aa3", + "gsd-core/workflows/quick.md": "104ff08f63be9dd5", "gsd-core/workflows/reapply-patches.md": "39050f72601aec89", "gsd-core/workflows/remove-phase.md": "df9a45f0b1880999", "gsd-core/workflows/remove-workspace.md": "f67860c795fb4bfe", diff --git a/tests/workflow-size-baseline.json b/tests/workflow-size-baseline.json index 5768eacd8..2fdd8ebec 100644 --- a/tests/workflow-size-baseline.json +++ b/tests/workflow-size-baseline.json @@ -24,7 +24,7 @@ "docs-update.md": 56494, "edit-phase.md": 12927, "eval-review.md": 10332, - "execute-phase.md": 93389, + "execute-phase.md": 93277, "execute-plan.md": 35143, "explore.md": 11127, "extract-learnings.md": 12893, @@ -59,7 +59,7 @@ "pr-branch.md": 15963, "profile-user.md": 21624, "progress.md": 32632, - "quick.md": 51977, + "quick.md": 52280, "reapply-patches.md": 20312, "remove-phase.md": 8513, "remove-workspace.md": 7916,