Pre-submission checklist
GSD Version
1.4.5
Runtime
Claude Code
Operating System
macOS
Node.js Version
v24.15.0
Shell
/bin/zsh
Installation Method
npx @opengsd/gsd-core@latest (fresh run)
What happened?
GSD quick isolated executor starts from stale HEAD after pre-dispatch plan commit
What did you expect?
/gsd:quick --discuss solidify phase 36.1 ...
GSD config appears to have workflow.use_worktrees=true.
What happened
GSD quick mode created the quick plan and committed it before executor dispatch:
69923cf docs(260615-c4t): pre-dispatch plan for solidify phase 36.1
Then the isolated executor was spawned with a guard expecting that plan commit:
Expected HEAD: 69923cf551fa85c0645a3b41e66e0e65739f98a3
But the executor worktree was created from the previous commit:
Actual HEAD: 778c92c8c2b23d71b1281d6c1fa73aba8e4e1666
The executor halted correctly because it could not see the pre-dispatch plan commit.
I retried by spawning a fresh isolated executor after confirming main was ahead by the plan commit, but the new worktree again started from 778c92c instead of 69923cf.
Steps to reproduce
/gsd:quick --discuss solidify phase 36.1 ...
GSD config appears to have workflow.use_worktrees=true.
What happened
GSD quick mode created the quick plan and committed it before executor dispatch:
69923cf docs(260615-c4t): pre-dispatch plan for solidify phase 36.1
Then the isolated executor was spawned with a guard expecting that plan commit:
Expected HEAD: 69923cf551fa85c0645a3b41e66e0e65739f98a3
But the executor worktree was created from the previous commit:
Actual HEAD: 778c92c8c2b23d71b1281d6c1fa73aba8e4e1666
The executor halted correctly because it could not see the pre-dispatch plan commit.
I retried by spawning a fresh isolated executor after confirming main was ahead by the plan commit, but the new worktree again started from 778c92c instead of 69923cf.
Error output / logs
GSD warming
- No code edits were made.
- The only change so far is the pre-dispatch plan commit: 69923cf docs(260615-c4t): pre-dispatch plan for solidify phase 36.1.
- The isolated executor refused to run because Claude Code created its worktree from 778c92c instead of 69923cf.
- Because of your saved preference, I should not silently fall back to executing on main.
The safest option is to retry isolated after making sure the worktree starts from the plan commit.
GSD Configuration
GSD State (if relevant)
Runtime settings.json (if relevant)
How often does this happen?
Every time (100% reproducible)
Impact
Moderate — Feature is broken but I have a workaround
Workaround (if any)
No response
Additional context
No response
Privacy Checklist
Pre-submission checklist
GSD Version
1.4.5
Runtime
Claude Code
Operating System
macOS
Node.js Version
v24.15.0
Shell
/bin/zsh
Installation Method
npx @opengsd/gsd-core@latest (fresh run)
What happened?
GSD quick isolated executor starts from stale HEAD after pre-dispatch plan commit
What did you expect?
/gsd:quick --discuss solidify phase 36.1 ...
GSD config appears to have workflow.use_worktrees=true.
What happened
GSD quick mode created the quick plan and committed it before executor dispatch:
69923cf docs(260615-c4t): pre-dispatch plan for solidify phase 36.1
Then the isolated executor was spawned with a guard expecting that plan commit:
Expected HEAD: 69923cf551fa85c0645a3b41e66e0e65739f98a3
But the executor worktree was created from the previous commit:
Actual HEAD: 778c92c8c2b23d71b1281d6c1fa73aba8e4e1666
The executor halted correctly because it could not see the pre-dispatch plan commit.
I retried by spawning a fresh isolated executor after confirming main was ahead by the plan commit, but the new worktree again started from 778c92c instead of 69923cf.
Steps to reproduce
/gsd:quick --discuss solidify phase 36.1 ...
GSD config appears to have workflow.use_worktrees=true.
What happened
GSD quick mode created the quick plan and committed it before executor dispatch:
69923cf docs(260615-c4t): pre-dispatch plan for solidify phase 36.1
Then the isolated executor was spawned with a guard expecting that plan commit:
Expected HEAD: 69923cf551fa85c0645a3b41e66e0e65739f98a3
But the executor worktree was created from the previous commit:
Actual HEAD: 778c92c8c2b23d71b1281d6c1fa73aba8e4e1666
The executor halted correctly because it could not see the pre-dispatch plan commit.
I retried by spawning a fresh isolated executor after confirming main was ahead by the plan commit, but the new worktree again started from 778c92c instead of 69923cf.
Error output / logs
GSD warming - No code edits were made. - The only change so far is the pre-dispatch plan commit: 69923cf docs(260615-c4t): pre-dispatch plan for solidify phase 36.1. - The isolated executor refused to run because Claude Code created its worktree from 778c92c instead of 69923cf. - Because of your saved preference, I should not silently fall back to executing on main. The safest option is to retry isolated after making sure the worktree starts from the plan commit.GSD Configuration
GSD State (if relevant)
Runtime settings.json (if relevant)
How often does this happen?
Every time (100% reproducible)
Impact
Moderate — Feature is broken but I have a workaround
Workaround (if any)
No response
Additional context
No response
Privacy Checklist