← docsFull-Lifecycle

/brainstorming

Socratic questioning before committing to a solution.

Structured questioning protocol to explore a problem space before writing code. Prevents over-engineering and premature commitment by forcing explicit decisions on scope, data models, and edge cases.

Category

Full-Lifecycle

Execution

Q&A protocol → decision brief

Goal

Explore the problem space through structured Socratic questioning before committing to any implementation approach.

Scope

Applies to

  • +New features with unclear requirements
  • +Architectural decisions
  • +Any task where the scope is ambiguous

Does not cover

  • Well-defined tasks with clear specs
  • Bug fixes with known root cause

Triggers

"Brainstorm this feature""Explore options for""I need to think through"Phase 2 of radioactive

Inputs

  • Problem statement or feature description
  • Existing constraints (time, stack, team)

Invariants

  • 01Must present questions and wait for response — no proceeding on assumptions
  • 02Questions must be strategic (3-5), not exhaustive
  • 03Output is a decision log, not a plan

Procedure

  1. Step 1Analyze the problem statement and existing context
  2. Step 2Formulate 3-5 strategic questions covering scope, data, security, integration, edge cases
  3. Step 3Present questions. Wait for explicit response.
  4. Step 4Synthesize responses into a decision log with rationale

Outputs

  • Decision log appended to conversation context
  • Clarified scope boundaries
  • List of edge cases to handle

Review Gate

  • [ ]All questions answered or explicitly deferred
  • [ ]Decision log captures rationale for each choice
  • [ ]No ambiguity on scope boundaries