You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(workflows): prevent auto_advance config from persisting across sessions
Introduce ephemeral `workflow._auto_chain_active` flag to separate chain
propagation from the user's persistent `workflow.auto_advance` preference.
Previously, `workflow.auto_advance` was set to true by --auto chains and
only cleared at milestone completion. If a chain was interrupted (context
limit, crash, user abort), the flag persisted in .planning/config.json
and caused all subsequent manual invocations to auto-advance unexpectedly.
The fix adds a "sync chain flag with intent" step to discuss-phase,
plan-phase, and execute-phase workflows: when --auto is NOT in arguments,
the ephemeral _auto_chain_active flag is cleared. The persistent
auto_advance setting (from /gsd:settings) is never touched, preserving
the user's deliberate preference.
Closes#857
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: get-shit-done/references/checkpoints.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ Plans execute autonomously. Checkpoints formalize interaction points where human
8
8
2.**Claude sets up the verification environment** - Start dev servers, seed databases, configure env vars
9
9
3.**User only does what requires human judgment** - Visual checks, UX evaluation, "does this feel right?"
10
10
4.**Secrets come from user, automation comes from Claude** - Ask for API keys, then Claude uses them via CLI
11
-
5.**Auto-mode bypasses verification/decision checkpoints** — When `workflow.auto_advance` is true in config: human-verify auto-approves, decision auto-selects first option, human-action still stops (auth gates cannot be automated)
11
+
5.**Auto-mode bypasses verification/decision checkpoints** — When `workflow._auto_chain_active` or `workflow.auto_advance` is true in config: human-verify auto-approves, decision auto-selects first option, human-action still stops (auth gates cannot be automated)
Copy file name to clipboardExpand all lines: get-shit-done/workflows/discuss-phase.md
+11-4Lines changed: 11 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -589,17 +589,24 @@ node "$HOME/.claude/get-shit-done/bin/gsd-tools.cjs" commit "docs(state): record
589
589
Check for auto-advance trigger:
590
590
591
591
1. Parse `--auto` flag from $ARGUMENTS
592
-
2.Read `workflow.auto_advance`from config:
592
+
2.**Sync chain flag with intent** — if user invoked manually (no `--auto`), clear the ephemeral chain flag from any previous interrupted `--auto` chain. This does NOT touch `workflow.auto_advance`(the user's persistent settings preference):
**If `state_exists` is false but `.planning/` exists:** Offer reconstruct or continue.
27
27
28
28
When `parallelization` is false, plans within a wave execute sequentially.
29
+
30
+
**Sync chain flag with intent** — if user invoked manually (no `--auto`), clear the ephemeral chain flag from any previous interrupted `--auto` chain. This does NOT touch `workflow.auto_advance` (the user's persistent settings preference). Must happen before any config reads (checkpoint handling also reads auto-advance flags):
Copy file name to clipboardExpand all lines: get-shit-done/workflows/plan-phase.md
+9-2Lines changed: 9 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -441,12 +441,19 @@ Route to `<offer_next>` OR `auto_advance` depending on flags/config.
441
441
Check for auto-advance trigger:
442
442
443
443
1. Parse `--auto` flag from $ARGUMENTS
444
-
2.Read `workflow.auto_advance`from config:
444
+
2.**Sync chain flag with intent** — if user invoked manually (no `--auto`), clear the ephemeral chain flag from any previous interrupted `--auto` chain. This does NOT touch `workflow.auto_advance`(the user's persistent settings preference):
0 commit comments