Commit Graph

45 Commits

Author SHA1 Message Date
Lex Christopherson
810409c363 feat(plan-phase): add planning principles for security, performance, observability
Front-load mindset guidance before process steps:
- Secure by design: assume hostile input
- Performance by design: assume production load
- Observable by design: plan for self-debugging

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 12:23:37 -06:00
Lex Christopherson
863f86e4be feat: surface verify-work option after plan execution
Add /gsd:verify-work to "Also available" sections in execute-phase workflow:
- Route A: After plan completion, before next plan
- Route B: After phase completion, before next phase
- Route C: After milestone completion, before archiving

Users can now easily run manual acceptance testing at any completion point.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 10:07:04 -06:00
Lex Christopherson
a9a9efff86 feat(09-01): create verify-work workflow
- GSD-compliant XML structure with terse step names
- All user interaction via AskUserQuestion
- Issues logged to phase-scoped file (not global ISSUES.md)
- References uat-issues.md template
2026-01-08 08:56:43 -06:00
Lex Christopherson
da884ea7f0 fix: enforce mandatory verification before phase/milestone completion routing
- Rewrite offer_next step in execute-phase.md as mandatory verification gate
- Rewrite offer_next_phase step in transition.md with explicit verification
- Rewrite route step in progress.md with numbered verification steps
- Replace broken regex [0-9] (only matched single digits) with ROADMAP.md reading
- Add decision tables mapping conditions to explicit routes (A, B, C, D)
- Require Claude to "State the counts" before any routing decision
- Add "Do NOT skip this verification" instruction to prevent premature completion claims

