project-iris 0.6.6 → 0.6.8
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.
- package/flows/aidlc/agents/construction-agent.md +106 -4
- package/flows/aidlc/agents/master-agent.md +16 -1
- package/flows/aidlc/commands/construction-agent.md +11 -3
- package/flows/aidlc/context-config.yaml +14 -0
- package/flows/aidlc/skills/construction/bolt-start.md +29 -659
- package/flows/aidlc/skills/construction/refs/bolt-output.md +106 -0
- package/flows/aidlc/skills/construction/refs/construction-log.md +55 -0
- package/flows/aidlc/skills/construction/refs/figma-integration.md +363 -0
- package/flows/aidlc/skills/construction/refs/story-execution.md +167 -0
- package/flows/aidlc/skills/inception/refs/figma-story-refs.md +119 -0
- package/flows/aidlc/skills/inception/refs/measurement-criteria.md +123 -0
- package/flows/aidlc/skills/inception/refs/nfr-categories.md +144 -0
- package/flows/aidlc/skills/inception/refs/risk-categories.md +134 -0
- package/flows/aidlc/skills/inception/requirements.md +6 -257
- package/flows/aidlc/skills/inception/risks.md +3 -129
- package/flows/aidlc/skills/inception/story-create.md +3 -110
- package/flows/aidlc/templates/construction/ui-patterns.md +165 -0
- package/flows/aidlc/templates/standards/coding-standards.guide.md +142 -0
- package/lib/installer.js +10 -0
- package/package.json +1 -1
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
# Story-by-Story Execution Pattern
|
|
2
|
+
|
|
3
|
+
This sub-skill defines the sequential story execution loop for code generation stages.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 7b. Story-by-Story Execution (Code Generation Stages) - HARD GATE
|
|
8
|
+
|
|
9
|
+
**⛔ HARD GATE - SEQUENTIAL STORY EXECUTION REQUIRED**
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
13
|
+
│ STORY-BY-STORY EXECUTION - NON-NEGOTIABLE │
|
|
14
|
+
│ │
|
|
15
|
+
│ ⛔ FORBIDDEN: Implementing multiple stories at once │
|
|
16
|
+
│ ⛔ FORBIDDEN: Skipping story file reads │
|
|
17
|
+
│ ⛔ FORBIDDEN: Not updating stories_progress in bolt file │
|
|
18
|
+
│ │
|
|
19
|
+
│ You MUST process stories ONE AT A TIME in sequence. │
|
|
20
|
+
│ Each story requires its own announce → read → implement → │
|
|
21
|
+
│ update cycle. Batch implementation = broken traceability. │
|
|
22
|
+
└─────────────────────────────────────────────────────────────┘
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**For EACH story in bolt's stories array, execute this exact sequence:**
|
|
26
|
+
|
|
27
|
+
```text
|
|
28
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
29
|
+
│ STORY EXECUTION LOOP (repeat for each story) │
|
|
30
|
+
│ │
|
|
31
|
+
│ STEP A: Announce start │
|
|
32
|
+
│ Output: "⏳ Story {n}/{total}: {story-id} - {title}" │
|
|
33
|
+
│ │
|
|
34
|
+
│ STEP B: Read story file (MANDATORY) │
|
|
35
|
+
│ Action: Read {intent}/units/{unit}/stories/{story-id}.md │
|
|
36
|
+
│ Purpose: Extract acceptance criteria for implementation │
|
|
37
|
+
│ │
|
|
38
|
+
│ STEP C: Implement code for THIS story only │
|
|
39
|
+
│ Action: Create/modify code to satisfy acceptance criteria │
|
|
40
|
+
│ Add traceability: // Story: {story-id} │
|
|
41
|
+
│ │
|
|
42
|
+
│ STEP D: Update bolt file stories_progress (MANDATORY) │
|
|
43
|
+
│ Action: Edit bolt.md to mark story progress │
|
|
44
|
+
│ │
|
|
45
|
+
│ STEP E: Update story FILE status (MANDATORY) │
|
|
46
|
+
│ Action: Edit story file frontmatter │
|
|
47
|
+
│ Path: {intent}/units/{unit}/stories/{story-id}.md │
|
|
48
|
+
│ Update: status: {current} → implemented │
|
|
49
|
+
│ ⚠️ This is the STORY FILE, not bolt.md │
|
|
50
|
+
│ │
|
|
51
|
+
│ STEP F: Announce completion │
|
|
52
|
+
│ Output: "✅ Story {story-id}: Implemented → `{files}`" │
|
|
53
|
+
│ │
|
|
54
|
+
│ STEP G: Show updated progress list │
|
|
55
|
+
│ Then proceed to next story (back to STEP A) │
|
|
56
|
+
└─────────────────────────────────────────────────────────────┘
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Story Progress Display (show after EACH story completion):**
|
|
60
|
+
|
|
61
|
+
```markdown
|
|
62
|
+
### Story Progress ({completed}/{total})
|
|
63
|
+
|
|
64
|
+
1. ✅ **{SSS}-{story-slug}**: Implemented → `{files}`
|
|
65
|
+
2. ✅ **{SSS}-{story-slug}**: Implemented → `{files}`
|
|
66
|
+
3. ⏳ **{SSS}-{story-slug}**: In Progress
|
|
67
|
+
4. [ ] **{SSS}-{story-slug}**: Pending
|
|
68
|
+
5. [ ] **{SSS}-{story-slug}**: Pending
|
|
69
|
+
6. [ ] **{SSS}-{story-slug}**: Pending
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### 7b-1. Story File Update (HARD GATE)
|
|
73
|
+
|
|
74
|
+
**⛔ HARD GATE - STORY FILE UPDATE REQUIRED AFTER EACH STORY**
|
|
75
|
+
|
|
76
|
+
```text
|
|
77
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
78
|
+
│ STORY FILE UPDATE - NON-NEGOTIABLE │
|
|
79
|
+
│ │
|
|
80
|
+
│ After implementing code for a story, you MUST: │
|
|
81
|
+
│ 1. Use Edit tool to update the STORY FILE (not bolt.md) │
|
|
82
|
+
│ 2. Change frontmatter: status: {current} → implemented │
|
|
83
|
+
│ 3. Verify the edit was applied │
|
|
84
|
+
│ │
|
|
85
|
+
│ Path: {intent}/units/{unit}/stories/{story-id}.md │
|
|
86
|
+
│ │
|
|
87
|
+
│ ⛔ FORBIDDEN: Moving to next story without updating file │
|
|
88
|
+
│ ⛔ FORBIDDEN: Only updating bolt.md, not story file │
|
|
89
|
+
│ ⛔ FORBIDDEN: Batch updating at stage end │
|
|
90
|
+
└─────────────────────────────────────────────────────────────┘
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**Story status values during code generation:**
|
|
94
|
+
|
|
95
|
+
- `draft` / `generated` / `approved` → Initial status (varies)
|
|
96
|
+
- `implemented` → After code is written for this story
|
|
97
|
+
|
|
98
|
+
**Verification Output (after each story file update):**
|
|
99
|
+
|
|
100
|
+
```text
|
|
101
|
+
✅ Story file updated: {story-id}.md
|
|
102
|
+
- status: {old-status} → implemented
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### 7b-2. Bolt File Update (After Story File)
|
|
106
|
+
|
|
107
|
+
**Update bolt file after EACH story (not at the end):**
|
|
108
|
+
|
|
109
|
+
```yaml
|
|
110
|
+
stories_progress:
|
|
111
|
+
- id: 001-database-init
|
|
112
|
+
status: complete
|
|
113
|
+
implemented_at: {timestamp}
|
|
114
|
+
- id: 002-schema-tables
|
|
115
|
+
status: complete
|
|
116
|
+
implemented_at: {timestamp}
|
|
117
|
+
- id: 003-crud-operations
|
|
118
|
+
status: in-progress
|
|
119
|
+
- id: 004-query-helpers
|
|
120
|
+
status: pending
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Why This Pattern Exists:**
|
|
124
|
+
|
|
125
|
+
1. **Traceability**: Each piece of code maps to a specific story
|
|
126
|
+
2. **Resumability**: If interrupted, we know exactly where to continue
|
|
127
|
+
3. **Verification**: We can validate that ALL stories were addressed
|
|
128
|
+
4. **Visibility**: User sees clear progress through the work
|
|
129
|
+
5. **Quality**: Reading acceptance criteria prevents missed requirements
|
|
130
|
+
|
|
131
|
+
## 7c. Final Regression Check (After All Stories Implemented)
|
|
132
|
+
|
|
133
|
+
**⛔ REQUIRED: After implementing all stories, verify no regressions**
|
|
134
|
+
|
|
135
|
+
```text
|
|
136
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
137
|
+
│ REGRESSION CHECK - BEFORE STAGE CHECKPOINT │
|
|
138
|
+
│ │
|
|
139
|
+
│ After ALL stories are implemented, you MUST verify: │
|
|
140
|
+
│ 1. Re-read acceptance criteria from FIRST story │
|
|
141
|
+
│ 2. Verify the implementation still satisfies those ACs │
|
|
142
|
+
│ 3. Repeat for each story in order │
|
|
143
|
+
│ 4. Report any regressions found │
|
|
144
|
+
│ │
|
|
145
|
+
│ Later stories may have broken earlier implementations. │
|
|
146
|
+
│ Catch this BEFORE moving to Testing stage. │
|
|
147
|
+
└─────────────────────────────────────────────────────────────┘
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
**Regression Check Output:**
|
|
151
|
+
|
|
152
|
+
```text
|
|
153
|
+
### Regression Check ({stories_count} stories)
|
|
154
|
+
|
|
155
|
+
1. ✅ **{story-1}**: All ACs still valid
|
|
156
|
+
2. ✅ **{story-2}**: All ACs still valid
|
|
157
|
+
3. ⚠️ **{story-3}**: AC2 regression - {description} → FIX REQUIRED
|
|
158
|
+
4. ✅ **{story-4}**: All ACs still valid
|
|
159
|
+
|
|
160
|
+
{If regressions found: Fix before proceeding to checkpoint}
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**Why This Check Exists:**
|
|
164
|
+
|
|
165
|
+
- Story N implementation may modify shared code
|
|
166
|
+
- Changes could invalidate Story 1-N-1 acceptance criteria
|
|
167
|
+
- Catching regressions early prevents cascade failures in Testing stage
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# Figma Reference Collection for Stories
|
|
2
|
+
|
|
3
|
+
This sub-skill handles collecting Figma frame URLs and interaction flows during story creation.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 4a. Collect Figma References (UI Stories Only)
|
|
8
|
+
|
|
9
|
+
**For stories that involve UI screens, ask the user for Figma frame URLs.**
|
|
10
|
+
|
|
11
|
+
**Detection:** Check if the story involves UI by looking for these signals in the user story or acceptance criteria:
|
|
12
|
+
|
|
13
|
+
- Screen, page, view, layout
|
|
14
|
+
- Form, button, modal, dialog, bottom sheet
|
|
15
|
+
- Navigation, menu, sidebar
|
|
16
|
+
- Component, widget, card, table
|
|
17
|
+
|
|
18
|
+
**If UI signals detected:**
|
|
19
|
+
|
|
20
|
+
```text
|
|
21
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
22
|
+
│ FIGMA REFERENCE COLLECTION │
|
|
23
|
+
│ │
|
|
24
|
+
│ Story: {story-id} - {title} │
|
|
25
|
+
│ UI Detected: {signal found} │
|
|
26
|
+
│ │
|
|
27
|
+
│ Do you have Figma designs for this story? │
|
|
28
|
+
│ │
|
|
29
|
+
│ 1 - Yes, I'll provide Figma frame URLs │
|
|
30
|
+
│ 2 - No, use ui-patterns.md guidelines │
|
|
31
|
+
│ 3 - Skip for now (add later) │
|
|
32
|
+
└─────────────────────────────────────────────────────────────┘
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**If user selects "Yes":**
|
|
36
|
+
|
|
37
|
+
```text
|
|
38
|
+
Please provide Figma frame URLs for this story.
|
|
39
|
+
You can provide multiple URLs (one per screen/component).
|
|
40
|
+
|
|
41
|
+
Supported format:
|
|
42
|
+
- Design file: https://www.figma.com/design/{file-id}/{name}?node-id={node-id}&t={token}
|
|
43
|
+
|
|
44
|
+
Enter URLs (one per line, empty line to finish):
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
**Store in story frontmatter:**
|
|
48
|
+
|
|
49
|
+
```yaml
|
|
50
|
+
figma_frames:
|
|
51
|
+
- https://www.figma.com/design/xxx/Project?node-id=1:100&t=abc
|
|
52
|
+
- https://www.figma.com/design/xxx/Project?node-id=1:200&t=abc
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**If user selects "No" or "Skip":**
|
|
56
|
+
|
|
57
|
+
Leave `figma_frames: []` in frontmatter. Construction Agent will use ui-patterns.md guidelines.
|
|
58
|
+
|
|
59
|
+
**Batch Collection Option:**
|
|
60
|
+
|
|
61
|
+
If multiple UI stories are being created, offer batch collection:
|
|
62
|
+
|
|
63
|
+
```text
|
|
64
|
+
I detected {n} stories with UI components. Would you like to:
|
|
65
|
+
|
|
66
|
+
1 - Provide Figma URLs for each story individually
|
|
67
|
+
2 - Provide a single Figma file URL (I'll ask which frames map to which stories)
|
|
68
|
+
3 - Skip Figma references for all (use ui-patterns.md)
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## 4a-2. Collect Interaction Flows (If No Prototype in Figma)
|
|
72
|
+
|
|
73
|
+
**After collecting Figma URLs, ask about prototype connections:**
|
|
74
|
+
|
|
75
|
+
```text
|
|
76
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
77
|
+
│ INTERACTION FLOW CHECK │
|
|
78
|
+
│ │
|
|
79
|
+
│ Does your Figma file have prototype connections defined? │
|
|
80
|
+
│ (Click interactions that link frames together) │
|
|
81
|
+
│ │
|
|
82
|
+
│ 1 - Yes, prototype is set up in Figma │
|
|
83
|
+
│ 2 - No, I'll define interactions manually │
|
|
84
|
+
│ 3 - Not sure / I'll handle it during construction │
|
|
85
|
+
└─────────────────────────────────────────────────────────────┘
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**If user selects "No" (manual definition):**
|
|
89
|
+
|
|
90
|
+
```text
|
|
91
|
+
Let's define the interactions for each screen.
|
|
92
|
+
|
|
93
|
+
For screen: {screen-name} (from Figma frame)
|
|
94
|
+
|
|
95
|
+
What interactive elements are on this screen?
|
|
96
|
+
(List buttons, links, or other clickable elements)
|
|
97
|
+
|
|
98
|
+
For each element, I'll ask:
|
|
99
|
+
- What action does it trigger? (navigate, overlay, close, submit)
|
|
100
|
+
- What is the target? (destination screen name)
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
**Store in story frontmatter:**
|
|
104
|
+
|
|
105
|
+
```yaml
|
|
106
|
+
interaction_flows:
|
|
107
|
+
- screen: login-form
|
|
108
|
+
interactions:
|
|
109
|
+
- element: "Sign Up button"
|
|
110
|
+
action: navigate
|
|
111
|
+
target: registration-form
|
|
112
|
+
- element: "Forgot Password link"
|
|
113
|
+
action: overlay
|
|
114
|
+
target: forgot-password-modal
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
**If user selects "Yes" or "Not sure":**
|
|
118
|
+
|
|
119
|
+
Leave `interaction_flows: []` - Construction Agent will extract from Figma or ask during implementation.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Measurement Criteria, SLOs, and Trade-offs
|
|
2
|
+
|
|
3
|
+
This sub-skill covers Steps 4-6 of requirements discovery: SLOs, measurement criteria, and trade-off documentation.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Step 4: Define SLOs
|
|
8
|
+
|
|
9
|
+
Based on NFR answers, define Service Level Objectives:
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
## Service Level Objectives (SLOs)
|
|
13
|
+
|
|
14
|
+
Based on your requirements, here are the proposed SLOs:
|
|
15
|
+
|
|
16
|
+
### Availability SLO
|
|
17
|
+
- **Indicator**: % of successful requests (non-5xx)
|
|
18
|
+
- **Target**: {X}% over 30-day window
|
|
19
|
+
- **Error Budget**: {Y} minutes/month
|
|
20
|
+
|
|
21
|
+
### Latency SLO
|
|
22
|
+
- **Indicator**: Response time at p95
|
|
23
|
+
- **Target**: < {X}ms
|
|
24
|
+
- **Scope**: All API endpoints
|
|
25
|
+
|
|
26
|
+
### Error Rate SLO
|
|
27
|
+
- **Indicator**: % of failed requests
|
|
28
|
+
- **Target**: < {X}%
|
|
29
|
+
- **Window**: 24-hour rolling
|
|
30
|
+
|
|
31
|
+
Do these SLOs align with your expectations?
|
|
32
|
+
1 - **Yes**: Continue
|
|
33
|
+
2 - **Adjust**: Modify targets
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Step 5: Define Measurement Criteria (AI-DLC Requirement)
|
|
39
|
+
|
|
40
|
+
**Per AI-DLC specification, Measurement Criteria must trace to the business intent.**
|
|
41
|
+
|
|
42
|
+
Unlike technical SLOs, Measurement Criteria capture business-level success indicators.
|
|
43
|
+
|
|
44
|
+
```markdown
|
|
45
|
+
## Measurement Criteria
|
|
46
|
+
|
|
47
|
+
Measurement Criteria trace back to the business intent and help validate whether the feature delivers expected value.
|
|
48
|
+
|
|
49
|
+
### Business Outcome Metrics
|
|
50
|
+
|
|
51
|
+
1. **Primary Success Metric**: What single metric best indicates this feature is successful?
|
|
52
|
+
- Metric: ___
|
|
53
|
+
- Current baseline (if known): ___
|
|
54
|
+
- Target: ___
|
|
55
|
+
- Measurement method: ___
|
|
56
|
+
|
|
57
|
+
2. **User Adoption Metrics**:
|
|
58
|
+
- Expected active users: ___
|
|
59
|
+
- Feature usage frequency: ___
|
|
60
|
+
- Time to first value: ___
|
|
61
|
+
|
|
62
|
+
3. **Business Impact Metrics**:
|
|
63
|
+
- Revenue impact (if applicable): ___
|
|
64
|
+
- Cost reduction (if applicable): ___
|
|
65
|
+
- Efficiency gain (if applicable): ___
|
|
66
|
+
|
|
67
|
+
### Leading Indicators
|
|
68
|
+
What early signals will indicate we're on track?
|
|
69
|
+
- ___
|
|
70
|
+
- ___
|
|
71
|
+
|
|
72
|
+
### Lagging Indicators
|
|
73
|
+
What will confirm long-term success?
|
|
74
|
+
- ___
|
|
75
|
+
- ___
|
|
76
|
+
|
|
77
|
+
### Measurement Timeline
|
|
78
|
+
- **Week 1-2**: {Early indicators to monitor}
|
|
79
|
+
- **Month 1**: {Short-term success criteria}
|
|
80
|
+
- **Quarter 1**: {Long-term validation}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**Wait for user input on key metrics.**
|
|
84
|
+
|
|
85
|
+
**After receiving answers, document in requirements.md:**
|
|
86
|
+
|
|
87
|
+
```markdown
|
|
88
|
+
## Measurement Criteria
|
|
89
|
+
|
|
90
|
+
### Primary Success Metric
|
|
91
|
+
- **Metric**: {metric name}
|
|
92
|
+
- **Baseline**: {current state}
|
|
93
|
+
- **Target**: {goal}
|
|
94
|
+
- **Measurement**: {how to measure}
|
|
95
|
+
|
|
96
|
+
### Business Traceability
|
|
97
|
+
| Metric | Business Goal | FR/NFR Link |
|
|
98
|
+
|--------|---------------|-------------|
|
|
99
|
+
| {Metric 1} | {Which business goal it validates} | FR-1, FR-2 |
|
|
100
|
+
| {Metric 2} | {Which business goal it validates} | NFR-P1 |
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
|
|
105
|
+
## Step 6: Document Trade-offs
|
|
106
|
+
|
|
107
|
+
If requirements conflict, document trade-offs:
|
|
108
|
+
|
|
109
|
+
```markdown
|
|
110
|
+
## Requirements Trade-offs
|
|
111
|
+
|
|
112
|
+
I've identified these trade-offs in your requirements:
|
|
113
|
+
|
|
114
|
+
### Trade-off 1: {e.g., Performance vs Security}
|
|
115
|
+
- **Conflict**: {Description}
|
|
116
|
+
- **Options**:
|
|
117
|
+
1 - {Option A with implications}
|
|
118
|
+
2 - {Option B with implications}
|
|
119
|
+
- **Recommendation**: {Your recommendation}
|
|
120
|
+
- **Your decision**: ___
|
|
121
|
+
|
|
122
|
+
{Repeat for other trade-offs}
|
|
123
|
+
```
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# NFR Category Discovery Questions
|
|
2
|
+
|
|
3
|
+
Walk through each NFR category one at a time with the user. Wait for response after each category before proceeding to the next.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Category 1/5: Performance
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
## NFR Category 1/5: Performance
|
|
11
|
+
|
|
12
|
+
1. **Response Time**: What's acceptable for main operations?
|
|
13
|
+
- 1 - Fast (< 100ms) - Real-time feel
|
|
14
|
+
- 2 - Standard (< 500ms) - Typical web app
|
|
15
|
+
- 3 - Tolerant (< 2s) - Complex operations
|
|
16
|
+
- 4 - Specify custom target
|
|
17
|
+
|
|
18
|
+
2. **Throughput**: Expected request volume?
|
|
19
|
+
- Requests per second: ___
|
|
20
|
+
- Peak vs normal ratio: ___
|
|
21
|
+
|
|
22
|
+
3. **Latency-sensitive operations**: Any operations needing special attention?
|
|
23
|
+
|
|
24
|
+
Your answers (or 'skip' if not applicable):
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Wait for response, then continue to next category.**
|
|
28
|
+
|
|
29
|
+
## Category 2/5: Scalability
|
|
30
|
+
|
|
31
|
+
```markdown
|
|
32
|
+
## NFR Category 2/5: Scalability
|
|
33
|
+
|
|
34
|
+
1. **Current Load**:
|
|
35
|
+
- Expected daily active users: ___
|
|
36
|
+
- Peak concurrent users: ___
|
|
37
|
+
- Data volume (records): ___
|
|
38
|
+
|
|
39
|
+
2. **Growth** (next 12 months):
|
|
40
|
+
- 1 - Low (< 2x growth)
|
|
41
|
+
- 2 - Medium (2-5x growth)
|
|
42
|
+
- 3 - High (5-10x growth)
|
|
43
|
+
- 4 - Hyper (> 10x growth)
|
|
44
|
+
|
|
45
|
+
3. **Scaling Strategy**:
|
|
46
|
+
- 1 - Horizontal (add instances)
|
|
47
|
+
- 2 - Vertical (larger instances)
|
|
48
|
+
- 3 - Auto-scaling (dynamic)
|
|
49
|
+
- 4 - Need recommendation
|
|
50
|
+
|
|
51
|
+
Your answers:
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**Wait for response.**
|
|
55
|
+
|
|
56
|
+
## Category 3/5: Security
|
|
57
|
+
|
|
58
|
+
```markdown
|
|
59
|
+
## NFR Category 3/5: Security
|
|
60
|
+
|
|
61
|
+
1. **Authentication**:
|
|
62
|
+
- 1 - OAuth 2.0 / OIDC (social/enterprise SSO)
|
|
63
|
+
- 2 - JWT (stateless tokens)
|
|
64
|
+
- 3 - Session-based (traditional)
|
|
65
|
+
- 4 - API Keys (service-to-service)
|
|
66
|
+
- 5 - None (public access)
|
|
67
|
+
- 6 - Inherit from project standards
|
|
68
|
+
|
|
69
|
+
2. **Authorization**:
|
|
70
|
+
- 1 - RBAC (role-based)
|
|
71
|
+
- 2 - ABAC (attribute-based)
|
|
72
|
+
- 3 - Simple (admin/user)
|
|
73
|
+
- 4 - None needed
|
|
74
|
+
|
|
75
|
+
3. **Data Sensitivity**:
|
|
76
|
+
- 1 - Public (no sensitive data)
|
|
77
|
+
- 2 - Internal (business data)
|
|
78
|
+
- 3 - Confidential (PII, financial)
|
|
79
|
+
- 4 - Regulated (HIPAA, PCI-DSS)
|
|
80
|
+
|
|
81
|
+
4. **Encryption**:
|
|
82
|
+
- At rest required? (yes/no)
|
|
83
|
+
- In transit required? (yes/no, default: yes)
|
|
84
|
+
|
|
85
|
+
Your answers:
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**Wait for response.**
|
|
89
|
+
|
|
90
|
+
## Category 4/5: Reliability
|
|
91
|
+
|
|
92
|
+
```markdown
|
|
93
|
+
## NFR Category 4/5: Reliability
|
|
94
|
+
|
|
95
|
+
1. **Availability Target**:
|
|
96
|
+
- 1 - 99.0% (~3.6 days downtime/year) - Internal tools
|
|
97
|
+
- 2 - 99.9% (~8.7 hours/year) - Standard apps
|
|
98
|
+
- 3 - 99.95% (~4.4 hours/year) - Business critical
|
|
99
|
+
- 4 - 99.99% (~52 min/year) - Mission critical
|
|
100
|
+
|
|
101
|
+
2. **Recovery**:
|
|
102
|
+
- RTO (time to recover): ___
|
|
103
|
+
- RPO (acceptable data loss): ___
|
|
104
|
+
|
|
105
|
+
3. **Failure Handling**:
|
|
106
|
+
- Graceful degradation needed? (yes/no)
|
|
107
|
+
- Which features can degrade?
|
|
108
|
+
|
|
109
|
+
4. **Backup**:
|
|
110
|
+
- Frequency: ___
|
|
111
|
+
- Retention period: ___
|
|
112
|
+
|
|
113
|
+
Your answers:
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**Wait for response.**
|
|
117
|
+
|
|
118
|
+
## Category 5/5: Compliance
|
|
119
|
+
|
|
120
|
+
```markdown
|
|
121
|
+
## NFR Category 5/5: Compliance
|
|
122
|
+
|
|
123
|
+
1. **Regulatory Requirements** (select all that apply):
|
|
124
|
+
- 1 - GDPR (EU data protection)
|
|
125
|
+
- 2 - HIPAA (healthcare - US)
|
|
126
|
+
- 3 - PCI-DSS (payment cards)
|
|
127
|
+
- 4 - SOC 2 (service controls)
|
|
128
|
+
- 5 - SOX (financial - US)
|
|
129
|
+
- 6 - None specific
|
|
130
|
+
- 7 - Other: ___
|
|
131
|
+
|
|
132
|
+
2. **Audit Requirements**:
|
|
133
|
+
- Audit logging needed? (yes/no)
|
|
134
|
+
- Log retention period: ___
|
|
135
|
+
- Immutable logs required? (yes/no)
|
|
136
|
+
|
|
137
|
+
3. **Data Residency**:
|
|
138
|
+
- Geographic restrictions? (yes/no)
|
|
139
|
+
- Allowed regions: ___
|
|
140
|
+
|
|
141
|
+
Your answers:
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**Wait for response.**
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# Risk Category-by-Category Review
|
|
2
|
+
|
|
3
|
+
Present risks by category for user validation. Wait for response after each category before proceeding.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Category 1/5: Technical Risks
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
## Technical Risks Review
|
|
11
|
+
|
|
12
|
+
These risks relate to technology choices, architecture, and implementation:
|
|
13
|
+
|
|
14
|
+
### RISK-T1: {Title}
|
|
15
|
+
{Full risk details as above}
|
|
16
|
+
|
|
17
|
+
### RISK-T2: {Title}
|
|
18
|
+
{Full risk details as above}
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
**Validation Questions:**
|
|
23
|
+
1. Are there other technical risks I should consider?
|
|
24
|
+
2. Are the impact/likelihood scores accurate?
|
|
25
|
+
3. Are the mitigation strategies realistic?
|
|
26
|
+
|
|
27
|
+
### Options
|
|
28
|
+
|
|
29
|
+
1 - **Approve** - Continue to next category
|
|
30
|
+
2 - **Add risk** - Identify additional technical risks
|
|
31
|
+
3 - **Revise** - Request changes to scores or mitigations
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**Wait for response, then continue to next category.**
|
|
35
|
+
|
|
36
|
+
## Category 2/5: Business Risks
|
|
37
|
+
|
|
38
|
+
```markdown
|
|
39
|
+
## Business Risks Review
|
|
40
|
+
|
|
41
|
+
These risks relate to business value, adoption, and market factors:
|
|
42
|
+
|
|
43
|
+
### RISK-B1: {Title}
|
|
44
|
+
{Full risk details}
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
**Validation Questions:**
|
|
49
|
+
1. Are there business risks I've missed?
|
|
50
|
+
2. Any concerns about the business impact scoring?
|
|
51
|
+
|
|
52
|
+
### Options
|
|
53
|
+
|
|
54
|
+
1 - **Approve** - Continue to next category
|
|
55
|
+
2 - **Add risk** - Identify additional business risks
|
|
56
|
+
3 - **Revise** - Request changes to impact scoring
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Wait for response.**
|
|
60
|
+
|
|
61
|
+
## Category 3/5: Operational Risks
|
|
62
|
+
|
|
63
|
+
```markdown
|
|
64
|
+
## Operational Risks Review
|
|
65
|
+
|
|
66
|
+
These risks relate to deployment, monitoring, and support:
|
|
67
|
+
|
|
68
|
+
### RISK-O1: {Title}
|
|
69
|
+
{Full risk details}
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
**Validation Questions:**
|
|
74
|
+
1. Are deployment/operational risks accurately captured?
|
|
75
|
+
2. Any gaps in the mitigation strategies?
|
|
76
|
+
|
|
77
|
+
### Options
|
|
78
|
+
|
|
79
|
+
1 - **Approve** - Continue to next category
|
|
80
|
+
2 - **Add risk** - Identify additional operational risks
|
|
81
|
+
3 - **Revise** - Request changes to mitigations
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Wait for response.**
|
|
85
|
+
|
|
86
|
+
## Category 4/5: External Risks
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
## External Risks Review
|
|
90
|
+
|
|
91
|
+
These risks relate to third-party dependencies and external factors:
|
|
92
|
+
|
|
93
|
+
### RISK-E1: {Title}
|
|
94
|
+
{Full risk details}
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
**Validation Questions:**
|
|
99
|
+
1. Are all third-party dependencies covered?
|
|
100
|
+
2. Any vendor-specific concerns I should add?
|
|
101
|
+
|
|
102
|
+
### Options
|
|
103
|
+
|
|
104
|
+
1 - **Approve** - Continue to next category
|
|
105
|
+
2 - **Add risk** - Identify additional external risks
|
|
106
|
+
3 - **Revise** - Request changes to vendor risks
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**Wait for response.**
|
|
110
|
+
|
|
111
|
+
## Category 5/5: Compliance Risks
|
|
112
|
+
|
|
113
|
+
```markdown
|
|
114
|
+
## Compliance Risks Review
|
|
115
|
+
|
|
116
|
+
These risks relate to regulatory, legal, and audit requirements:
|
|
117
|
+
|
|
118
|
+
### RISK-C1: {Title}
|
|
119
|
+
{Full risk details}
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
**Validation Questions:**
|
|
124
|
+
1. Are regulatory requirements fully addressed?
|
|
125
|
+
2. Any compliance gaps I've missed?
|
|
126
|
+
|
|
127
|
+
### Options
|
|
128
|
+
|
|
129
|
+
1 - **Approve** - Proceed to full risk register review
|
|
130
|
+
2 - **Add risk** - Identify additional compliance risks
|
|
131
|
+
3 - **Revise** - Request changes to regulatory coverage
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Wait for response.**
|