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,156 +0,0 @@
1
- # Step 20: User Stories & Acceptance Criteria
2
-
3
- ## MANDATORY EXECUTION RULES
4
-
5
- - DERIVE stories from scenarios (step-11) — not invented from thin air
6
- - EVERY story has acceptance criteria — no story ships without testable conditions
7
- - USE standard format: "As a [persona], I want [action], so that [benefit]"
8
- - PRIORITIZE using MoSCoW: Must / Should / Could / Won't
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 11 (User Scenarios) completed with [C]
15
- - `.ultra/specs/product.md` §1-3 exist
16
-
17
- ## CONTEXT BOUNDARIES
18
-
19
- - Focus: What specific capabilities does the product need?
20
- - Stories must trace back to scenarios and personas
21
- - This is about WHAT the product does, not HOW it's built
22
- - Acceptance criteria must be testable and specific
23
-
24
- ## EXECUTION SEQUENCE
25
-
26
- ### 1. Extract Stories from Scenarios
27
-
28
- For each scenario from step-11, decompose into user stories:
29
-
30
- **Mapping**: Scenario → Stories
31
- - S1 (highest priority scenario) → 3-5 stories
32
- - S2 → 2-4 stories
33
- - S3 → 2-3 stories
34
- - Total: 8-15 stories for MVP
35
-
36
- ### 2. Write Stories with Acceptance Criteria
37
-
38
- For each story:
39
-
40
- ```
41
- As a [Persona Name],
42
- I want [specific action],
43
- so that [measurable benefit].
44
-
45
- Acceptance Criteria:
46
- - Given [context], when [action], then [expected result]
47
- - Given [context], when [edge case], then [expected result]
48
- - [Performance requirement if applicable]
49
- ```
50
-
51
- ### 3. Prioritize with MoSCoW
52
-
53
- Discuss with user via AskUserQuestion:
54
- "Here are the stories I've derived from our scenarios. For MVP, which are Must-Have vs Nice-to-Have?"
55
-
56
- | Priority | Definition | Guidance |
57
- |----------|-----------|---------|
58
- | **Must** | Product is useless without this | Blocks primary scenario |
59
- | **Should** | Important but workaround exists | Enhances primary scenario |
60
- | **Could** | Nice to have if time allows | Supports secondary scenarios |
61
- | **Won't** | Explicitly excluded for now | Out of scope (with rationale) |
62
-
63
- ### 4. Write Output
64
-
65
- **WRITE IMMEDIATELY** to `.ultra/specs/product.md` §4:
66
-
67
- ```markdown
68
- ## §4 User Stories & Features
69
-
70
- ### Story Map Overview
71
-
72
- | ID | Story | Persona | Scenario | Priority | Complexity |
73
- |----|-------|---------|----------|----------|-----------|
74
- | US-01 | [Short title] | [P1] | S1 | Must | [S/M/L] |
75
- | US-02 | [Short title] | [P1] | S1 | Must | [S/M/L] |
76
- | US-03 | [Short title] | [P1] | S2 | Must | [S/M/L] |
77
- | US-04 | [Short title] | [P2] | S2 | Should | [S/M/L] |
78
- | ... | ... | ... | ... | ... | ... |
79
-
80
- ### Must-Have Stories
81
-
82
- #### US-01: [Title]
83
- **As a** [Persona], **I want** [action], **so that** [benefit].
84
-
85
- **Acceptance Criteria**:
86
- - [ ] Given [context], when [action], then [result]
87
- - [ ] Given [context], when [edge case], then [result]
88
- - [ ] [Performance: response time < Xms]
89
-
90
- **Traces to**: Scenario [S#], Opportunity [O#]
91
- **Complexity**: [S/M/L] — [Brief rationale]
92
-
93
- #### US-02: [Title]
94
- [Same structure]
95
-
96
- #### US-03: [Title]
97
- [Same structure]
98
-
99
- ### Should-Have Stories
100
-
101
- #### US-04: [Title]
102
- [Same structure]
103
-
104
- ### Could-Have Stories
105
-
106
- #### US-07: [Title]
107
- [Same structure]
108
-
109
- ### Story Statistics
110
- - **Total stories**: [N]
111
- - **Must-have**: [N] ([X]%)
112
- - **Should-have**: [N] ([X]%)
113
- - **Could-have**: [N] ([X]%)
114
- - **Traceability**: [X]% of stories trace to scenarios
115
- ```
116
-
117
- ### 5. Present to User and Gate
118
-
119
- Show the User Stories summary. Ask:
120
- - Are the Must-Have stories correct?
121
- - Any stories missing?
122
- - Are acceptance criteria testable?
123
-
124
- ```
125
- [C] Continue — Stories validated, proceed to Features & Scope
126
- [R] Revise — Adjust stories, priorities, or acceptance criteria
127
- [A] Add — Include additional stories
128
- ```
129
-
130
- **HALT — wait for user response before proceeding.**
131
-
132
- ### 6. Handle Response
133
-
134
- - **[C]**: Load next step: `./step-21-features-scope.md`
135
- - **[R]**: Revise stories, update product.md §4, re-present
136
- - **[A]**: Add stories, update, re-present
137
-
138
- ## SUCCESS METRICS
139
-
140
- - 8-15 user stories derived from scenarios
141
- - Every story has testable acceptance criteria
142
- - MoSCoW prioritization applied with user input
143
- - Stories trace back to scenarios and personas
144
- - Output written to product.md §4
145
-
146
- ## FAILURE MODES
147
-
148
- - Stories not connected to any scenario
149
- - Acceptance criteria are vague ("it should work well")
150
- - All stories are Must-Have (no real prioritization happened)
151
- - Too many stories (>20 for MVP — scope creep)
152
- - Not writing output before presenting to user
153
-
154
- ## NEXT STEP
155
-
156
- After user selects [C], read and follow: `./step-21-features-scope.md`
@@ -1,157 +0,0 @@
1
- # Step 21: Features & Scope Definition
2
-
3
- ## MANDATORY EXECUTION RULES
4
-
5
- - EXPLICITLY DEFINE what is OUT of scope — this prevents scope creep
6
- - GROUP stories into features — features are implementable units
7
- - EVERY exclusion needs a RATIONALE — "not now" is not enough
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
- - Step 20 (User Stories) completed with [C]
14
- - `.ultra/specs/product.md` §1-4 exist
15
-
16
- ## CONTEXT BOUNDARIES
17
-
18
- - Focus: Group stories into features, define scope boundaries
19
- - Features are clusters of related stories that deliver a capability
20
- - "Features Out" is as important as "Features In"
21
- - Reference step-04 (Strategic Trade-offs) for scope decisions
22
-
23
- ## EXECUTION SEQUENCE
24
-
25
- ### 1. Group Stories into Features
26
-
27
- Cluster related user stories into features:
28
-
29
- ```
30
- Feature A: [Name]
31
- ├── US-01: [Story]
32
- ├── US-02: [Story]
33
- └── US-03: [Story]
34
-
35
- Feature B: [Name]
36
- ├── US-04: [Story]
37
- └── US-05: [Story]
38
- ```
39
-
40
- Each feature should be:
41
- - Independently valuable (delivers user value on its own)
42
- - Estimable (can assess complexity)
43
- - Testable (can verify it works end-to-end)
44
-
45
- ### 2. Define Scope Boundaries
46
-
47
- For each potential feature, classify:
48
-
49
- | Classification | Meaning |
50
- |---------------|---------|
51
- | **In scope (MVP)** | Must-have stories, ships in v1 |
52
- | **In scope (v2)** | Should-have stories, planned for later |
53
- | **Out of scope** | Won't build — with explicit rationale |
54
-
55
- ### 3. Document "Features Out"
56
-
57
- For each excluded feature, document:
58
- - What it is
59
- - Why it's excluded (reference strategic trade-offs from step-04)
60
- - When it might be reconsidered
61
- - What users should do instead
62
-
63
- This prevents:
64
- - Future scope creep ("but we said we'd do X")
65
- - Re-debating settled decisions
66
- - Building things that conflict with strategy
67
-
68
- ### 4. Write Output
69
-
70
- **WRITE IMMEDIATELY** to `.ultra/specs/product.md` §5:
71
-
72
- ```markdown
73
- ## §5 Feature Scope
74
-
75
- ### Features In (MVP)
76
-
77
- #### Feature 1: [Name]
78
- - **Description**: [What this feature does]
79
- - **Stories**: US-01, US-02, US-03
80
- - **User value**: [What user can do with this]
81
- - **Priority**: Must-Have
82
- - **Complexity**: [S/M/L]
83
-
84
- #### Feature 2: [Name]
85
- - **Description**: [What this feature does]
86
- - **Stories**: US-04, US-05
87
- - **User value**: [What user can do with this]
88
- - **Priority**: Must-Have
89
- - **Complexity**: [S/M/L]
90
-
91
- #### Feature 3: [Name]
92
- [Same structure]
93
-
94
- ### Features In (v2 — Planned)
95
-
96
- #### Feature 4: [Name]
97
- - **Description**: [What this feature does]
98
- - **Stories**: US-07, US-08
99
- - **Rationale for deferral**: [Why not MVP]
100
- - **Trigger to build**: [When to reconsider]
101
-
102
- ### Features Out (Explicitly Excluded)
103
-
104
- | Feature | Rationale | Reconsider When | Alternative |
105
- |---------|-----------|----------------|-------------|
106
- | [Feature X] | [Why excluded — reference strategy §4] | [Condition] | [What users do instead] |
107
- | [Feature Y] | [Why excluded] | [Condition] | [Alternative] |
108
- | [Feature Z] | [Why excluded] | [Condition] | [Alternative] |
109
-
110
- ### Scope Summary
111
- - **MVP features**: [N] features, [N] stories
112
- - **v2 features**: [N] features, [N] stories
113
- - **Excluded features**: [N] features
114
- - **Scope confidence**: [X]%
115
- ```
116
-
117
- ### 5. Present to User and Gate
118
-
119
- Show the Feature Scope summary. Ask:
120
- - Is the MVP scope right? Too big? Too small?
121
- - Are the exclusions correct?
122
- - Any missing features?
123
-
124
- ```
125
- [C] Continue — Scope locked, proceed to Success Metrics
126
- [R] Revise — Adjust feature grouping or scope boundaries
127
- [E] Expand — Move something from v2 to MVP
128
- [T] Trim — Move something from MVP to v2
129
- ```
130
-
131
- **HALT — wait for user response before proceeding.**
132
-
133
- ### 6. Handle Response
134
-
135
- - **[C]**: Load next step: `./step-22-success-metrics.md`
136
- - **[R]**: Revise features, update product.md §5, re-present
137
- - **[E]/[T]**: Adjust scope, update, re-present
138
-
139
- ## SUCCESS METRICS
140
-
141
- - Stories grouped into coherent features
142
- - Clear MVP vs v2 scope boundary
143
- - Every exclusion has a rationale and reconsideration trigger
144
- - Features trace to user stories and scenarios
145
- - Output written to product.md §5
146
-
147
- ## FAILURE MODES
148
-
149
- - No "Features Out" section (everything is in scope)
150
- - Features that don't map to any user stories
151
- - Exclusion rationale is just "not now" (needs specific reason)
152
- - MVP scope is too large (>5-7 features for a first version)
153
- - Not writing output before presenting to user
154
-
155
- ## NEXT STEP
156
-
157
- After user selects [C], read and follow: `./step-22-success-metrics.md`
@@ -1,195 +0,0 @@
1
- # Step 22: Success Metrics
2
-
3
- ## MANDATORY EXECUTION RULES
4
-
5
- - EVERY METRIC must have a specific numerical TARGET — not "improve X"
6
- - INCLUDE both business AND user metrics
7
- - DEFINE how each metric is MEASURED — not just what to measure
8
- - BASELINE required — you can't improve what you haven't measured
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 21 (Features & Scope) completed with [C]
15
- - `.ultra/specs/product.md` §1-5 exist
16
-
17
- ## CONTEXT BOUNDARIES
18
-
19
- - Focus: How will we know if this product is succeeding?
20
- - Metrics must be measurable, specific, and time-bound
21
- - Connect metrics to strategic goals from step-04
22
- - This is the LAST step of Round 2
23
-
24
- ## SEARCH STRATEGY (MANDATORY)
25
-
26
- Execute these web searches:
27
-
28
- ```
29
- Search: "{{product_domain}} key metrics KPIs benchmarks"
30
- Search: "{{product_domain}} SaaS metrics success benchmarks"
31
- Search: "{{product_domain}} user engagement retention benchmarks"
32
- Search: "{{product_domain}} north star metric examples"
33
- ```
34
-
35
- ## EXECUTION SEQUENCE
36
-
37
- ### 1. Define North Star Metric
38
-
39
- Ask user via AskUserQuestion:
40
- "What single metric best captures whether this product is delivering value? (e.g., 'Weekly active workflows completed', 'Time saved per user per week')"
41
-
42
- The North Star Metric should:
43
- - Reflect core value delivery
44
- - Be leading (not lagging)
45
- - Be actionable (team can influence it)
46
-
47
- ### 2. Define Business Metrics
48
-
49
- | Metric | What to define |
50
- |--------|---------------|
51
- | Revenue/adoption targets | Month 1, 3, 6, 12 |
52
- | Growth rate | MoM or WoW targets |
53
- | Retention | Day 1, Day 7, Day 30 |
54
- | Conversion | Free → Paid (if applicable) |
55
- | Unit economics | CAC, LTV, LTV/CAC ratio |
56
-
57
- Use web search benchmarks for realistic targets.
58
-
59
- ### 3. Define User Metrics
60
-
61
- | Metric | What to define |
62
- |--------|---------------|
63
- | Task completion | Success rate for key scenarios |
64
- | Time on task | vs baseline (current workflow) |
65
- | User satisfaction | NPS or CSAT target |
66
- | Feature adoption | % of users using key features |
67
- | Error rate | Failure frequency |
68
-
69
- ### 4. Write Output
70
-
71
- **WRITE IMMEDIATELY** to `.ultra/specs/product.md` §6:
72
-
73
- ```markdown
74
- ## §6 Success Metrics
75
-
76
- ### North Star Metric
77
- - **Metric**: [Name]
78
- - **Definition**: [Exactly what is measured]
79
- - **Current baseline**: [Current state or industry benchmark]
80
- - **Target**: [Specific number]
81
- - **Timeline**: [When to achieve]
82
- - **Measurement method**: [How to collect this data]
83
-
84
- ### Business Metrics
85
-
86
- | Metric | Baseline | Target (M3) | Target (M6) | Target (M12) | How Measured |
87
- |--------|----------|-------------|-------------|--------------|-------------|
88
- | [Revenue/Users] | [N/A or current] | [Target] | [Target] | [Target] | [Method] |
89
- | [Growth rate] | [Benchmark] | [Target] | [Target] | [Target] | [Method] |
90
- | [Retention D30] | [Benchmark] | [Target] | [Target] | [Target] | [Method] |
91
- | [Conversion] | [Benchmark] | [Target] | [Target] | [Target] | [Method] |
92
-
93
- _Benchmark sources: [URLs]_
94
-
95
- ### User Metrics
96
-
97
- | Metric | Baseline | Target | How Measured |
98
- |--------|----------|--------|-------------|
99
- | Task completion rate | [Current %] | [Target %] | [Method] |
100
- | Time on task | [Current min] | [Target min] | [Method] |
101
- | User satisfaction (NPS) | [Industry avg] | [Target] | [Survey] |
102
- | Feature adoption | [N/A] | [Target %] | [Analytics] |
103
- | Error rate | [Current %] | [Target %] | [Logging] |
104
-
105
- ### Metric Prioritization
106
-
107
- | Priority | Metric | Why |
108
- |----------|--------|-----|
109
- | P0 (check daily) | [North Star] | [Core value signal] |
110
- | P0 (check daily) | [Critical metric] | [Business health] |
111
- | P1 (check weekly) | [Important metric] | [Growth signal] |
112
- | P2 (check monthly) | [Supporting metric] | [Quality signal] |
113
-
114
- ### Anti-Metrics (What NOT to Optimize)
115
-
116
- | Anti-Metric | Why Not | What It Could Sacrifice |
117
- |------------|---------|------------------------|
118
- | [e.g., Page views] | [Vanity metric] | [Could sacrifice quality for clicks] |
119
- | [e.g., Time in app] | [Could mean confusion] | [Could sacrifice efficiency] |
120
-
121
- ### Round 2 Summary
122
-
123
- **Feature Definition Confidence**:
124
- - **Story completeness**: [X]% — [One-line assessment]
125
- - **Scope clarity**: [X]% — [One-line assessment]
126
- - **Metric measurability**: [X]% — [One-line assessment]
127
- - **Overall R2 confidence**: [X]%
128
- ```
129
-
130
- ### 5. Write Round 2 Research Report
131
-
132
- **WRITE** to `.ultra/docs/research/feature-definition-{date}.md`:
133
-
134
- ```markdown
135
- # Round 2: Feature Definition
136
-
137
- > **Confidence**: [X]%
138
- > **Steps completed**: 20-22
139
- > **Completed**: [date]
140
-
141
- ## Key Findings
142
- [3-5 bullet points]
143
-
144
- ## Stories Created
145
- [Count by priority: Must/Should/Could]
146
-
147
- ## Scope Decisions
148
- [Key inclusions and exclusions]
149
-
150
- ## Metrics Defined
151
- [North Star + top 3 metrics]
152
- ```
153
-
154
- ### 6. Present to User and Gate
155
-
156
- Show the Success Metrics summary. Ask:
157
- - Are the targets realistic?
158
- - Is the North Star metric right?
159
- - Any metrics missing?
160
-
161
- ```
162
- [C] Continue — Metrics defined, proceed to Round 3 (Architecture Design)
163
- [R] Revise — Adjust targets or metrics
164
- [D] Discuss — Explore specific metric benchmarks
165
- ```
166
-
167
- **HALT — wait for user response before proceeding.**
168
-
169
- ### 7. Handle Response
170
-
171
- - **[C]**: Load next step: `./step-30-architecture-context.md`
172
- - **[R]**: Revise metrics, update product.md §6, re-present
173
- - **[D]**: Deep-dive specific benchmarks, then re-present gate
174
-
175
- ## SUCCESS METRICS
176
-
177
- - North Star metric defined with baseline and target
178
- - Business metrics have specific targets at M3/M6/M12
179
- - User metrics have baselines and targets
180
- - Benchmark sources cited from web search
181
- - Anti-metrics defined (what NOT to optimize)
182
- - Round 2 research report written
183
- - Output written to product.md §6
184
-
185
- ## FAILURE MODES
186
-
187
- - Metrics without specific targets ("improve retention")
188
- - No baseline or benchmark for comparison
189
- - Only business metrics, no user metrics (or vice versa)
190
- - Unrealistic targets (100% retention, 0% error rate)
191
- - Not writing output before presenting to user
192
-
193
- ## NEXT STEP
194
-
195
- After user selects [C], read and follow: `./step-30-architecture-context.md`
@@ -1,154 +0,0 @@
1
- # Step 30: Architecture Context
2
-
3
- ## MANDATORY EXECUTION RULES
4
-
5
- - WEB SEARCH REQUIRED — verify technology claims against official docs
6
- - USE Context7 MCP for framework/library documentation lookups
7
- - ARCHITECTURE FOLLOWS PRODUCT — decisions must trace to product requirements
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
- - Round 2 completed (steps 20-22) with [C], OR user chose "Architecture Change" starting at step-30
14
- - `.ultra/specs/architecture.md` exists
15
-
16
- ## CONTEXT BOUNDARIES
17
-
18
- - Focus: Quality goals, constraints, and system context (arc42 §1-3)
19
- - Decisions must be grounded in product requirements from product.md
20
- - This is about WHAT the system must achieve, not HOW to build it (that's step-31)
21
-
22
- ## SEARCH STRATEGY (MANDATORY)
23
-
24
- ```
25
- Search: "{{product_domain}} architecture quality attributes"
26
- Search: "{{product_domain}} system integration patterns"
27
- Search: "{{product_domain}} technical constraints regulations"
28
- ```
29
-
30
- Use Context7 MCP for specific framework/library documentation.
31
-
32
- ## EXECUTION SEQUENCE
33
-
34
- ### 1. Define Quality Goals
35
-
36
- Derive from product.md §6 (Success Metrics) and user scenarios:
37
-
38
- | Quality Attribute | Concrete Scenario | Priority |
39
- |------------------|-------------------|----------|
40
- | Performance | [e.g., "API response < 200ms for 95th percentile"] | [1-3] |
41
- | Scalability | [e.g., "Handle 10K concurrent users"] | [1-3] |
42
- | Security | [e.g., "SOC 2 compliance, encrypted at rest"] | [1-3] |
43
- | Availability | [e.g., "99.9% uptime, < 5min recovery"] | [1-3] |
44
- | Maintainability | [e.g., "New developer productive in < 1 week"] | [1-3] |
45
-
46
- Ask user via AskUserQuestion: "Which quality attributes matter most? Performance? Security? Scalability?"
47
-
48
- ### 2. Identify Constraints
49
-
50
- **Technical constraints**:
51
- - Required platforms/browsers
52
- - Mandatory integrations
53
- - Technology restrictions (e.g., "must use Python for ML team compatibility")
54
-
55
- **Organizational constraints**:
56
- - Team size and skill profile
57
- - Budget limitations
58
- - Timeline constraints
59
-
60
- **Regulatory constraints**:
61
- - Data privacy (GDPR, CCPA)
62
- - Industry regulations
63
- - Compliance requirements
64
-
65
- ### 3. Map System Context
66
-
67
- Identify all external systems and interfaces:
68
-
69
- **Users**: Who interacts with the system?
70
- **External systems**: What APIs, services, databases does it connect to?
71
- **Data flows**: What data enters and leaves the system?
72
-
73
- ### 4. Write Output
74
-
75
- **WRITE IMMEDIATELY** to `.ultra/specs/architecture.md` §1-3:
76
-
77
- ```markdown
78
- ## §1 Quality Goals
79
-
80
- | Priority | Quality Attribute | Scenario | Metric |
81
- |----------|------------------|----------|--------|
82
- | 1 | [Attribute] | [Concrete scenario] | [Measurable target] |
83
- | 2 | [Attribute] | [Concrete scenario] | [Measurable target] |
84
- | 3 | [Attribute] | [Concrete scenario] | [Measurable target] |
85
-
86
- ## §2 Constraints
87
-
88
- ### Technical Constraints
89
- | Constraint | Rationale | Impact |
90
- |-----------|-----------|--------|
91
- | [Constraint] | [Why this exists] | [What it limits] |
92
-
93
- ### Organizational Constraints
94
- | Constraint | Rationale | Impact |
95
- |-----------|-----------|--------|
96
- | [Constraint] | [Why this exists] | [What it limits] |
97
-
98
- ### Regulatory Constraints
99
- | Constraint | Rationale | Impact |
100
- |-----------|-----------|--------|
101
- | [Constraint] | [Why this exists] | [What it limits] |
102
-
103
- ## §3 System Context
104
-
105
- ### Context Diagram
106
-
107
- **Users**:
108
- - [User type 1]: [How they interact]
109
- - [User type 2]: [How they interact]
110
-
111
- **External Systems**:
112
- | System | Direction | Data | Protocol | Notes |
113
- |--------|-----------|------|----------|-------|
114
- | [System A] | Inbound | [What data] | [REST/gRPC/etc] | [Notes] |
115
- | [System B] | Outbound | [What data] | [Protocol] | [Notes] |
116
- | [System C] | Bidirectional | [What data] | [Protocol] | [Notes] |
117
-
118
- **Data Flows**:
119
- - [User] → [System] → [External]: [Description of flow]
120
- - [External] → [System] → [User]: [Description of flow]
121
- ```
122
-
123
- ### 5. Present to User and Gate
124
-
125
- ```
126
- [C] Continue — Context defined, proceed to Solution Strategy
127
- [R] Revise — Adjust quality goals, constraints, or context
128
- ```
129
-
130
- **HALT — wait for user response before proceeding.**
131
-
132
- ### 6. Handle Response
133
-
134
- - **[C]**: Load next step: `./step-31-solution-strategy.md`
135
- - **[R]**: Revise, update architecture.md §1-3, re-present
136
-
137
- ## SUCCESS METRICS
138
-
139
- - Quality goals are specific and measurable (not "good performance")
140
- - Constraints identified across technical/organizational/regulatory
141
- - System context shows all external interfaces
142
- - All quality goals trace to product requirements
143
- - Output written to architecture.md §1-3
144
-
145
- ## FAILURE MODES
146
-
147
- - Vague quality goals ("system should be fast")
148
- - Missing regulatory constraints
149
- - System context missing key external integrations
150
- - Quality goals not derived from product requirements
151
-
152
- ## NEXT STEP
153
-
154
- After user selects [C], read and follow: `./step-31-solution-strategy.md`