Commit Graph

135 Commits

Author SHA1 Message Date
Lex Christopherson
15d4e27075 fix(next-steps): remove /gsd:research-phase from workflow suggestions
Research is now integrated into /gsd:plan-phase by default.
Remove standalone research command from "Also available" sections.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 13:14:01 -06:00
Lex Christopherson
7a451e6410 feat(statusline): show update indicator when new GSD version available
Adds SessionStart hook that checks npm in background, caches result.
Statusline shows "⬆ /gsd:update │" when update available.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 12:53:45 -06:00
Lex Christopherson
1f8c112fe2 fix: remove commit capability from project researcher agent
Researchers are always spawned in parallel (4 at once). Committing is
now exclusively handled by the orchestrator or synthesizer agent after
all researchers complete.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 11:54:37 -06:00
Lex Christopherson
daa54737cf feat: add GSD brand system for consistent UI
Add ui-brand.md reference with visual patterns:
- Stage banners with GSD ► prefix
- Checkpoint boxes (62-char width)
- Status symbols vocabulary
- Next Up routing blocks

Update orchestrators to use branded output.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 11:51:57 -06:00
Lex Christopherson
6ae0923c29 fix: add explicit roadmap approval gate before committing
- Present proposed roadmap nicely inline (table + phase details)
- Use AskUserQuestion to confirm before committing
- Options: Approve, Adjust phases, Review full file
- Loop on adjustments until user approves

Previously, roadmap was committed immediately without user review.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 11:27:51 -06:00
Lex Christopherson
1d155e978b feat: add gsd-research-synthesizer agent for SUMMARY.md creation
- Create dedicated synthesizer agent to handle research synthesis
- Move SUMMARY.md creation from main orchestrator to subagent
- Reduces main context usage (~2000+ lines of research output)
- Synthesizer reads 4 research files and produces unified summary

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 11:26:19 -06:00
Lex Christopherson
18351fe3e4 feat: unify project initialization into single /gsd:new-project flow
Consolidates 4 separate commands into one unified flow:
- /gsd:new-project now handles: questioning → research → requirements → roadmap
- Creates gsd-roadmapper agent for heavy lifting (goal-backward, coverage validation)
- Adds atomic commits after each stage for crash recovery
- Deprecates standalone research-project, define-requirements, create-roadmap
  (kept for mid-project use)

Fixes from audit:
- Add requirements quality criteria (specific, user-centric, atomic, independent)
- Add milestone context to research prompts (greenfield vs subsequent)
- Add quality gates per research dimension
- Add template references for consistent output format

Removes deprecated gsd-researcher.md (replaced by project/phase researchers)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 11:15:58 -06:00
Lex Christopherson
a7249ebe83 feat(discuss-phase): intelligent gray area analysis with scope guardrails
- Analyze phase to identify gray areas by category (UI, UX, Behavior, etc.)
- Present multi-select for user to choose which areas to discuss
- Deep-dive each selected area with focused questioning loop
- Explicit scope guardrail: clarify HOW, never expand WHAT
- Capture deferred ideas without acting on them
- Downstream awareness: CONTEXT.md feeds researcher and planner agents
- Template restructured for decisions (domain, decisions, discretion, deferred)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 10:11:17 -06:00
Lex Christopherson
2144960c6c feat: integrate research into plan-phase with specialized agents
Split gsd-researcher into two specialized agents:
- gsd-phase-researcher: tailored for phase research before planning
- gsd-project-researcher: tailored for ecosystem research before roadmap

Updated /gsd:plan-phase to auto-research before planning:
- Research runs if no RESEARCH.md exists (silent use if exists)
- --research flag forces re-research
- --skip-research flag bypasses research entirely
- Researchers commit their output

This enables single-command workflow: /gsd:plan-phase does
research → plan → verify in one orchestrated flow.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 10:10:22 -06:00
Lex Christopherson
ce10c9e6d1 docs(16-02): update success criteria with verification loop steps
- Plans created (PLANNING COMPLETE or CHECKPOINT handled)
- gsd-plan-checker spawned (unless --skip-verify)
- Verification passed OR user override OR max iterations with user decision
- User sees status between agent spawns

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 09:00:22 -06:00
Lex Christopherson
fb0ba88428 feat(16-02): add planner -> checker verification loop to plan-phase
- Steps 1-7: Validate, parse, spawn planner (existing flow)
- Step 8: Spawn gsd-plan-checker with verification_context
- Step 9: Handle checker return (passed | issues)
- Step 10: Revision loop (max 3 iterations)
- Step 11: Present final status with verification outcome