Fixes issue where Claude would declare "phase complete" or "milestone complete"
without verifying remaining plans actually exist.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 15:19:22 -06:00
Lex Christopherson
1b9c2f2455 fix: commit phase artifacts when created (#12)
Each phase workflow now commits its artifacts immediately:
- discuss-phase.md commits CONTEXT.md
- research-phase.md commits RESEARCH.md
- plan-phase.md commits PLAN.md (and DISCOVERY.md)
- execute-phase.md commits only execution artifacts (SUMMARY, STATE, ROADMAP)

Planning artifacts are inputs to execution and should be saved when created.
Execution artifacts are outputs and are committed after execution completes.

Closes #12
2026-01-06 12:12:21 -06:00
Lex Christopherson
002a819a9c fix: persist milestone discussion context across /clear (#11)
- Add MILESTONE-CONTEXT.md template for handoff between commands
- discuss-milestone now writes context to .planning/MILESTONE-CONTEXT.md
- create-milestone reads context file and deletes after use

Fixes #11

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-06 11:33:25 -06:00
Lex Christopherson
85f0ea5c58 feat: TDD features use dedicated plans for full context quality
TDD requires 2-3 execution cycles (RED → GREEN → REFACTOR), each with
file reads, test runs, and potential debugging. This consumes 40-50%
of context for a single feature. Dedicated TDD plans ensure full
quality throughout the cycle.

- TDD plans use `type: tdd` frontmatter with `<feature>` element
- One feature per TDD plan (batching defeats the purpose)
- Target ~40% context usage for TDD plans
- Standard plans handle non-TDD work with 2-3 tasks

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-05 21:55:36 -06:00
Lex Christopherson
875ac900a2 feat: implement per-task atomic commits for better AI observability
- Each task commits immediately after completion (feat/fix/test/refactor)
- Plan completion commits metadata only (docs: SUMMARY + STATE + ROADMAP)
- Git history becomes primary context source for future Claude sessions
- Better bisect granularity, failure recovery, and revert capabilities

Changes:
- execute-phase.md: Added <task_commit> protocol and per-task commit flow
- execute-plan.md: Updated commit rules and success criteria
- git-integration.md: New task-completion format, strategy rationale
- tdd.md: Aligned TDD commits with standard task commit pattern
- summary.md: Added Task Commits section with commit hashes
- README.md: Rewrote git history section with atomic commit benefits
- scope-estimation.md: Clarified commit counts per plan
- principles.md: Added <atomic_commits> section explaining strategy

Each plan now produces 3-4 commits (2-3 task commits + 1 metadata commit)
instead of single monolithic commit. Optimizes observability for solo
developer + Claude Code workflow.
2026-01-05 16:09:14 -06:00
Lex Christopherson
f34fd45a18 feat(08-01): clarify create-milestone.md file locations with explicit instructions
- Added "File to update: .planning/ROADMAP.md" directive to update_roadmap step
- Structured update process as numbered steps (1. Milestones section, 2. Phase details, 3. Progress table)
- Verified complete-milestone.md archival logic already correct
- Pattern established: active milestone → ROADMAP.md, shipped milestone → milestones/vX.Y-ROADMAP.md
2026-01-05 12:15:48 -06:00
Lex Christopherson
b26cbe69d0 feat(06-02): Intelligent context assembly via frontmatter dependency graph
- Replaced vague summary scanning with frontmatter-based intelligent selection
- Build dependency graph from requires/provides/affects with transitive closure
- Auto-select 2-4 relevant phases via affects field, subsystem matching, requires chains
- Extract context from frontmatter before reading full summaries
- Inject assembled context package into PLAN.md automatically

Planning transformed: "Claude guesses" → "System assembles optimal context"

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-05 09:45:26 -06:00
Lex Christopherson
3307c05f54 feat(06-01): YAML frontmatter schema with dependency graph metadata enabling automatic context assembly
- Added comprehensive YAML frontmatter schema to summary.md template
- Frontmatter includes dependency graph (requires/provides/affects), subsystem, tech tracking, key files
- Added frontmatter population guidance to execute-phase.md
- Enables intelligent summary selection via dependency graph scanning

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-05 09:43:02 -06:00
Lex Christopherson
35739c84de fix: clarify depth controls compression, not inflation
Depth sets a ceiling on compression, not a floor on expansion.
Small phases stay small even in comprehensive mode.

- Comprehensive auth = 8 plans (work warrants it)
- Comprehensive "add favicon" = 1 plan (that's all it is)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 20:07:22 -06:00
Lex Christopherson
484134e63c feat: add depth parameter for planning thoroughness
Adds depth setting (quick/standard/comprehensive) to control how many
phases and plans get created. Tasks per plan stays constant at 2-3.

- Quick: 3-5 phases, 1-3 plans each
- Standard: 5-8 phases, 3-5 plans each
- Comprehensive: 8-12 phases, 5-10 plans each

Depth increases plan COUNT, never plan SIZE. More plans = more
thoroughness with same quality per plan.

Files changed:
- new-project.md: depth question after mode
- config.json: depth field added
- create-roadmap.md: depth-aware phase guidance
- plan-phase.md: depth-aware plan splitting
- scope-estimation.md: depth calibration section
- create-milestone.md: removed hardcoded 3-6 limit
- new-milestone.md: removed hardcoded 3-6 limit
- roadmap.md template: depth-aware guidance

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 18:31:59 -06:00
Lex Christopherson
5390b33bd2 feat(05-tdd): TDD integration with detection, annotation, and execution flow
- Add references/tdd.md with detection heuristics, red-green-refactor cycle
- Add tdd_annotation section to plan-format.md with task structure
- Expand plan-phase.md with TDD detection and annotation guidance
- Add tdd_execution section to execute-phase.md with commit patterns
- TDD-aware task routing in execute step

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 11:40:56 -06:00
Lex Christopherson
86878b9721 fix: restore deterministic bash commands, remove redundant decision_gate
- Remove decision_gate step (redundant after confirm_breakdown approval)
- Restore explicit bash commands in load_codebase_context, identify_phase,
  read_project_history, and gather_phase_context for consistent behavior

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 13:39:00 -06:00
Lex Christopherson
df1f138478 feat(04-02): 70% context reduction for plan-phase (scope-estimation 74%, plan-phase.md 66%)
- scope-estimation.md: 451 → 115 lines (removed ASCII art, collapsed anti-patterns)
- plan-phase.md workflow: 864 → 290 lines (condensed discovery tree, removed verbose examples)
- Total Phase 4 context reduction: 101KB → 30KB (exceeds 37% target)
2025-12-29 12:18:08 -06:00
Lex Christopherson
f24203dc91 fix: explicit plan count check in offer_next step
Adds bash logic to count PLAN vs SUMMARY files before deciding
whether to offer next plan or next phase. Fixes bug where GSD
would skip remaining plans in a phase.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 11:39:42 -06:00
Lex Christopherson
31597a9481 feat: evolutionary PROJECT.md system
PROJECT.md evolves throughout project lifecycle:
- Requirements have states: Validated, Active, Out of Scope
- Decisions track outcomes: Good, Revisit, Pending
- Phase transitions update requirements and log decisions
- Milestone completions trigger full PROJECT.md review

STATE.md now references PROJECT.md (not a copy):
- Claude reads PROJECT.md directly for full context
- Smaller STATE.md footprint (~100 lines)
- Project Reference section with core value and focus

Brownfield projects infer Validated requirements from existing code.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 10:03:29 -06:00
Lex Christopherson
c11b744f27 fix: improve incremental codebase map updates
- Remove arbitrary ">3 files" threshold
- Add specific update actions per change type
- Add explicit skip conditions (bug fixes, content changes)
- Clarify update format: single targeted edits, not section rewrites
- Add "file renamed/moved" case to update paths

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-18 09:18:54 -06:00
Lex Christopherson
b1f9d5741d feat: add file paths to codebase mapping output
- Agent prompts now explicitly require file paths in findings
- Templates updated with backtick-formatted path examples
- CONCERNS.md examples show Files: field for every issue
- ARCHITECTURE.md now welcomes file paths as concrete examples
- Makes codebase docs actionable for Claude during planning

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-18 08:49:32 -06:00
Lex Christopherson
dccde98f64 fix: remove arbitrary 100-line limit from codebase mapping
The limit was causing loss of useful context, especially code examples
in TESTING.md and CONVENTIONS.md. Document quality > arbitrary brevity.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 15:11:30 -06:00
Lex Christopherson
c3273a50c1 fix: use inline code for Next Up commands (avoids nesting ambiguity) 2025-12-17 13:03:48 -06:00
Lex Christopherson
21387f8f11 feat: add git commit step to map-codebase workflow 2025-12-17 11:13:30 -06:00
Lex Christopherson
8d2f307451 feat(03-01): brownfield integration into GSD workflows
- new-project.md detects existing code, offers /gsd:map-codebase first
- plan-phase loads relevant codebase context based on phase type
- execute-phase updates codebase map incrementally after execution

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 10:37:57 -06:00
Lex Christopherson
8a0dcd668e feat(02-02): implement parallel Explore agent orchestration
- spawn_agents: 4 parallel agents with Task tool patterns
- collect_results: TaskOutput tool for aggregating agent findings
- write_documents: template filling logic with 100-line limit
- offer_next: GSD-style completion output

Phase 2 complete: /gsd:map-codebase fully specified
2025-12-17 10:08:14 -06:00
Lex Christopherson
cfde291637 feat(02-01): /gsd:map-codebase command and workflow skeleton
- commands/gsd/map-codebase.md: slash command entry point
- get-shit-done/workflows/map-codebase.md: workflow with 6 process steps
- Documents 4 parallel Explore agents and 7 output files
- Agent orchestration to be implemented in plan 02-02
2025-12-17 10:04:17 -06:00
Lex Christopherson
c2359cdaf3 refactor: remove research-project command
Pre-roadmap research was over-engineered theater:
- 3 parallel subagents producing fragmented output
- Files with unclear consumption points
- Duplicated what research-phase does better (just-in-time)

Deleted:
- commands/gsd/research-project.md
- get-shit-done/workflows/research-project.md
- get-shit-done/templates/project-research.md
- get-shit-done/references/research-subagent-prompts.md

Phase-level research (/gsd:research-phase) remains for niche domains.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 10:01:02 -06:00
Lex Christopherson
733fc1440c feat: improved continuation UI with context and visual hierarchy
- Add continuation-format.md reference defining the standard format
- Replace "## To Continue" with "## ▶ Next Up"
- Show plan/phase name + description instead of just command paths
- Add `/clear` explanation: "fresh context window"
- Change "Other options" to "Also available"
- Add /gsd:research-phase to phase planning options
- Add visual separators and completion headers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-17 09:00:18 -06:00
Lex Christopherson
d45fbd845d fix: replace inline command invocation with clear-then-paste pattern
End-of-command workflows now show explicit instructions to run /clear
and paste the next command, rather than offering numbered options that
invoke SlashCommand directly. This prevents users from accidentally
exhausting context by continuing work in the same session.

- Updated 16 files (commands and workflows)
- YOLO mode auto-continues preserved (user explicitly chose automation)
- In-workflow decisions like consider-issues preserved

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 09:33:51 -06:00
Lex Christopherson
484257a413 refactor: derive phase count from work, not arbitrary limits
Remove fixed 3-6 phase constraint and time-based sizing (1-3 days).
Phase count now emerges from deliverable coherence—simple projects
get fewer phases, complex projects get more.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 08:49:49 -06:00
Lex Christopherson
293447d6a6 fix: mandate AskUserQuestion for all exploration questions
All questioning workflows now require AskUserQuestion tool for every
question, not just decision gates. Inline text questions are prohibited.

Updated: questioning.md, new-project.md, discuss-phase.md,
discuss-milestone.md, and their workflow files.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 08:34:50 -06:00
Lex Christopherson
a906e2ad35 refactor: use <if mode> tags for yolo/interactive branching
Cleaner conditional structure in execute-phase and transition workflows.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 08:20:15 -06:00
Lex Christopherson
b4de126ade fix: update stale CONTEXT.md references to new vision structure
plan-phase, execute-phase, resume-project now reference:
- <vision> instead of <phase_objectives>
- <essential> instead of <constraints>/<risks>
- <boundaries> instead of <success_indicators>

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 08:19:24 -06:00
Lex Christopherson
3e8e5d537d fix: present new-project completion inline instead of as question
Show slash commands inline so users can copy them to fresh context,
matching pattern used by other GSD commands.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 07:38:42 -06:00
Lex Christopherson
77ea129fd5 refactor: research workflow as Claude Code context injection
Research is now optimized for Claude Code implementation quality:
- PROJECT.md-driven (features, constraints, questions, decisions)
- High-confidence only (no low-quality padding)
- 3 focused files: stack.md, implementation.md, risks.md
- Code examples with current vs deprecated patterns

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 23:23:15 -06:00
Lex Christopherson
46d63991dd fix: yolo mode now skips confirmation gates in plan-phase
Restructured confirm_breakdown and decision_gate steps to check
mode FIRST with explicit skip instructions, preventing Claude from
reading through and executing the prompting path regardless of config.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 23:08:04 -06:00
Lex Christopherson
a3c351452b feat(03-01): /gsd:create-roadmap command with research-aware workflow
- Create /gsd:create-roadmap slash command entry point
- Add check_research step to workflow after check_brief
- Incorporate research findings into phase structure planning
- Add Research Context section to roadmap output when research exists

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 21:38:26 -06:00
Lex Christopherson
08539ffd45 feat(02-02): research subagent prompt templates
- Created comprehensive prompts for ecosystem, architecture, pitfalls, standards
- Updated workflow with required_reading and concrete Task tool examples
- Batch ordering: ecosystem+architecture first, pitfalls+standards second

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 21:33:06 -06:00
Lex Christopherson
c7a88a6ab0 feat(02-01): research-project command, workflow, and template
- Created /gsd:research-project slash command for pre-roadmap domain research
- Built batched subagent workflow (3-4 max parallel, 2 batches)
- Defined project-research template for ecosystem/architecture/pitfalls/standards

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 21:29:40 -06:00
Lex Christopherson
e8d68685c1 feat(gsd): add research-phase for niche domain ecosystem discovery
- Add /gsd:research-phase command for comprehensive ecosystem research
- Rename FINDINGS.md → DISCOVERY.md for clarity
- Rename research-phase.md → discovery-phase.md (shallow "which library")
- New research-phase.md for deep "how experts build this" research
- Creates RESEARCH.md with stack, patterns, pitfalls, don't-hand-roll
- plan-phase loads RESEARCH.md when present

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 18:15:22 -06:00
Lex Christopherson
bcc58add6a Prevent scope creep in discuss-phase command
Add explicit guardrails to ensure context gathering questions clarify
HOW to implement roadmap scope rather than suggesting WHAT to add.
Questions must never expand scope - if user adds scope, direct them
to update ROADMAP first instead.

Changes:
- Template: Replace "Secondary goals" with "Clarifications" (HOW, not WHAT ELSE)
- Workflow: Add CRITICAL block forbidding scope-expanding questions
- Workflow: Update decision gate to emphasize clarification over expansion
- Command: Add NO SCOPE CREEP rules

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 17:51:11 -06:00
Lex Christopherson
4e72b469a0 Include PLAN.md in phase completion commits
Preserve the execution plan alongside SUMMARY.md in git history.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 17:42:19 -06:00
Lex Christopherson
b8879c6253 Add TDD guidance to planning workflow
- New <test_driven_when_beneficial> principle in references/principles.md
- TDD assessment step in plan-phase.md break_into_tasks
- Pragmatic approach: use TDD when behavior is definable upfront

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 10:15:59 -06:00
Lex Christopherson
2e1b0b8d70 Add issue triage system to prevent deferred issue pile-up
- /gsd:consider-issues reviews issues with codebase context
- Phase completion now prompts for issue review
- Auto-categorizes: resolved, urgent, natural-fit, can-wait
- README: explain context exhaustion problem and subagent solution

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 08:25:51 -06:00
Lex Christopherson
1fe3fa427e Initial commit: Get Shit Done - meta-prompting system for Claude Code
- NPX install: npx get-shit-done-cc
- Slash commands for project management
- Context engineering templates and workflows

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-15 07:44:41 -06:00