From 9875df57ab4fedfde93d24d01d67b07632b5c556 Mon Sep 17 00:00:00 2001 From: Lex Christopherson Date: Fri, 16 Jan 2026 10:27:23 -0600 Subject: [PATCH] fix: remove premature research likelihood predictions from roadmap Research decisions made at roadmap creation time are: - Premature: Can't know if research is needed before discuss-phase - Redundant: --skip-research flag exists for explicit control - Counterproductive: Gives Claude an excuse to skip research entirely Removed: - Research: Likely/Unlikely fields from roadmap template - detect_research_needs step from create-roadmap workflow - "If roadmap flagged Research: Likely" checks from gsd-planner Research now always runs during plan-phase unless: - RESEARCH.md already exists (silent reuse) - --skip-research flag passed - --gaps flag passed (gap closure mode) Co-Authored-By: Claude Opus 4.5 --- agents/gsd-planner.md | 4 -- get-shit-done/templates/roadmap.md | 12 ---- get-shit-done/workflows/create-roadmap.md | 69 ----------------------- 3 files changed, 85 deletions(-) diff --git a/agents/gsd-planner.md b/agents/gsd-planner.md index 75caaa9bc..7cfc93c72 100644 --- a/agents/gsd-planner.md +++ b/agents/gsd-planner.md @@ -112,8 +112,6 @@ Discovery is MANDATORY unless you can prove current context exists. - Level 2+: New library not in package.json, external API, "choose/select/evaluate" in description - Level 3: "architecture/design/system", multiple external services, data modeling, auth design -If roadmap flagged "Research: Likely", Level 0 (skip) is not available. - For niche domains (3D, games, audio, shaders, ML), suggest `/gsd:research-phase` before plan-phase. @@ -1029,8 +1027,6 @@ Read any existing PLAN.md or DISCOVERY.md in the phase directory. Apply discovery level protocol (see discovery_levels section). - -If roadmap flagged "Research: Likely", Level 0 (skip) is not available. diff --git a/get-shit-done/templates/roadmap.md b/get-shit-done/templates/roadmap.md index edd95bfa8..962c5efd8 100644 --- a/get-shit-done/templates/roadmap.md +++ b/get-shit-done/templates/roadmap.md @@ -34,7 +34,6 @@ Decimal phases appear between their surrounding integers in numeric order. 1. [Observable behavior from user perspective] 2. [Observable behavior from user perspective] 3. [Observable behavior from user perspective] -**Research**: Unlikely (established patterns) **Plans**: [Number of plans, e.g., "3 plans" or "TBD"] Plans: @@ -49,8 +48,6 @@ Plans: **Success Criteria** (what must be TRUE): 1. [Observable behavior from user perspective] 2. [Observable behavior from user perspective] -**Research**: Likely (new integration) -**Research topics**: [What needs investigating] **Plans**: [Number of plans] Plans: @@ -75,8 +72,6 @@ Plans: 1. [Observable behavior from user perspective] 2. [Observable behavior from user perspective] 3. [Observable behavior from user perspective] -**Research**: Likely (external API) -**Research topics**: [What needs investigating] **Plans**: [Number of plans] Plans: @@ -90,7 +85,6 @@ Plans: **Success Criteria** (what must be TRUE): 1. [Observable behavior from user perspective] 2. [Observable behavior from user perspective] -**Research**: Unlikely (internal patterns) **Plans**: [Number of plans] Plans: @@ -126,12 +120,6 @@ Phases execute in numeric order: 2 → 2.1 → 2.2 → 3 → 3.1 → 4 - Verified by verify-phase after execution - Format: "User can [action]" or "[Thing] works/exists" -**Research flags:** -- `Research: Likely` - External APIs, new libraries, architectural decisions -- `Research: Unlikely` - Internal patterns, CRUD operations, established conventions -- Include `Research topics:` when Likely -- Flags are hints, not mandates - validate at planning time - **After milestones ship:** - Collapse completed milestones in `
` tags - Add new milestone sections for upcoming work diff --git a/get-shit-done/workflows/create-roadmap.md b/get-shit-done/workflows/create-roadmap.md index be767795a..bf3829425 100644 --- a/get-shit-done/workflows/create-roadmap.md +++ b/get-shit-done/workflows/create-roadmap.md @@ -335,71 +335,6 @@ Use AskUserQuestion to resolve orphaned requirements. **Do not proceed until coverage = 100%.** - -**For each phase, determine if research is likely needed.** - -Scan the brief and phase descriptions for research triggers: - - -**Likely (flag the phase):** - -| Trigger Pattern | Why Research Needed | -| ----------------------------------------------------- | --------------------------------------- | -| "integrate [service]", "connect to [API]" | External API - need current docs | -| "authentication", "auth", "login", "JWT" | Architectural decision + library choice | -| "payment", "billing", "Stripe", "subscription" | External API + compliance patterns | -| "email", "SMS", "notifications", "SendGrid", "Twilio" | External service integration | -| "database", "Postgres", "MongoDB", "Supabase" | If new to project - setup patterns | -| "real-time", "websocket", "sync", "live updates" | Architectural decision | -| "deploy", "Vercel", "Railway", "hosting" | If first deployment - config patterns | -| "choose between", "select", "evaluate", "which" | Explicit decision needed | -| "AI", "OpenAI", "Claude", "LLM", "embeddings" | Fast-moving APIs - need current docs | -| Any technology not already in codebase | New integration | -| Explicit questions in brief | Unknowns flagged by user | - -**Unlikely (no flag needed):** - -| Pattern | Why No Research | -| ------------------------------------------- | ----------------------- | -| "add button", "create form", "update UI" | Internal patterns | -| "CRUD operations", "list/detail views" | Standard patterns | -| "refactor", "reorganize", "clean up" | Internal work | -| "following existing patterns" | Conventions established | -| Technology already in package.json/codebase | Patterns exist | - - - -**For each phase, assign:** - -- `Research: Likely ([reason])` + `Research topics: [what to investigate]` -- `Research: Unlikely ([reason])` - -**Important:** These are hints, not mandates. The mandatory_discovery step during phase planning will validate. - -Present research assessment: - -``` -Research needs detected: - -Phase 1: Foundation - Research: Unlikely (project setup, established patterns) - -Phase 2: Authentication - Research: Likely (new system, technology choice) - Topics: JWT library for [stack], session strategy, auth provider options - -Phase 3: Stripe Integration - Research: Likely (external API) - Topics: Current Stripe API, webhook patterns, checkout flow - -Phase 4: Dashboard - Research: Unlikely (internal UI using patterns from earlier phases) - -Does this look right? (yes / adjust) -``` - - - ```bash @@ -483,11 +418,7 @@ Write to `.planning/ROADMAP.md` with: **Goal**: Secure user authentication **Depends on**: Nothing (first phase) **Requirements**: AUTH-01, AUTH-02, AUTH-03, AUTH-04 - **Research**: Unlikely (established patterns) ``` -- **Research flags** (from detect_research_needs step): - - `Research: Likely ([reason])` with `Research topics:` for flagged phases - - `Research: Unlikely ([reason])` for unflagged phases - Status tracking (all start as "not started") Create phase directories: