ultra-builder-pro-cli 0.10.0 → 0.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/.ultra-template/specs/architecture.md +54 -223
  2. package/.ultra-template/specs/discovery.md +34 -231
  3. package/.ultra-template/specs/product.md +44 -200
  4. package/.ultra-template/tasks/contexts/TEMPLATE.md +36 -0
  5. package/.ultra-template/tasks/tasks.json +6 -0
  6. package/CHANGELOG.md +86 -1
  7. package/README.md +21 -9
  8. package/adapters/_shared/codex-assets.cjs +24 -342
  9. package/adapters/_shared/handbook.cjs +4 -3
  10. package/adapters/_shared/runtime-assets.cjs +24 -0
  11. package/adapters/_shared/tests/handbook.test.cjs +4 -0
  12. package/adapters/_shared/tests/runtime-assets.test.cjs +11 -4
  13. package/adapters/claude.js +28 -5
  14. package/adapters/kimi.js +15 -138
  15. package/adapters/opencode.js +22 -49
  16. package/adapters/tests/claude.test.cjs +22 -8
  17. package/adapters/tests/codex.test.cjs +21 -8
  18. package/adapters/tests/kimi-hook.test.cjs +1 -1
  19. package/adapters/tests/kimi.test.cjs +11 -11
  20. package/adapters/tests/opencode.test.cjs +47 -8
  21. package/agents/code-reviewer.md +24 -85
  22. package/agents/debugger.md +30 -132
  23. package/agents/review-code.md +24 -104
  24. package/agents/review-comments.md +20 -83
  25. package/agents/review-coordinator.md +40 -137
  26. package/agents/review-design.md +21 -118
  27. package/agents/review-errors.md +22 -70
  28. package/agents/review-spec.md +36 -0
  29. package/agents/review-tests.md +20 -76
  30. package/agents/tdd-runner.md +26 -84
  31. package/commands/learn.md +5 -36
  32. package/commands/ultra-change.md +5 -43
  33. package/commands/ultra-deliver.md +4 -46
  34. package/commands/ultra-dev.md +4 -48
  35. package/commands/ultra-doctor.md +4 -30
  36. package/commands/ultra-init.md +5 -47
  37. package/commands/ultra-plan.md +5 -48
  38. package/commands/ultra-research.md +5 -54
  39. package/commands/ultra-status.md +5 -44
  40. package/commands/ultra-test.md +5 -45
  41. package/commands/ultra-think.md +5 -40
  42. package/docs/AGENT-CONTEXT.md +16 -8
  43. package/docs/ARCHITECTURE.md +32 -5
  44. package/docs/PLAN.zh-CN.md +8 -6
  45. package/docs/ROADMAP.md +5 -3
  46. package/docs/RUNTIME-COMPAT-MATRIX.md +8 -5
  47. package/docs/SKILL-AUTHORING.md +75 -0
  48. package/docs/STATE-DB-ACCESS-POLICY.md +17 -11
  49. package/docs/USER-HANDBOOK-CONTRACT.md +8 -5
  50. package/hooks/README.md +4 -3
  51. package/hooks/adapters/codex.py +1 -1
  52. package/hooks/adapters/kimi.py +1 -1
  53. package/hooks/context_spine.py +120 -16
  54. package/hooks/health_check.py +11 -0
  55. package/hooks/pre_stop_check.py +6 -5
  56. package/mcp-server/lib/baseline-workflow.cjs +415 -0
  57. package/mcp-server/lib/baseline-workflow.test.cjs +225 -0
  58. package/mcp-server/lib/change-workflow.cjs +24 -27
  59. package/mcp-server/lib/change-workflow.test.cjs +202 -6
  60. package/mcp-server/lib/context-spine.cjs +74 -9
  61. package/mcp-server/lib/context-spine.test.cjs +15 -0
  62. package/mcp-server/lib/doctor.cjs +14 -0
  63. package/mcp-server/lib/doctor.test.cjs +25 -1
  64. package/mcp-server/lib/init-project.cjs +49 -14
  65. package/mcp-server/lib/provider-refs.cjs +42 -0
  66. package/mcp-server/lib/spec-learning.test.cjs +5 -0
  67. package/mcp-server/lib/state-db.cjs +63 -4
  68. package/mcp-server/lib/state-db.test.cjs +8 -3
  69. package/mcp-server/server.cjs +48 -3
  70. package/mcp-server/tests/init-project.test.cjs +54 -8
  71. package/mcp-server/tests/server-contract.test.cjs +99 -2
  72. package/mcp-server/tests/state-db.test.cjs +11 -2
  73. package/package.json +3 -2
  74. package/skills/cc-collab/SKILL.md +16 -18
  75. package/skills/code-review-expert/SKILL.md +39 -114
  76. package/skills/code-review-expert/references/correctness-reliability.md +30 -0
  77. package/skills/code-review-expert/references/design-boundaries.md +26 -0
  78. package/skills/code-review-expert/references/removal-plan.md +17 -45
  79. package/skills/codex-collab/SKILL.md +23 -28
  80. package/skills/codex-collab/evals/evals.json +18 -23
  81. package/skills/integration-rules/SKILL.md +28 -67
  82. package/skills/learn/SKILL.md +46 -106
  83. package/skills/security-rules/SKILL.md +34 -56
  84. package/skills/testing-rules/SKILL.md +28 -52
  85. package/skills/ultra-change/SKILL.md +68 -114
  86. package/skills/ultra-deliver/SKILL.md +58 -86
  87. package/skills/ultra-dev/SKILL.md +46 -105
  88. package/skills/ultra-doctor/SKILL.md +45 -72
  89. package/skills/ultra-init/SKILL.md +62 -147
  90. package/skills/ultra-init/references/brownfield-adoption.md +65 -0
  91. package/skills/ultra-plan/SKILL.md +56 -89
  92. package/skills/ultra-research/SKILL.md +64 -152
  93. package/skills/ultra-research/references/architecture.md +38 -0
  94. package/skills/ultra-research/references/problem-product.md +39 -0
  95. package/skills/ultra-research/references/quality-delivery.md +34 -0
  96. package/skills/ultra-research/references/synthesis.md +38 -0
  97. package/skills/ultra-research/references/users-scope.md +40 -0
  98. package/skills/ultra-review/SKILL.md +54 -98
  99. package/skills/ultra-review/references/unified-schema.md +76 -101
  100. package/skills/ultra-review/scripts/review_wait.py +242 -77
  101. package/skills/ultra-status/SKILL.md +41 -56
  102. package/skills/ultra-test/SKILL.md +37 -72
  103. package/skills/ultra-think/SKILL.md +43 -102
  104. package/skills/ultra-verify/SKILL.md +44 -84
  105. package/skills/ultra-verify/evals/evals.json +24 -27
  106. package/spec/cli-protocol.md +4 -0
  107. package/spec/mcp-tools.yaml +223 -4
  108. package/spec/schemas/command-manifest.schema.json +7 -25
  109. package/spec/schemas/mcp-tools.schema.json +1 -1
  110. package/spec/schemas/skill-manifest.schema.json +9 -79
  111. package/spec/schemas/state-db.sql +33 -2
  112. package/ultra-tools/commands/status.cjs +20 -2
  113. package/ultra-tools/commands/task.cjs +4 -1
  114. package/ultra-tools/status-command.test.cjs +20 -0
  115. package/ultra-tools/system-command.test.cjs +5 -0
  116. package/skills/code-review-expert/references/code-quality-checklist.md +0 -112
  117. package/skills/code-review-expert/references/integration-checklist.md +0 -46
  118. package/skills/code-review-expert/references/security-checklist.md +0 -100
  119. package/skills/code-review-expert/references/solid-checklist.md +0 -65
  120. package/skills/ultra-research/steps/step-00-problem-validation.md +0 -154
  121. package/skills/ultra-research/steps/step-01-opportunity-discovery.md +0 -172
  122. package/skills/ultra-research/steps/step-02-market-assessment.md +0 -195
  123. package/skills/ultra-research/steps/step-03-competitive-landscape.md +0 -197
  124. package/skills/ultra-research/steps/step-04-product-strategy.md +0 -196
  125. package/skills/ultra-research/steps/step-05-assumptions-validation.md +0 -234
  126. package/skills/ultra-research/steps/step-10-user-personas.md +0 -169
  127. package/skills/ultra-research/steps/step-11-user-scenarios.md +0 -181
  128. package/skills/ultra-research/steps/step-20-user-stories.md +0 -156
  129. package/skills/ultra-research/steps/step-21-features-scope.md +0 -157
  130. package/skills/ultra-research/steps/step-22-success-metrics.md +0 -195
  131. package/skills/ultra-research/steps/step-30-architecture-context.md +0 -154
  132. package/skills/ultra-research/steps/step-31-solution-strategy.md +0 -172
  133. package/skills/ultra-research/steps/step-32-building-blocks.md +0 -188
  134. package/skills/ultra-research/steps/step-40-deployment.md +0 -123
  135. package/skills/ultra-research/steps/step-41-quality-risks.md +0 -135
  136. package/skills/ultra-research/steps/step-99-synthesis.md +0 -188
  137. package/skills/ultra-review/scripts/review_verdict_update.py +0 -99
@@ -1,234 +0,0 @@
1
- # Step 05: Assumptions & Validation Plan
2
-
3
- ## MANDATORY EXECUTION RULES
4
-
5
- - EXTRACT assumptions from ALL previous steps (00-04) — not just the obvious ones
6
- - PRIORITIZE by Impact × Uncertainty — focus on "leap of faith" assumptions
7
- - DESIGN cheap, fast experiments — not "build it and see"
8
- - WRITE output to spec file BEFORE presenting to user
9
- - ALL output in English (spec files); conversation in Chinese
10
-
11
- ## PREREQUISITES
12
-
13
- - Steps 00-04 completed with [C]
14
- - `.ultra/specs/discovery.md` §0-4 exist
15
-
16
- ## CONTEXT BOUNDARIES
17
-
18
- - Focus: What are we assuming? What's riskiest? How do we validate cheaply?
19
- - This is the LAST step of Round 0 — it synthesizes everything discovered so far
20
- - After this step, user decides: proceed to Round 1 or investigate further
21
- - Based on Alberto Savoia (Pretotyping) and Marty Cagan methodologies
22
-
23
- ## SEARCH STRATEGY (MANDATORY)
24
-
25
- Execute these web searches:
26
-
27
- ```
28
- Search: "{{product_domain}} validation methods pretotype MVP"
29
- Search: "{{product_domain}} common startup mistakes failed assumptions"
30
- Search: "landing page test fake door validation {{product_domain}}"
31
- Search: "{{product_domain}} customer interview validation techniques"
32
- ```
33
-
34
- ## EXECUTION SEQUENCE
35
-
36
- ### 1. Extract Assumptions from Previous Steps
37
-
38
- Review §0-4 and extract assumptions across 5 categories:
39
-
40
- | Category | Source | What to look for |
41
- |----------|--------|-----------------|
42
- | **Value** | §0, §1 | Will users actually want this? |
43
- | **Usability** | §1 | Can users figure it out without help? |
44
- | **Feasibility** | §1 (solutions) | Can we build it with current technology? |
45
- | **Viability** | §2 | Does the business case work at these numbers? |
46
- | **Go-to-Market** | §3, §4 | Can we reach and convert our target users? |
47
-
48
- ### 2. Prioritize Assumptions
49
-
50
- Map each assumption on Impact × Uncertainty:
51
-
52
- ```
53
- High Impact
54
- │
55
- VALIDATE FIRST ─────┼───── MONITOR
56
- (Leap of Faith) │ (Important but clear)
57
- │
58
- Low Uncertainty ─────┼───── High Uncertainty
59
- │
60
- IGNORE ─────────────┼───── INVESTIGATE
61
- (Low stakes) │ (Uncertain but low impact)
62
- │
63
- Low Impact
64
- ```
65
-
66
- Focus on "Leap of Faith" quadrant: **High Impact + High Uncertainty**
67
-
68
- ### 3. Design Validation Experiments
69
-
70
- For top 3-5 leap-of-faith assumptions, design cheap, fast experiments:
71
-
72
- **Experiment Design Framework:**
73
-
74
- | Element | Description |
75
- |---------|-------------|
76
- | Assumption | What exactly are we assuming? |
77
- | Category | Value / Usability / Feasibility / Viability / GTM |
78
- | Method | How will we test this? |
79
- | Success criteria | What result validates the assumption? |
80
- | Failure criteria | What result invalidates it? |
81
- | Effort | Hours/days to execute |
82
- | Timeline | When can we have results? |
83
-
84
- **Preferred Methods** (cheapest first):
85
- 1. **Data analysis**: Existing data that proves/disproves the assumption
86
- 2. **Customer interviews**: 5-10 targeted conversations
87
- 3. **Fake door test**: Landing page with sign-up / "notify me" button
88
- 4. **Concierge MVP**: Manually deliver the value to 3-5 users
89
- 5. **Pretotype**: Mechanical Turk version of the product
90
- 6. **Prototype**: Clickable mockup tested with real users
91
- 7. **MVP**: Minimum viable version with real functionality
92
-
93
- ### 4. Define Decision Framework
94
-
95
- For each experiment:
96
-
97
- ```
98
- If experiment SUCCEEDS → [Next action]
99
- If experiment FAILS → [Pivot / Investigate / Kill]
100
- If results are AMBIGUOUS → [How to get clarity]
101
- ```
102
-
103
- ### 5. Write Output
104
-
105
- **WRITE IMMEDIATELY** to `.ultra/specs/discovery.md` §5:
106
-
107
- ```markdown
108
- ## §5 Key Assumptions & Validation Plan
109
-
110
- ### Assumption Inventory
111
-
112
- | # | Assumption | Category | Impact | Uncertainty | Priority |
113
- |---|-----------|----------|--------|-------------|----------|
114
- | A1 | [Statement] | Value | High | High | **Validate First** |
115
- | A2 | [Statement] | Viability | High | High | **Validate First** |
116
- | A3 | [Statement] | GTM | High | Medium | **Validate First** |
117
- | A4 | [Statement] | Feasibility | Medium | High | Investigate |
118
- | A5 | [Statement] | Usability | Medium | Medium | Monitor |
119
- | A6 | [Statement] | Value | Low | Low | Ignore |
120
-
121
- ### Leap-of-Faith Assumptions (Top 3-5)
122
-
123
- #### A1: [Assumption Statement]
124
- - **Category**: [Value / Viability / GTM / Feasibility / Usability]
125
- - **Why it matters**: [What happens if this is wrong]
126
- - **Current evidence**: [What we know from steps 00-04]
127
- - **Evidence gap**: [What we don't know]
128
-
129
- **Validation Experiment:**
130
- - **Method**: [Specific method]
131
- - **Success criteria**: [Measurable outcome that validates]
132
- - **Failure criteria**: [Measurable outcome that invalidates]
133
- - **Effort**: [Hours/days]
134
- - **Timeline**: [When results expected]
135
-
136
- **Decision Framework:**
137
- - ✅ If validated → [Proceed to Round 1]
138
- - ❌ If invalidated → [Pivot to X / Investigate Y / Kill]
139
- - ⚠️ If ambiguous → [Additional experiment Z]
140
-
141
- #### A2: [Assumption Statement]
142
- [Same structure]
143
-
144
- #### A3: [Assumption Statement]
145
- [Same structure]
146
-
147
- ### Validation Roadmap
148
-
149
- | Week | Experiment | Assumption | Expected Result |
150
- |------|-----------|-----------|----------------|
151
- | 1 | [Experiment 1] | A1 | [What we'll learn] |
152
- | 1-2 | [Experiment 2] | A2 | [What we'll learn] |
153
- | 2-3 | [Experiment 3] | A3 | [What we'll learn] |
154
-
155
- ### Round 0 Summary
156
-
157
- **Product Discovery Confidence**:
158
- - **Problem validation**: [X]% — [One-line summary]
159
- - **Opportunity space**: [X]% — [One-line summary]
160
- - **Market size**: [X]% — [One-line summary]
161
- - **Competitive position**: [X]% — [One-line summary]
162
- - **Strategy clarity**: [X]% — [One-line summary]
163
- - **Overall R0 confidence**: [X]%
164
-
165
- **Recommendation**: [Proceed to Round 1 / Validate assumptions first / Pivot]
166
- ```
167
-
168
- ### 6. Write Round 0 Research Report
169
-
170
- **WRITE** to `.ultra/docs/research/product-discovery-{date}.md`:
171
-
172
- ```markdown
173
- # Round 0: Product Discovery & Strategy
174
-
175
- > **Confidence**: [X]%
176
- > **Steps completed**: 00-05
177
- > **Completed**: [date]
178
-
179
- ## Key Findings
180
- [3-5 bullet points of most important discoveries]
181
-
182
- ## Decisions Made
183
- [Strategic choices and their rationale]
184
-
185
- ## Open Questions
186
- [What remains uncertain]
187
-
188
- ## Assumptions to Validate
189
- [Top 3 from §5]
190
- ```
191
-
192
- ### 7. Present to User and Gate
193
-
194
- Show the complete Round 0 summary. Highlight:
195
- - The top 3 leap-of-faith assumptions
196
- - Overall confidence level
197
- - Recommendation (proceed / validate / pivot)
198
-
199
- ```
200
- [C] Continue — Proceed to Round 1 (User & Scenario Discovery)
201
- [V] Validate — Pause to run validation experiments before continuing
202
- [P] Pivot — Rethink the product direction based on findings
203
- ```
204
-
205
- **HALT — wait for user response before proceeding.**
206
-
207
- ### 8. Handle Response
208
-
209
- - **[C]**: Load next step: `./step-10-user-personas.md`
210
- - **[V]**: Help design validation experiments in detail, then re-present gate when done
211
- - **[P]**: Restart from step-00 with revised direction
212
-
213
- ## SUCCESS METRICS
214
-
215
- - Assumptions extracted from ALL previous steps (not just surface-level)
216
- - Each assumption categorized and prioritized
217
- - Top 3-5 have detailed validation experiments
218
- - Each experiment has clear success/failure criteria
219
- - Decision framework defined for each outcome
220
- - Round 0 research report written
221
- - Output written to discovery.md §5
222
-
223
- ## FAILURE MODES
224
-
225
- - Only extracting obvious assumptions (missing viability, GTM)
226
- - Designing expensive experiments ("build an MVP") when cheaper options exist
227
- - No clear success/failure criteria for experiments
228
- - Missing the decision framework (what do we DO with the results?)
229
- - Overly optimistic confidence assessment
230
- - Not writing both spec file AND research report
231
-
232
- ## NEXT STEP
233
-
234
- After user selects [C], read and follow: `./step-10-user-personas.md`
@@ -1,169 +0,0 @@
1
- # Step 10: User Personas
2
-
3
- ## MANDATORY EXECUTION RULES
4
-
5
- - WEB SEARCH REQUIRED — validate personas against real user research data
6
- - DEFINE 2-3 PERSONAS — not 1 (too narrow), not 5+ (too diluted)
7
- - PERSONAS ARE ABOUT GOALS AND PAIN POINTS — not demographics
8
- - CONNECT to step-00 (Q3: Desperate Specificity) and step-01 (Opportunities)
9
- - WRITE output to spec file BEFORE presenting to user
10
- - ALL output in English (spec files); conversation in Chinese
11
-
12
- ## PREREQUISITES
13
-
14
- - Round 0 completed (steps 00-05) with [C], OR user chose "Feature Only" starting at step-10
15
- - `.ultra/specs/product.md` exists
16
-
17
- ## CONTEXT BOUNDARIES
18
-
19
- - Focus: WHO are we building for? What drives them? What blocks them?
20
- - Personas represent real archetypes, not fictional characters
21
- - Each persona must connect to prioritized opportunities from step-01
22
- - This is Round 1 start — user scenarios follow in step-11
23
-
24
- ## SEARCH STRATEGY (MANDATORY)
25
-
26
- Execute these web searches in parallel:
27
-
28
- ```
29
- Search: "{{product_domain}} user persona research"
30
- Search: "{{product_domain}} target audience profile behavior"
31
- Search: "{{product_domain}} user needs pain points survey"
32
- Search: "{{product_domain}} jobs to be done customer segment"
33
- ```
34
-
35
- ## EXECUTION SEQUENCE
36
-
37
- ### 1. Gather User Context
38
-
39
- Ask user via AskUserQuestion:
40
- "Based on our discovery work, who are the 2-3 types of people who would use this most? What do you already know about them?"
41
-
42
- Cross-reference with:
43
- - Step-00 §0: Target User Profile
44
- - Step-01 §1: Prioritized Opportunities
45
- - Step-04 §4: Target Segments
46
-
47
- ### 2. Research Real User Behavior
48
-
49
- For each potential persona, search for:
50
- - How they currently solve the problem (workflows, tools)
51
- - What frustrates them most (forums, reviews, social media)
52
- - What motivates their work (career goals, KPIs)
53
- - How they discover and adopt new tools
54
-
55
- ### 3. Build Persona Profiles
56
-
57
- For each persona (2-3), define:
58
-
59
- | Element | What to capture |
60
- |---------|----------------|
61
- | Name & Role | Descriptive title, not a real name |
62
- | Context | Where they work, team size, industry |
63
- | Goals | What they're trying to achieve (2-3) |
64
- | Pain points | What blocks them (2-3, connected to opportunities) |
65
- | Current workflow | How they solve the problem today |
66
- | Success metric | How THEY measure their own success |
67
- | Adoption trigger | What would make them try a new solution |
68
- | Objections | Why they might NOT adopt (barriers) |
69
-
70
- ### 4. Write Output
71
-
72
- **WRITE IMMEDIATELY** to `.ultra/specs/product.md` §1-2:
73
-
74
- ```markdown
75
- ## §1 Problem Statement
76
-
77
- ### Core Problem
78
- [One paragraph describing the problem, grounded in step-00 validation]
79
-
80
- ### Who It Affects
81
- [Brief overview connecting problem to specific user types]
82
-
83
- ### Current Impact
84
- - **Time cost**: [Hours/week wasted on workarounds]
85
- - **Money cost**: [$ lost to inefficiency]
86
- - **Opportunity cost**: [What they can't do because of this problem]
87
-
88
- ## §2 User Personas
89
-
90
- ### Persona 1: [Descriptive Name] (Primary)
91
-
92
- **Role**: [Job title / context]
93
- **Context**: [Where they work, team dynamics, industry]
94
-
95
- **Goals**:
96
- 1. [Primary goal — what gets them promoted]
97
- 2. [Secondary goal — what they care about daily]
98
- 3. [Tertiary goal — nice to have]
99
-
100
- **Pain Points**:
101
- 1. [Pain 1] — Connects to Opportunity [O#] from §1
102
- 2. [Pain 2] — Connects to Opportunity [O#] from §1
103
- 3. [Pain 3] — Source: [URL or user quote]
104
-
105
- **Current Workflow**:
106
- > [Step-by-step description of how they solve this today]
107
- > Tools used: [List of current tools/processes]
108
- > Time spent: [X hours/week]
109
-
110
- **Success Metric**: [How they measure their own success]
111
- **Adoption Trigger**: [What would make them try our solution]
112
- **Objections**: [Why they might resist — e.g., "too busy to learn new tool"]
113
-
114
- ### Persona 2: [Descriptive Name] (Secondary)
115
- [Same structure]
116
-
117
- ### Persona 3: [Descriptive Name] (Tertiary — optional)
118
- [Same structure]
119
-
120
- ### Persona Prioritization
121
-
122
- | Persona | Urgency | Willingness to Pay | Reachability | Priority |
123
- |---------|---------|-------------------|-------------|----------|
124
- | [P1] | High | High | Medium | **Primary** |
125
- | [P2] | Medium | Medium | High | **Secondary** |
126
- | [P3] | Low | Low | High | **Tertiary** |
127
- ```
128
-
129
- ### 5. Present to User and Gate
130
-
131
- Show the Persona profiles. Ask user to validate:
132
- - Do these feel like real people they know?
133
- - Is anything missing from the profiles?
134
- - Is the prioritization correct?
135
-
136
- ```
137
- [C] Continue — Personas validated, proceed to User Scenarios
138
- [R] Revise — Adjust persona details or prioritization
139
- [A] Add — Include an additional persona
140
- ```
141
-
142
- **HALT — wait for user response before proceeding.**
143
-
144
- ### 6. Handle Response
145
-
146
- - **[C]**: Load next step: `./step-11-user-scenarios.md`
147
- - **[R]**: Revise personas, update product.md §1-2, re-present
148
- - **[A]**: Add persona (max 3 total), update, re-present
149
-
150
- ## SUCCESS METRICS
151
-
152
- - 2-3 personas defined with goals, pain points, and current workflows
153
- - Each persona connects to opportunities from step-01
154
- - Personas grounded in web research, not pure imagination
155
- - Clear prioritization with rationale
156
- - Output written to product.md §1-2
157
-
158
- ## FAILURE MODES
159
-
160
- - Demographic-only personas ("25-35 year old male in tech")
161
- - Too many personas (>3 dilutes focus)
162
- - Pain points not connected to validated opportunities
163
- - No current workflow description
164
- - Missing adoption triggers and objections
165
- - Not writing output before presenting to user
166
-
167
- ## NEXT STEP
168
-
169
- After user selects [C], read and follow: `./step-11-user-scenarios.md`
@@ -1,181 +0,0 @@
1
- # Step 11: User Scenarios
2
-
3
- ## MANDATORY EXECUTION RULES
4
-
5
- - DEFINE 3-5 SCENARIOS — each with trigger, flow, and outcome
6
- - SCENARIOS ARE USER JOURNEYS — not feature lists
7
- - CONNECT each scenario to a specific persona from step-10
8
- - INCLUDE the emotional arc — frustration → discovery → relief
9
- - WRITE output to spec file BEFORE presenting to user
10
- - ALL output in English (spec files); conversation in Chinese
11
-
12
- ## PREREQUISITES
13
-
14
- - Step 10 (User Personas) completed with [C]
15
- - `.ultra/specs/product.md` §1-2 exist
16
-
17
- ## CONTEXT BOUNDARIES
18
-
19
- - Focus: In what situations do users encounter this problem? What's the journey?
20
- - Scenarios describe WHEN and HOW users interact, not WHAT the product does
21
- - Each scenario should be a story the user can picture happening
22
- - Prioritize scenarios by frequency and pain severity
23
-
24
- ## EXECUTION SEQUENCE
25
-
26
- ### 1. Identify Key Scenarios
27
-
28
- For each persona from step-10, ask:
29
- - What triggers them to need a solution? (the "aha" moment)
30
- - What's the most common situation? (daily/weekly use)
31
- - What's the most painful situation? (highest frustration)
32
- - What's the most valuable situation? (highest ROI)
33
-
34
- Ask user via AskUserQuestion:
35
- "For [Primary Persona], what's the most common situation where they hit this problem? Walk me through a typical day."
36
-
37
- ### 2. Map Scenario Details
38
-
39
- For each scenario (3-5), capture:
40
-
41
- | Element | Description |
42
- |---------|-------------|
43
- | Trigger | What event causes the user to need a solution? |
44
- | Context | Where are they? What device? What time pressure? |
45
- | Current flow | How they handle it today (the painful way) |
46
- | Desired flow | How they WISH they could handle it |
47
- | Success outcome | What does "done well" look like? |
48
- | Failure outcome | What happens if they fail? |
49
- | Frequency | How often does this scenario occur? |
50
- | Emotional arc | Frustration → Action → Resolution |
51
-
52
- ### 3. Prioritize Scenarios
53
-
54
- Score by:
55
- - **Frequency** (1-5): How often does this happen?
56
- - **Pain severity** (1-5): How painful is the current experience?
57
- - **Value** (1-5): How much value does solving this create?
58
-
59
- Priority Score = Frequency × Pain × Value
60
-
61
- ### 4. Write Output
62
-
63
- **WRITE IMMEDIATELY** to `.ultra/specs/product.md` §3:
64
-
65
- ```markdown
66
- ## §3 User Scenarios
67
-
68
- ### Scenario Overview
69
-
70
- | # | Scenario | Persona | Frequency | Pain | Value | Score |
71
- |---|----------|---------|-----------|------|-------|-------|
72
- | S1 | [Name] | [P1] | 5 | 4 | 5 | 100 |
73
- | S2 | [Name] | [P1] | 4 | 5 | 4 | 80 |
74
- | S3 | [Name] | [P2] | 3 | 4 | 4 | 48 |
75
- | S4 | [Name] | [P2] | 2 | 3 | 3 | 18 |
76
-
77
- ### Scenario 1: [Descriptive Name] ⭐ Primary
78
-
79
- **Persona**: [Persona Name]
80
- **Frequency**: [Daily / Weekly / Monthly]
81
-
82
- **Trigger**: [What event causes this scenario]
83
- **Context**: [Where, when, device, time pressure]
84
-
85
- **Current Flow** (painful):
86
- 1. [Step 1 — what they do today]
87
- 2. [Step 2 — where friction occurs]
88
- 3. [Step 3 — workaround they use]
89
- 4. [Step 4 — outcome and time wasted]
90
-
91
- > 💬 *"[User quote or typical complaint that captures the frustration]"*
92
-
93
- **Desired Flow** (with our product):
94
- 1. [Step 1 — trigger detected]
95
- 2. [Step 2 — streamlined action]
96
- 3. [Step 3 — fast resolution]
97
- 4. [Step 4 — outcome achieved in less time]
98
-
99
- **Success Outcome**: [What "done well" looks like — specific and measurable]
100
- **Failure Outcome**: [What happens if they fail — consequences]
101
- **Emotional Arc**: [Frustration with X] → [Discovery of solution] → [Relief / satisfaction]
102
-
103
- ### Scenario 2: [Descriptive Name]
104
- [Same structure]
105
-
106
- ### Scenario 3: [Descriptive Name]
107
- [Same structure]
108
-
109
- ### Round 1 Summary
110
-
111
- **User & Scenario Discovery Confidence**:
112
- - **Persona accuracy**: [X]% — [One-line assessment]
113
- - **Scenario coverage**: [X]% — [One-line assessment]
114
- - **Overall R1 confidence**: [X]%
115
- ```
116
-
117
- ### 5. Write Round 1 Research Report
118
-
119
- **WRITE** to `.ultra/docs/research/user-scenario-{date}.md`:
120
-
121
- ```markdown
122
- # Round 1: User & Scenario Discovery
123
-
124
- > **Confidence**: [X]%
125
- > **Steps completed**: 10-11
126
- > **Completed**: [date]
127
-
128
- ## Key Findings
129
- [3-5 bullet points]
130
-
131
- ## Personas Defined
132
- [Names and one-line descriptions]
133
-
134
- ## Scenarios Prioritized
135
- [Top 3 with scores]
136
-
137
- ## Surprises
138
- [What was unexpected]
139
- ```
140
-
141
- ### 6. Present to User and Gate
142
-
143
- Show the User Scenarios summary. Ask:
144
- - Do these scenarios feel realistic?
145
- - Is anything missing from the journey?
146
- - Is the prioritization right?
147
-
148
- ```
149
- [C] Continue — Scenarios validated, proceed to Round 2 (Feature Definition)
150
- [R] Revise — Adjust scenario details or prioritization
151
- [A] Add — Include additional scenario
152
- ```
153
-
154
- **HALT — wait for user response before proceeding.**
155
-
156
- ### 7. Handle Response
157
-
158
- - **[C]**: Load next step: `./step-20-user-stories.md`
159
- - **[R]**: Revise scenarios, update product.md §3, re-present
160
- - **[A]**: Add scenario (max 5 total), update, re-present
161
-
162
- ## SUCCESS METRICS
163
-
164
- - 3-5 scenarios defined with full detail
165
- - Each scenario connected to a persona
166
- - Current flow AND desired flow documented
167
- - Scenarios prioritized by Frequency × Pain × Value
168
- - Round 1 research report written
169
- - Output written to product.md §3
170
-
171
- ## FAILURE MODES
172
-
173
- - Scenarios that describe features instead of user journeys
174
- - Missing the "current flow" (how users cope today)
175
- - No emotional arc (scenarios feel clinical, not human)
176
- - All scenarios for one persona (need coverage across personas)
177
- - Not writing output before presenting to user
178
-
179
- ## NEXT STEP
180
-
181
- After user selects [C], read and follow: `./step-20-user-stories.md`