132 lines
3.7 KiB
YAML
132 lines
3.7 KiB
YAML
# Brainstorm Discussion Template
|
|
# Referenced by: <!-- Template: brainstorm --> in discussion files
|
|
|
|
name: brainstorm
|
|
description: Structured ideation with diverge/converge phases
|
|
|
|
# Turn pipeline - optimized for fast ideation in early phases
|
|
# Uses variable-based schema: $input -> tool -> $output
|
|
turn_pipeline:
|
|
steps:
|
|
# Step 1: Parse discussion
|
|
- tool: discussion-parser
|
|
input: $discussion
|
|
output: $parsed
|
|
|
|
# Step 2: Route mentions (if no participants specified)
|
|
- tool: discussion-mention-router
|
|
input: $parsed
|
|
output: $routing
|
|
when: not $participants_specified
|
|
args:
|
|
--default-participants: $participants_csv
|
|
|
|
# Step 3: Call each participant (parallel for fast ideation)
|
|
- tool: discussion-{participant}
|
|
for_each: $participants_to_call
|
|
parallel: true
|
|
input: $discussion
|
|
output: $responses[]
|
|
args:
|
|
--callout: $callout
|
|
--templates-dir: $templates_dir
|
|
|
|
# Step 4: Append responses
|
|
- tool: discussion-turn-appender
|
|
input: $discussion
|
|
output: $discussion
|
|
args:
|
|
--responses-json: $responses_json
|
|
|
|
# Step 5: Count votes (voting phases only)
|
|
- tool: discussion-vote-counter
|
|
input: $parsed
|
|
output: $votes
|
|
when: $phase_voting
|
|
|
|
# Step 6: Check status promotion
|
|
- tool: discussion-status-promoter
|
|
input: $votes
|
|
output: $promotion
|
|
when: $phase_voting
|
|
args:
|
|
--current-status: $status
|
|
--current-phase: $phase
|
|
|
|
phases:
|
|
seed:
|
|
goal: Frame the problem clearly
|
|
instructions: |
|
|
- State the problem or opportunity in one sentence
|
|
- List known constraints (time, tech, resources)
|
|
- Define what success looks like
|
|
- Ask clarifying questions only, no solutions yet
|
|
voting: false
|
|
next_phase: diverge
|
|
|
|
diverge:
|
|
goal: Generate ideas without judgment
|
|
instructions: |
|
|
- Quantity over quality
|
|
- Build on others' ideas with "Yes, and..."
|
|
- No criticism, no "but", no "that won't work"
|
|
- Wilder ideas are welcome
|
|
- Short bullet points, not essays
|
|
voting: false
|
|
next_phase: cluster
|
|
|
|
cluster:
|
|
goal: Group related ideas into themes
|
|
instructions: |
|
|
- Moderator synthesizes ideas into 3-5 themes
|
|
- Name each theme clearly
|
|
- Vote on which theme(s) to explore further
|
|
- READY = approve these themes
|
|
- CHANGES = suggest different grouping
|
|
voting: true
|
|
threshold_ready: 0.5
|
|
next_phase: sketch
|
|
|
|
sketch:
|
|
goal: Rough out the selected idea with diagrams
|
|
artifacts:
|
|
formats: [plantuml, mermaid, svg]
|
|
output_dir: diagrams/
|
|
file_pattern: "{title}_{participant}_{n}"
|
|
instructions: |
|
|
- Create simple diagrams (sequence, component, flowchart)
|
|
- Identify 3-5 key pieces
|
|
- Mark unknowns with "?"
|
|
- Review existing artifacts in diagrams/ folder
|
|
- Build on or modify others' diagrams as needed
|
|
- Reference each artifact with "ARTIFACT: path/to/file"
|
|
- Keep it rough, not polished
|
|
voting: false
|
|
next_phase: reality_check
|
|
|
|
reality_check:
|
|
goal: Ground the idea in reality
|
|
instructions: |
|
|
- What's the MVP version? (1 week of work max)
|
|
- What's the biggest risk?
|
|
- What would we prototype first?
|
|
- What can we cut?
|
|
- Flag over-engineering with CONCERN: COMPLEXITY
|
|
voting: false
|
|
next_phase: decide
|
|
|
|
decide:
|
|
goal: Commit to an approach
|
|
instructions: |
|
|
- READY = proceed with this approach
|
|
- CHANGES = need to iterate (say what)
|
|
- REJECT = start over with different theme
|
|
voting: true
|
|
threshold_ready: 0.67
|
|
human_required: true
|
|
next_phase: null
|
|
|
|
status_transitions:
|
|
OPEN:
|
|
on_consensus: READY_FOR_DESIGN
|