* fix(#14): document --auto in progress.md and wire chaining logic in next.md The --auto flag was accepted by /gsd:progress --next --auto but silently ignored: it was not documented in the <flags> section of progress.md and had no handling in the next.md show_and_execute step, so it was dropped at the handoff boundary and never produced step chaining. - Add --auto and --next --auto entries to progress.md <flags> - Update progress.md <process> to explicitly list --auto as a passthrough arg - Add --auto chaining logic to next.md show_and_execute: after each step completes, re-invoke /gsd:progress --next --auto until milestone complete or a blocking decision is required - Add regression test (4 assertions) covering all three fix points Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(#14): bump lint-test-file-count progress ceiling for bug-14 test bug-14-progress-auto-flag-dropped.test.cjs resolves to the "progress" effective prefix and legitimately grows the cluster to 6. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * chore(#14): add changeset fragment Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(#14): address review feedback — differentiate duplicate tests, scope assertions to specific blocks Test 2 now extracts the <process> block and asserts --auto within it, distinguishing it from test 1's <flags>-level check. Remaining assertions use semantic token matches (--auto, --next --auto) that are robust to benign reformatting. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
48 lines
2.5 KiB
Markdown
48 lines
2.5 KiB
Markdown
---
|
|
name: gsd:progress
|
|
description: Check progress, advance workflow, or dispatch freeform intent — the unified GSD situational command
|
|
argument-hint: "[--forensic | --next | --do \"task description\"]"
|
|
allowed-tools:
|
|
- Read
|
|
- Bash
|
|
- Grep
|
|
- Glob
|
|
- SlashCommand
|
|
- AskUserQuestion
|
|
requires: [phase]
|
|
---
|
|
<objective>
|
|
Check project progress, summarize recent work and what's ahead, then intelligently route to the next action.
|
|
|
|
Three modes:
|
|
- **default**: Show progress report + intelligently route to the next action (execute or plan). Provides situational awareness before continuing work.
|
|
- **--next**: Automatically advance to the next logical step without manual route selection. Reads STATE.md, ROADMAP.md, and phase directories. Supports `--force` to bypass safety gates.
|
|
- **--do "task description"**: Analyze freeform natural language and dispatch to the most appropriate GSD command. Never does the work itself — matches intent, confirms, hands off.
|
|
- **--forensic**: Append a 6-check integrity audit after the standard progress report.
|
|
</objective>
|
|
|
|
<flags>
|
|
- **--next**: Detect current project state and automatically invoke the next logical GSD workflow step. Scans all prior phases for incomplete work before routing. `--next --force` bypasses safety gates.
|
|
- **--next --auto**: Like `--next`, but after the determined step completes, automatically re-invokes `/gsd:progress --next --auto` to continue chaining steps until completion or a blocking decision. Enables hands-free plan→execute→verify→complete progression.
|
|
- **--do "..."**: Smart dispatcher — match freeform intent to the best GSD command using routing rules, confirm the match, then hand off.
|
|
- **--forensic**: Run 6-check integrity audit after the standard progress report.
|
|
- **(no flag)**: Standard progress check + intelligent routing (Routes A through F).
|
|
</flags>
|
|
|
|
<execution_context>
|
|
@~/.claude/get-shit-done/workflows/progress.md
|
|
@~/.claude/get-shit-done/workflows/next.md
|
|
@~/.claude/get-shit-done/workflows/do.md
|
|
@~/.claude/get-shit-done/references/ui-brand.md
|
|
</execution_context>
|
|
|
|
<process>
|
|
Arguments provided: "$ARGUMENTS"
|
|
Parse the first token from the provided arguments:
|
|
- If it is `--next`: strip the flag, execute the next workflow (passing remaining args e.g. --force, --auto).
|
|
- If it is `--do`: strip the flag, pass remainder as freeform intent to the do workflow.
|
|
- Otherwise: execute the progress workflow end-to-end (pass --forensic through if present).
|
|
|
|
Preserve all routing logic from the target workflow.
|
|
</process>
|