User sees ping-pong between planner and checker in main context.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 08:59:59 -06:00
Lex Christopherson
58df1ba1e1 chore(16-02): update plan-phase.md frontmatter for verification loop
- Remove context: fork (orchestrator stays in main context)
- Add --skip-verify flag to argument-hint
- Add Task tool to allowed-tools for spawning checker

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 08:58:55 -06:00
Lex Christopherson
0585752d74 refactor(15-02): /gsd:plan-phase to thin orchestrator
- Reduced from 103 to 189 lines (thin orchestrator, not workflow)
- Added agent: gsd-planner frontmatter
- Removed all workflow/reference inclusions
- Orchestrator now: validate, parse, spawn agent, handle returns
- Planning methodology delegated to gsd-planner agent
2026-01-16 07:48:16 -06:00
Lex Christopherson
d45261e36d feat(plan-phase): run in forked context
Adds context: fork and agent: general-purpose to plan-phase command.

This isolates the heavy discovery/synthesis work in a fresh 200k context
window, keeping the main conversation clean.

Removes AskUserQuestion from allowed-tools (workflow doesn't use it).
2026-01-16 07:32:38 -06:00
Lex Christopherson
7865f123ea feat(gsd): add update command with changelog display
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 18:21:02 -06:00
Lex Christopherson
a151696d30 refactor(research): inject rich context from orchestrators to agent
research-phase.md:
- Added <key_insight> framing ("what don't I know that I don't know")
- Added <downstream_consumer> explaining plan-phase integration
- Added <quality_gate> checklist

research-project.md:
- Added milestone context (greenfield vs v1.1+)
- Added <downstream_consumer> per dimension
- Added <quality_gate> per agent
- Enhanced roadmap implications guidance

gsd-researcher.md:
- Simplified <gsd_integration> to point to orchestrator-provided context
- Agent is now pure research capability, context is injected

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 17:29:50 -06:00
Lex Christopherson
411b5a369b feat(gsd): add dedicated codebase mapper agent
Reduces context exhaustion during /gsd:map-codebase by having agents
write documents directly instead of returning findings to orchestrator.

- Create gsd-codebase-mapper agent with embedded templates
- Agent understands downstream consumers (plan-phase, execute-plan)
- Parameterized by focus: tech, arch, quality, concerns
- Each focus writes specific documents directly to .planning/codebase/
- Orchestrator receives only confirmation + line counts

Context savings: ~40 lines returned vs potentially thousands of lines
of exploration findings previously transferred back to orchestrator.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 17:16:02 -06:00
Lex Christopherson
ac316e8fdd fix(new-milestone): add explicit MILESTONE-CONTEXT.md reference
The context section now includes @.planning/MILESTONE-CONTEXT.md so
Claude actually loads the file from discuss-milestone instead of just
seeing a text mention in the process steps.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 17:07:19 -06:00
Lex Christopherson
982faf16f8 refactor(14-03): convert research-project to thin orchestrator
- Command spawns 4 parallel gsd-researcher agents
- Stack, Features, Architecture, Pitfalls each get dedicated agent
- Orchestrator handles project analysis and synthesis
- Reduced from 138 + 427 workflow lines to 137 lines
2026-01-15 17:03:38 -06:00
Lex Christopherson
94f3083c78 refactor(14-02): convert /gsd:research-phase to thin orchestrator
- Reduce from ~540 lines (command + workflow) to 130 lines
- Delegate research methodology to gsd-researcher agent
- Keep phase validation, context gathering in orchestrator
- Add spawn and continuation patterns for agent
2026-01-15 17:03:18 -06:00
Lex Christopherson
81c6c75b0e refactor(13-02): rewrite /gsd:debug as thin orchestrator
- Reduced from 202 lines to 149 lines
- Removed workflow/reference loading (expertise now in agent)
- Uses subagent_type="gsd-debugger" instead of "general-purpose"
- Keeps symptom gathering and checkpoint handling in orchestrator
2026-01-15 16:19:59 -06:00
Lex Christopherson
2869fee206 refactor(verify-work): consolidate plan-fix into plan-phase --gaps
Unify gap handling - whether discovered by code verification or user
testing, gaps feed into the same plan-phase --gaps workflow.

Changes:
- Delete commands/gsd/plan-fix.md (redundant)
- Update verify-work to route to plan-phase --gaps
- Update progress Route E to detect UAT gaps
- Change UAT.md "Issues" section to "Gaps" with YAML format
- Extend plan-phase --gaps to read from both VERIFICATION.md and UAT.md
- Update diagnose-issues to output gaps in YAML format
- Update all references (debug, templates, workflows)

One path: gap discovered → diagnosed → plan-phase --gaps → fixed

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 15:40:18 -06:00
Lex Christopherson
8c66a7167a perf(verify-work): batch UAT file writes instead of per-response
Write to file only on: issue found, every 5 passes, or completion.
Eliminates wasteful I/O while maintaining reasonable crash recovery.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 15:24:25 -06:00
Lex Christopherson
794e08412b fix(new-milestone): present research as equal option in routing
Match new-project format — both research-project and define-requirements
shown as equal paths with guidance on when to use each.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 13:10:10 -06:00
Lex Christopherson
d1c1c1790a fix(progress): add Route F for between-milestones state
When ROADMAP.md is missing but PROJECT.md exists (after complete-milestone),
progress now correctly routes to /gsd:discuss-milestone instead of suggesting
new-project.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 13:01:54 -06:00
Lex Christopherson
60070b9b7a fix(audit): version MILESTONE-AUDIT.md and archive on completion
- audit-milestone: create v{version}-MILESTONE-AUDIT.md (versioned)
- complete-milestone: move audit file to milestones/ archive
- plan-milestone-gaps: find versioned audit file

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 13:00:12 -06:00
Lex Christopherson
2d3a1eadda refactor(milestone): rework milestone cycle for proper requirements flow
- complete-milestone: archive + delete ROADMAP.md and REQUIREMENTS.md
- new-milestone: brownfield new-project (updates PROJECT.md, routes to requirements)
- discuss-milestone: now required before new-milestone (creates context file)
- research-project: milestone-aware (focuses on new features, not validated ones)
- create-roadmap: continues phase numbering from previous milestone

Flow: complete → discuss → new-milestone → research → requirements → roadmap

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 12:57:33 -06:00
Lex Christopherson
70cfd76c21 fix(execute-phase): include VERIFICATION.md in phase completion commit
Phase completion commit now stages VERIFICATION.md alongside ROADMAP.md,
STATE.md, and REQUIREMENTS.md so verification results are tracked.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 11:35:53 -06:00
Lex Christopherson
7b62452200 refactor(audit-milestone): read existing verifications instead of re-verifying
Milestone audit now reads existing VERIFICATION.md files from phases
(already created during execute-phase) rather than spawning verifiers
again. Aggregates tech debt and deferred gaps, then runs integration
checker for cross-phase wiring. Adds tech_debt status for non-blocking
accumulated debt.

Also adds VERIFICATION.md to phase completion commit in execute-phase.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 11:34:43 -06:00
Lex Christopherson
1325d3077d refactor: remove domain expertise feature
The ~/.claude/skills/expertise/ system was personal tooling
that doesn't exist for other users. Removed from:
- create-roadmap workflow (detect_domain step)
- plan-phase workflow (domain loading)
- roadmap template (Domain Expertise section)
- phase-prompt template (domain frontmatter)
- plan-format reference (domain field)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 11:22:39 -06:00
Lex Christopherson
b150254e63 style(checkpoints): update command and workflow to match new format
Sync execute-plan command and workflow with improved checkpoint display:
- Box header with ╔═══╗ for visual prominence
- Progress indicator at top
- Separator line before unmissable "→ YOUR ACTION:" prompt

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 11:11:36 -06:00
Lex Christopherson
f3e0e69ce6 refactor(audit-milestone): command is orchestrator, not subagent
Subagents can't spawn subagents. The command itself orchestrates:
- Wave 1: Spawn gsd-verifier per phase (parallel)
- Wave 2: Spawn gsd-integration-checker
- Aggregate results into MILESTONE-AUDIT.md

Remove gsd-milestone-auditor agent (command does this now).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 10:56:26 -06:00
Lex Christopherson
6b4f73efd8 fix(execute-phase): recommend audit-milestone when milestone completes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 10:54:03 -06:00
Lex Christopherson
6630c3217d feat(milestone): add milestone audit system
- Add /gsd:audit-milestone command (spawns auditor)
- Add gsd-milestone-auditor agent (orchestrates verification)
- Add gsd-integration-checker agent (cross-phase wiring + E2E flows)
- Add /gsd:plan-milestone-gaps command (creates phases from audit gaps)
- Update complete-milestone to recommend audit first

Flow: audit-milestone → plan-milestone-gaps → execute phases → re-audit → complete-milestone

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 10:50:58 -06:00
Lex Christopherson
b920d47cb1 fix(research-phase): remove domain gatekeeping
The when_to_use section was overly restrictive, refusing research
for "standard" domains. Research benefits any unfamiliar territory,
not just niche technical domains.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 10:50:11 -06:00
Lex Christopherson
8e6ad96af1 feat(verification): add verify → plan → execute loop for gap closure
- Add verify_phase_goal step to execute-phase workflow
- Verifier outputs structured gaps: YAML for planner consumption
- Add --gaps flag to plan-phase for gap closure mode
- Route by verification status: passed, gaps_found, human_needed
- Gap closure creates sequential plans (04, 05...) from verification gaps
- User stays in control at each decision point

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 10:34:38 -06:00
Lex Christopherson
c7fbb81599 feat(execute-plan): add phase verification when phase completes
When execute-plan completes the last plan in a phase (summaries = plans),
it now spawns gsd-verifier to verify phase goal achievement before
proceeding to next phase.

Same verification flow as execute-phase, ensuring consistent behavior
regardless of which command is used.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 10:19:26 -06:00
Lex Christopherson
f34b5f8a03 chore: remove obsolete templates (logic now in subagents)
Deleted:
- subagent-task-prompt.md (baked into gsd-executor)
- subagent-verify-prompt.md (baked into gsd-verifier)
- continuation-prompt.md (baked into gsd-executor)
- checkpoint-return.md (baked into gsd-executor)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 10:11:28 -06:00
Lex Christopherson
f3f6707cbe feat: add gsd-verifier subagent for phase goal verification
- gsd-verifier.md: dedicated verification subagent with all logic baked in
- Goal-backward verification: checks codebase, not SUMMARY claims
- Creates VERIFICATION.md, returns status to orchestrator
- execute-phase spawns gsd-verifier instead of general-purpose

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 09:51:14 -06:00
Lex Christopherson
82c522b8c3 fix: update remaining general-purpose refs to gsd-executor
- execute-phase.md: wave execution example now uses gsd-executor
- execute-plan.md workflow: subagent spawning uses gsd-executor
- continuation-prompt.md: continuation spawning uses gsd-executor
- Remove obsolete subagent-task-prompt.md reference

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 09:40:53 -06:00
Lex Christopherson
87909f97ae feat: enhance roadmap and planning workflows
- create-roadmap: improved phase structuring and requirements tracing
- plan-phase: better task decomposition and wave assignment
- roadmap.md template: cleaner format
- phase-prompt.md template: structured planning prompt

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 09:34:48 -06:00
Lex Christopherson
e95186b2a7 refactor: update execute commands to spawn gsd-executor subagent
- execute-plan.md: spawn gsd-executor instead of general-purpose with template
- execute-phase.md: spawn gsd-executor for wave-based parallel execution
- Remove template filling, subagent has all logic baked in

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 09:34:32 -06:00
Lex Christopherson
238332513b fix(execute-phase): bundle phase metadata into single commit
ROADMAP.md, STATE.md, and REQUIREMENTS.md updates now commit
together as phase completion instead of separate commits.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 02:38:25 -06:00
Lex Christopherson
3b0ea3187f feat(research-phase): load REQUIREMENTS.md for focused research
Research now loads concrete requirements (e.g., "AUTH-02: User receives
email verification") to inform research domains, not just high-level
roadmap descriptions.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-15 01:43:30 -06:00
Lex Christopherson
bd4bd9db53 refactor: remove dead code, improve execute-phase UX, fix requirements flow
- Remove phantom status.md command (background agent model abandoned)
- Remove agent-history.md template (unused)
- Remove _archive/ directory
- Add narration to execute-phase (describe what's being built before/after waves)
- Update new-project to offer define-requirements as fast path
- Make define-requirements work without research (gather through questioning)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 01:04:41 -06:00
Lex Christopherson
1f24f7e689 docs: add staying updated section to help and README
Promote /gsd:whats-new and update command visibility.
GSD evolves fast — users should check periodically.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 00:23:29 -06:00
Lex Christopherson
365c04163c refactor: move requirements status update to commands (orchestrator)
Subagents can't determine if phase is complete. The orchestrator
(execute-plan and execute-phase commands) runs in main context,
can count plans vs summaries, and updates REQUIREMENTS.md when
phase completes.

- execute-plan: Step 2.5 updates requirements when summaries = plans
- execute-phase: Step 6 updates requirements (phase always complete)
- Removed duplicate from workflow (subagent can't run it anyway)
2026-01-15 00:20:00 -06:00
Lex Christopherson
3e9c7f77d6 refactor: combine workflow preferences into single AskUserQuestion
Mode, depth, and parallelization now asked in one call (3 questions)
instead of 3 separate interactions.
2026-01-15 00:07:41 -06:00
Lex Christopherson
fc0f861808 fix: align research-project next steps (both point to define-requirements) 2026-01-15 00:04:55 -06:00
Lex Christopherson
b708a8d361 feat: add requirements traceability to roadmap and plan-phase
- Roadmap template now includes Requirements: field for each phase
- plan-phase loads REQUIREMENTS.md and extracts phase-specific requirements
- define-requirements shows full list inline before commit (not just counts)
2026-01-15 00:04:29 -06:00