convoke-agents 3.2.1 → 3.3.0

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 (37) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/README.md +3 -1
  3. package/_bmad/bme/README.md +36 -0
  4. package/_bmad/bme/_enhance/workflows/initiatives-backlog/SKILL.md +1 -1
  5. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-01-init.md +55 -32
  6. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-02-gather.md +62 -59
  7. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-03-qualify.md +176 -0
  8. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-04-generate.md +259 -0
  9. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-r/step-r-01-load.md +65 -35
  10. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-r/step-r-02-rescore.md +60 -30
  11. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-r/step-r-03-update.md +67 -71
  12. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-t/step-t-01-ingest.md +12 -12
  13. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-t/step-t-02-extract.md +49 -44
  14. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-t/step-t-03-qualify.md +192 -0
  15. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-t/step-t-04-update.md +72 -67
  16. package/_bmad/bme/_enhance/workflows/initiatives-backlog/templates/backlog-format-spec.md +223 -112
  17. package/_bmad/bme/_enhance/workflows/initiatives-backlog/templates/lifecycle-process-spec.md +188 -0
  18. package/_bmad/bme/_enhance/workflows/initiatives-backlog/workflow.md +44 -31
  19. package/_bmad/bme/_gyre/config.yaml +3 -0
  20. package/_bmad/bme/_vortex/config.yaml +4 -1
  21. package/package.json +1 -1
  22. package/scripts/convoke-doctor.js +56 -2
  23. package/scripts/lib/artifact-utils.js +16 -3
  24. package/scripts/migrate-artifacts.js +3 -2
  25. package/scripts/portability/convoke-export.js +26 -5
  26. package/scripts/portability/export-engine.js +10 -8
  27. package/scripts/portability/seed-catalog-repo.js +6 -6
  28. package/scripts/portability/validate-exports.js +25 -14
  29. package/scripts/update/convoke-update.js +27 -2
  30. package/scripts/update/lib/changelog-reader.js +90 -0
  31. package/scripts/update/lib/config-merger.js +52 -1
  32. package/scripts/update/lib/refresh-installation.js +48 -9
  33. package/scripts/update/lib/taxonomy-merger.js +2 -1
  34. package/scripts/update/lib/validator.js +9 -1
  35. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-03-score.md +0 -146
  36. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-04-prioritize.md +0 -181
  37. package/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-t/step-t-03-score.md +0 -147
@@ -0,0 +1,176 @@
1
+ ---
2
+ name: 'step-c-03-qualify'
3
+ description: 'Qualifying gate for Create mode — walk gathered intakes, assign Lane + Portfolio + RICE per intake (or keep raw)'
4
+ nextStepFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-04-generate.md'
5
+ outputFile: '{planning_artifacts}/convoke-note-initiative-lifecycle-backlog.md'
6
+ templateFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/templates/rice-scoring-guide.md'
7
+ processFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/templates/lifecycle-process-spec.md'
8
+ advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.md'
9
+ partyModeWorkflow: '{project-root}/_bmad/core/workflows/bmad-party-mode/workflow.md'
10
+ ---
11
+
12
+ # Step 3: Qualifying Gate (Create Mode)
13
+
14
+ ## STEP GOAL:
15
+
16
+ Run the **qualifying gate** on each intake gathered in step-c-02. For each intake, the qualifier (Vortex, John, or Winston) assigns a **Lane** (Bug / Fast / Initiative), a **Portfolio** attachment, and an initial **RICE** score. Intakes the qualifier is not ready to route stay raw (§2.1 only).
17
+
18
+ This step mirrors step-t-03 (Triage's qualifying gate). The lifecycle rules are identical — only the invocation context differs (Create mode is bootstrapping a new file).
19
+
20
+ ## MANDATORY EXECUTION RULES (READ FIRST):
21
+
22
+ ### Universal Rules:
23
+ - 🛑 NEVER generate lane/portfolio/RICE without user input — the qualifying gate is user-driven
24
+ - 📖 CRITICAL: Read this complete step file before taking action
25
+ - 🔄 CRITICAL: When loading next step with 'C', read the entire file
26
+ - 📋 YOU ARE A QUALIFYING-GATE FACILITATOR supporting the qualifier (Vortex / John / Winston)
27
+
28
+ ### Role Reinforcement:
29
+ - ✅ You are a **qualifying gate facilitator** — propose, don't decide; the qualifier decides
30
+ - ✅ Only Vortex team, John, or Winston can qualify. Confirm the user's qualifier role.
31
+ - ✅ Propose lane/portfolio/RICE based on intake description, but flag uncertainty plainly
32
+ - ✅ Every intake ends this step in one of two states: **qualified** (lane + portfolio + RICE) or **raw intake** (logged to §2.1 only)
33
+
34
+ ### Step-Specific Rules:
35
+ - 🎯 Focus on lane assignment, portfolio attachment, and RICE scoring
36
+ - 🚫 FORBIDDEN to write to the backlog file (step-c-04's job)
37
+ - 🚫 FORBIDDEN to re-gather or add new intakes (step-c-02's job)
38
+ - 💬 Approach: walk intakes one at a time, propose + decide, track state
39
+
40
+ ## EXECUTION PROTOCOLS:
41
+ - 🎯 Follow the MANDATORY SEQUENCE exactly
42
+ - 📖 Load {templateFile} for RICE factor definitions and calibration examples
43
+ - 📖 Load {processFile} for lane definitions and portfolio taxonomy
44
+ - 💾 Track each intake's qualification decision for step-c-04
45
+
46
+ ## CONTEXT BOUNDARIES:
47
+ - Available context: `gathered_intakes` from step-c-02, RICE scoring guide, lifecycle process spec
48
+ - Focus: Qualifying gate per-intake
49
+ - Limits: Do NOT write to backlog
50
+ - Dependencies: step-c-02-gather.md (gathered intakes)
51
+
52
+ ## MANDATORY SEQUENCE
53
+
54
+ **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
55
+
56
+ ### 1. Load References
57
+
58
+ Load `{templateFile}` (rice-scoring-guide.md):
59
+ - **Factor definitions:** Reach (1-10), Impact (0.25-3), Confidence (20-100%), Effort (1-10)
60
+ - **Guided questions** for each factor
61
+ - **Composite formula:** Score = (R × I × C) / E
62
+
63
+ Load `{processFile}` (lifecycle-process-spec.md):
64
+ - **§1.3 Three Lanes** — Bug / Fast / Initiative triggers
65
+ - **§1.4 Portfolio Attachment** — current taxonomy + growth rule
66
+ - **§1.6 RICE Scoring** — lane-specific notes
67
+
68
+ ### 2. Confirm Qualifier Role
69
+
70
+ Display:
71
+
72
+ > **Qualifying Gate — Confirm Qualifier**
73
+ >
74
+ > Only three parties can qualify intakes:
75
+ > - **[V] Vortex** team (via discovery)
76
+ > - **[J] John** (PM shortcut)
77
+ > - **[W] Winston** (Architect shortcut)
78
+ >
79
+ > Who is qualifying in this session?
80
+
81
+ Record qualifier identity. If user declines, display: "Qualifying requires an authorized qualifier. Type `raw-only` to skip qualification — all intakes will stay in §2.1 without a lane." and accept role letter or `raw-only`.
82
+
83
+ ### 3. Walk Intakes One at a Time
84
+
85
+ Initialize:
86
+ - `qualified_items = []` — intakes with lane + portfolio + RICE
87
+ - `raw_intakes = []` — intakes kept as §2.1-only
88
+ - `current_index = 1`
89
+
90
+ For each intake in `gathered_intakes`:
91
+
92
+ #### 3a. Present Intake & Proposed Qualification
93
+
94
+ Display:
95
+
96
+ > **Intake [current_index] of [total]**
97
+ >
98
+ > **Description:** [description]
99
+ > **Source:** [source]
100
+ > **Date:** [date]
101
+ > **Raiser:** [raiser]
102
+ >
103
+ > **Proposed qualification:**
104
+ > - **Lane:** [proposed with rationale]
105
+ > - **Portfolio:** [proposed]
106
+ > - **RICE:** R:[r] I:[i] C:[c]% E:[e] = [score]
107
+ > *[one-line rationale]*
108
+
109
+ #### 3b. Present Per-Intake Menu
110
+
111
+ Display:
112
+
113
+ > **Review this qualification:**
114
+ >
115
+ > **Lane override:**
116
+ > - `L bug` / `L fast` / `L initiative` — Change lane
117
+ > - `L none` — Keep raw (§2.1 only)
118
+ >
119
+ > **Portfolio override:**
120
+ > - `P [item]` — Set portfolio
121
+ > - `P new [name] — [rationale]` — Propose new portfolio (logged for John+Winston review)
122
+ >
123
+ > **RICE adjustments:**
124
+ > - `R [value]` / `I [value]` / `CF [value]` / `E [value]` — Component changes
125
+ >
126
+ > **Decisions:**
127
+ > - `K` — Keep/accept
128
+ > - `RAW` — Log as raw intake only
129
+ > - `S` — Drop (won't reach backlog at all)
130
+ > - `X` — Exit qualification (remaining intakes stay raw)
131
+ >
132
+ > **[A] Advanced Elicitation** / **[P] Party Mode** / **[C] Continue**
133
+
134
+ #### Menu Handling Logic:
135
+ - Same semantics as step-t-03:
136
+ - `L bug/fast/initiative/none`, `P [item|new ...]`, `R/I/CF/E [v]`, `K`, `RAW`, `S`, `X`, `A`, `P`, `C`.
137
+ - Record adjustments, recalculate composite on RICE changes, redisplay after each action.
138
+ - On K/C (with changes): add to `qualified_items`. On RAW/L none: add to `raw_intakes`. On S: drop (logged in Change Log by step-c-04).
139
+ - On X: remaining intakes auto-moved to `raw_intakes`, go to step 4.
140
+
141
+ #### 3c. Advance
142
+ Increment `current_index`. If `<= total`, go to 3a. Otherwise step 4.
143
+
144
+ ### 4. Present Qualification Summary
145
+
146
+ Display:
147
+
148
+ > **Qualification Complete**
149
+ >
150
+ > **Qualified (will populate lanes):** [N]
151
+ > **Raw intakes (§2.1 only):** [N]
152
+ > **Dropped:** [N]
153
+ >
154
+ > **Qualified breakdown:**
155
+ > - Bug Lane: [n]
156
+ > - Fast Lane: [n]
157
+ > - Initiative Lane: [n]
158
+ >
159
+ > **Qualifier:** [Vortex / John / Winston / raw-only]
160
+ > **New portfolio proposals:** [list, or "none"]
161
+
162
+ ### 5. Present MENU OPTIONS
163
+
164
+ > **[C] Continue** — Generate backlog file (step-c-04)
165
+ > **[R] Revisit** — Walk intakes again
166
+ > **[X] Abort** — Return to T/R/C menu without writing
167
+
168
+ #### Menu Handling Logic:
169
+ - IF C: Load, read, and execute `{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-c/step-c-04-generate.md`, passing `gathered_intakes` (for §2.1 rows), `qualified_items` (for lane rows), `raw_intakes`, `dropped_items`, and qualifier identity.
170
+ - IF R: Re-enter step 3.
171
+ - IF X: Discard qualifications. Load, read, and execute `{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/workflow.md`.
172
+
173
+ ## 🚨 SYSTEM SUCCESS/FAILURE METRICS:
174
+ ### ✅ SUCCESS: Every intake qualified or routed to raw/dropped, qualifier recorded, user validated, results passed to step-c-04
175
+ ### ❌ SYSTEM FAILURE: Qualification without authorized qualifier, lane assigned without RICE, intakes lost between steps, step-c-04 invoked with missing data
176
+ **Master Rule:** Skipping steps is FORBIDDEN.
@@ -0,0 +1,259 @@
1
+ ---
2
+ name: 'step-c-04-generate'
3
+ description: 'Generate the complete lifecycle backlog file — frontmatter, Part 1 verbatim from process spec, Part 2 lanes populated from qualified + raw intakes, Appendix, Change Log'
4
+ outputFile: '{planning_artifacts}/convoke-note-initiative-lifecycle-backlog.md'
5
+ templateFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/templates/backlog-format-spec.md'
6
+ processFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/templates/lifecycle-process-spec.md'
7
+ workflowFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/workflow.md'
8
+ ---
9
+
10
+ # Step 4: Backlog Generation & Completion
11
+
12
+ ## STEP GOAL:
13
+
14
+ Generate the complete lifecycle backlog file from scratch:
15
+ - **Frontmatter** with correct artifact governance metadata
16
+ - **Part 1: Lifecycle Process** copied verbatim from `lifecycle-process-spec.md`
17
+ - **Part 2: Backlog** with §2.1 Intakes populated from all gathered intakes, and §2.2/2.3/2.4 populated from qualified items (if any). §2.5 Absorbed/Archived starts empty.
18
+ - **Appendix: Initiative Details** (empty placeholder or populated for Initiative Lane items with detail)
19
+ - **Change Log** with the creation entry
20
+
21
+ Present a completion summary and return to the T/R/C menu.
22
+
23
+ ## MANDATORY EXECUTION RULES (READ FIRST):
24
+
25
+ ### Universal Rules:
26
+ - 🛑 NEVER generate content without completing all mandatory sequence steps
27
+ - 📖 CRITICAL: Read this complete step file before taking action
28
+ - 🔄 CRITICAL: When returning to menu, read the entire workflow file
29
+ - 📋 YOU ARE A BACKLOG OPERATIONS SPECIALIST generating a new file
30
+
31
+ ### Role Reinforcement:
32
+ - ✅ You are a **backlog operations specialist** — precise, structured, format-compliant
33
+ - ✅ Part 1 is **verbatim** from `{processFile}` — do not paraphrase, summarize, or edit
34
+ - ✅ All output must be standard markdown — no HTML, no proprietary syntax
35
+ - ✅ Every intake logged, every qualified item in its lane, every decision traceable in the Change Log
36
+
37
+ ### Step-Specific Rules:
38
+ - 🎯 Focus on file generation, verbatim Part 1 emission, correct lane population, completion reporting
39
+ - 🚫 FORBIDDEN to re-qualify items (step-c-03's job)
40
+ - 🚫 FORBIDDEN to paraphrase or modify Part 1 content — emit the `lifecycle-process-spec.md` text verbatim
41
+ - 🚫 FORBIDDEN to add items not in the gathered_intakes / qualified_items lists
42
+ - 💬 Approach: assemble the complete file, verify structure, write, summarize, return to menu
43
+
44
+ ## EXECUTION PROTOCOLS:
45
+ - 🎯 Follow the MANDATORY SEQUENCE exactly
46
+ - 📖 Load `{templateFile}` (backlog-format-spec.md) for exact structural requirements and table formats
47
+ - 📖 Load `{processFile}` (lifecycle-process-spec.md) for the verbatim Part 1 text
48
+ - 💾 Write to `{outputFile}` as a complete new file
49
+
50
+ ## CONTEXT BOUNDARIES:
51
+ - Available context: `gathered_intakes`, `qualified_items`, `raw_intakes`, `dropped_items`, qualifier identity, templates (format spec + process spec)
52
+ - Focus: File generation, completion summary
53
+ - Limits: Do NOT re-qualify or re-gather items
54
+ - Dependencies: step-c-02 (gathered intakes) and step-c-03 (qualified items). Empty-create path from step-c-01 is valid — both lists may be empty.
55
+
56
+ ## MANDATORY SEQUENCE
57
+
58
+ **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
59
+
60
+ ### 1. Load Templates (If Not Already Loaded)
61
+
62
+ Ensure `{templateFile}` (backlog-format-spec.md) and `{processFile}` (lifecycle-process-spec.md) are loaded.
63
+
64
+ Identify in `{processFile}` the **verbatim Part 1 text**: everything after the `---` separator line, starting with `## Part 1: Lifecycle Process` through the end of §1.6.
65
+
66
+ ### 2. Generate Frontmatter
67
+
68
+ ```yaml
69
+ ---
70
+ initiative: convoke
71
+ artifact_type: note
72
+ qualifier: initiative-lifecycle-backlog
73
+ created: 'YYYY-MM-DD'
74
+ schema_version: 1
75
+ status: draft
76
+ origin: 'Create mode ([qualifier identity or raw-only], [date])'
77
+ supersedes: convoke-note-initiatives-backlog.md
78
+ ---
79
+ ```
80
+
81
+ `created` = current session date.
82
+
83
+ ### 3. Generate Title
84
+
85
+ ```markdown
86
+ # Convoke Initiative Lifecycle & Backlog
87
+
88
+ **Created:** [current session date]
89
+ **Origin:** Create mode ([qualifier identity])
90
+ **Status:** Draft (initial creation)
91
+ ```
92
+
93
+ ### 4. Emit Part 1 Verbatim
94
+
95
+ Copy the Part 1 text from `{processFile}` verbatim into the new file. This includes:
96
+
97
+ - `## Part 1: Lifecycle Process` heading
98
+ - `### 1.1 Intake`
99
+ - `### 1.2 Qualifying Gate`
100
+ - `### 1.3 Three Lanes` (with H4 subsections: Bug Lane, Fast Lane, Initiative Lane)
101
+ - `### 1.4 Portfolio Attachment`
102
+ - `### 1.5 Pipeline Stages (Evolvable)`
103
+ - `### 1.6 RICE Scoring`
104
+
105
+ **Do not paraphrase, summarize, reorder, or edit.** If any edit is desired, it must be made in `lifecycle-process-spec.md` first and migrated downstream.
106
+
107
+ ### 5. Generate Part 2 Structure
108
+
109
+ Emit `## Part 2: Backlog` with all five H3 sections:
110
+
111
+ #### §2.1 Intakes (Unqualified)
112
+
113
+ Emit the 5-column table header:
114
+
115
+ ```markdown
116
+ | ID | Description | Source | Date | Raiser |
117
+ |----|-------------|--------|------|--------|
118
+ ```
119
+
120
+ For each intake in `gathered_intakes` (whether qualified, raw, or dropped):
121
+ - `ID`: `IN-{n}` sequential starting at 1.
122
+ - `Description`: the intake description. For qualified items, append ` → [laneID]` to cross-reference the lane row. For dropped items, prefix `[DROPPED]`.
123
+ - `Source`: from gathered data.
124
+ - `Date`: from gathered data.
125
+ - `Raiser`: from gathered data.
126
+
127
+ **Empty-create path:** If no intakes were gathered, emit the table header only (no rows).
128
+
129
+ #### §2.2 Bug Lane
130
+
131
+ Emit the 10-column table header:
132
+
133
+ ```markdown
134
+ | ID | Description | R | I | C | E | Score | Portfolio | Status | Linked Follow-up |
135
+ |----|-------------|---|---|---|---|-------|-----------|--------|------------------|
136
+ ```
137
+
138
+ For each qualified item with Lane = Bug:
139
+ - `ID`: `BUG-{n}` sequential.
140
+ - All columns per format spec.
141
+ - `Status`: `Open`.
142
+ - Sort table by composite Score descending.
143
+
144
+ If zero Bug items: emit header only with a line `*(none)*` below.
145
+
146
+ #### §2.3 Fast Lane (Quick Wins + Spikes)
147
+
148
+ Emit the 9-column table header:
149
+
150
+ ```markdown
151
+ | ID | Description | R | I | C | E | Score | Portfolio | Status |
152
+ |----|-------------|---|---|---|---|-------|-----------|--------|
153
+ ```
154
+
155
+ For each qualified item with Lane = Fast:
156
+ - `ID`: alpha-prefix sequential. Propose `Q-{n}` if uncertain about a domain prefix; user can rename later.
157
+ - `Status`: `Backlog`.
158
+ - Sort by composite Score descending.
159
+
160
+ If zero: `*(none)*`.
161
+
162
+ #### §2.4 Initiative Lane
163
+
164
+ Emit the 10-column table header:
165
+
166
+ ```markdown
167
+ | ID | Description | R | I | C | E | Score | Portfolio | Stage | Artifacts |
168
+ |----|-------------|---|---|---|---|-------|-----------|-------|-----------|
169
+ ```
170
+
171
+ For each qualified item with Lane = Initiative:
172
+ - `ID`: alpha-prefix sequential.
173
+ - `Stage`: `Qualified`.
174
+ - `Artifacts`: `—` (no planning artifacts yet).
175
+ - Sort by composite Score descending.
176
+
177
+ If zero: `*(none)*`.
178
+
179
+ #### §2.5 Absorbed / Archived
180
+
181
+ Emit the section heading and an empty state:
182
+
183
+ ```markdown
184
+ ### 2.5 Absorbed / Archived
185
+
186
+ *No absorbed or archived items yet.*
187
+ ```
188
+
189
+ ### 6. Generate Appendix
190
+
191
+ ```markdown
192
+ ## Appendix: Initiative Details
193
+
194
+ *Full descriptions for §2.4 items whose table row is a one-liner. Populated as initiatives enter the pipeline and require detail.*
195
+ ```
196
+
197
+ If any Initiative Lane item warrants detail (has substantial scope notes from gathering), emit an H3 subsection per format spec.
198
+
199
+ ### 7. Generate Change Log
200
+
201
+ ```markdown
202
+ ## Change Log
203
+
204
+ | Date | Change |
205
+ |------|--------|
206
+ | [YYYY-MM-DD] | Create: Bootstrapped new lifecycle backlog. Intakes: [N] logged. Qualified: [X] (Bug: a, Fast: b, Initiative: c). Raw intakes: [Y]. Dropped: [Z]. Qualifier: [identity]. [Portfolio proposals: list, if any.] |
207
+ ```
208
+
209
+ ### 8. Write Complete File
210
+
211
+ Write the assembled backlog to `{outputFile}`. The file must contain, in order:
212
+ 1. Frontmatter
213
+ 2. H1 title + metadata paragraph
214
+ 3. `## Part 1: Lifecycle Process` (verbatim from process spec)
215
+ 4. `## Part 2: Backlog` with §2.1 through §2.5
216
+ 5. `## Appendix: Initiative Details`
217
+ 6. `## Change Log`
218
+
219
+ ### 9. Post-Write Validation
220
+
221
+ Re-load the written file and validate:
222
+ - All H2 anchors present in correct order
223
+ - All H3 Part 2 anchors present (§2.1 through §2.5)
224
+ - Table column counts match spec
225
+ - Frontmatter parses
226
+
227
+ If validation fails, display the failure and prompt to retry or abort.
228
+
229
+ ### 10. Completion Summary & Return to Menu
230
+
231
+ After successful write + validation, display:
232
+
233
+ > **Create Complete — Lifecycle Backlog Bootstrapped**
234
+ >
235
+ > **File:** `{outputFile}`
236
+ > **Intakes logged:** [N]
237
+ > **Qualified into lanes:** [X]
238
+ > - Bug Lane: [n]
239
+ > - Fast Lane: [n]
240
+ > - Initiative Lane: [n]
241
+ > **Raw intakes (awaiting later qualification):** [Y]
242
+ > **Dropped (logged in §2.1 with [DROPPED] prefix):** [Z]
243
+ > **Qualifier:** [identity]
244
+ >
245
+ > **Next steps:**
246
+ > - Use **Triage (T)** to add new intakes from future findings.
247
+ > - Use **Review (R)** to rescore lane items as context evolves.
248
+ > - Unqualified intakes in §2.1 can be qualified later via a fresh Triage run or manual edit.
249
+
250
+ Then return to the T/R/C menu:
251
+
252
+ > Loading `{workflowFile}` to return to mode selection...
253
+
254
+ Load, read the entire file, and execute `{workflowFile}`.
255
+
256
+ ## 🚨 SYSTEM SUCCESS/FAILURE METRICS:
257
+ ### ✅ SUCCESS: Complete file generated with correct frontmatter, verbatim Part 1 from process spec, all five §2.x H3 sections present with correct column counts, intakes logged with cross-references to lanes, qualified items placed in correct lanes and sorted by RICE, Appendix and Change Log present, post-write validation passes, completion summary displayed, menu re-presented
258
+ ### ❌ SYSTEM FAILURE: Part 1 paraphrased or modified, missing H3 sections, wrong column counts, intakes not cross-referenced to qualified lane items, items placed in wrong lane, file not validated after write, no completion summary, no return to menu
259
+ **Master Rule:** Skipping steps is FORBIDDEN.
@@ -1,17 +1,17 @@
1
1
  ---
2
2
  name: 'step-r-01-load'
3
- description: 'Load existing backlog and RICE scoring guide for Review mode walkthrough'
3
+ description: 'Load existing lifecycle backlog, let user choose which lane(s) to walk, and prepare item list for rescoring'
4
4
  nextStepFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-r/step-r-02-rescore.md'
5
- outputFile: '{planning_artifacts}/initiatives-backlog.md'
5
+ outputFile: '{planning_artifacts}/convoke-note-initiative-lifecycle-backlog.md'
6
6
  templateFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/templates/rice-scoring-guide.md'
7
7
  workflowFile: '{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/workflow.md'
8
8
  ---
9
9
 
10
- # Step 1: Load Backlog & Walkthrough Setup
10
+ # Step 1: Load Backlog & Choose Lanes
11
11
 
12
12
  ## STEP GOAL:
13
13
 
14
- Load the existing backlog file and RICE scoring guide, parse all active items with their current scores and provenance, and prepare for the per-item walkthrough.
14
+ Load the existing lifecycle backlog file and RICE scoring guide, parse items from all three lanes (Bug / Fast / Initiative), and let the user choose which lane(s) to walk for rescoring in step-r-02.
15
15
 
16
16
  ## MANDATORY EXECUTION RULES (READ FIRST):
17
17
 
@@ -24,14 +24,15 @@ Load the existing backlog file and RICE scoring guide, parse all active items wi
24
24
  ### Role Reinforcement:
25
25
  - ✅ You are a **review analyst** — your job is to load and prepare data, not to modify it
26
26
  - ✅ Parse the backlog faithfully — do not reinterpret, reorder, or filter items
27
- - ✅ The walkthrough starts in step-r-02 — this step only loads and counts
27
+ - ✅ The walkthrough starts in step-r-02 — this step only loads, counts, and lets the user choose scope
28
28
 
29
29
  ### Step-Specific Rules:
30
- - 🎯 Focus ONLY on loading, parsing, and counting backlog items
30
+ - 🎯 Focus ONLY on loading, parsing, counting, and lane scope selection
31
31
  - 🚫 FORBIDDEN to rescore, modify, or delete any backlog items (that is step-r-02's job)
32
32
  - 🚫 FORBIDDEN to write to the backlog file (that is step-r-03's job)
33
33
  - 🚫 FORBIDDEN to add new items (that is Triage mode's job)
34
- - 💬 Approach: load efficiently, confirm readiness, move on
34
+ - 🚫 FORBIDDEN to read or parse items from §2.1 Intakes or §2.5 Absorbed — Review only walks lane items (§2.2/2.3/2.4)
35
+ - 💬 Approach: load efficiently, summarize lanes, let user choose scope, move on
35
36
 
36
37
  ## EXECUTION PROTOCOLS:
37
38
  - 🎯 Follow the MANDATORY SEQUENCE exactly
@@ -40,7 +41,7 @@ Load the existing backlog file and RICE scoring guide, parse all active items wi
40
41
 
41
42
  ## CONTEXT BOUNDARIES:
42
43
  - Available context: Existing backlog file, RICE scoring guide template
43
- - Focus: Data loading and preparation only
44
+ - Focus: Data loading, lane summary, scope selection
44
45
  - Limits: Do NOT modify, score, or write anything
45
46
  - Dependencies: workflow.md R dispatch (Review mode selected)
46
47
 
@@ -54,9 +55,9 @@ Check if a backlog file exists at `{outputFile}`.
54
55
 
55
56
  - **If NOT found:** Display:
56
57
 
57
- > **No backlog found at `{outputFile}`.**
58
+ > **No lifecycle backlog found at `{outputFile}`.**
58
59
  >
59
- > Review mode requires an existing backlog to walk through. Use **Triage (T)** or **Create (C)** mode first to create one.
60
+ > Review mode requires an existing backlog to walk through. Use **Create (C)** mode first to bootstrap one, or **Triage (T)** if a backlog exists at a different path.
60
61
  >
61
62
  > Returning to mode selection...
62
63
 
@@ -74,47 +75,76 @@ Load `{templateFile}` (rice-scoring-guide.md) and internalize:
74
75
  - **Factor definitions:** Reach (1-10), Impact (0.25-3), Confidence (20-100%), Effort (1-10)
75
76
  - **Guided questions** for each factor
76
77
  - **Calibration examples** from the existing backlog
77
- - **Composite formula:** Score = (R x I x C) / E, where C is decimal (e.g., 70% = 0.7)
78
+ - **Composite formula:** Score = (R × I × C) / E, where C is decimal (e.g., 70% = 0.7)
78
79
  - **Score rounding:** One decimal place for display
80
+ - **Lane-specific scoring notes:** Bug impact often hardcoded high; Fast Lane effort typically 1-3; Initiative effort reflects pipeline + execution
79
81
 
80
- ### 3. Parse Active Backlog Items
82
+ ### 3. Parse Lane Items
81
83
 
82
- Parse all category tables **under `## Backlog`** to collect items with:
83
- - Item ID (e.g., D2, P4)
84
- - Title and description
85
- - Category (H3 heading name)
86
- - Current RICE component scores (R, I, C, E)
87
- - Current composite score
88
- - Current provenance (from Initiative description cell)
89
- - Current status
84
+ Parse tables from lane sections:
90
85
 
91
- **Do NOT include** items from `## Exploration Candidates`, `## Completed`, or other sections outside `## Backlog`.
86
+ - **§2.2 Bug Lane** 10 columns: ID, Description, R, I, C, E, Score, Portfolio, Status, Linked Follow-up.
87
+ - **§2.3 Fast Lane** — 9 columns: ID, Description, R, I, C, E, Score, Portfolio, Status.
88
+ - **§2.4 Initiative Lane** — 10 columns: ID, Description, R, I, C, E, Score, Portfolio, Stage, Artifacts.
89
+
90
+ **Do NOT include** items from:
91
+ - §2.1 Intakes (unqualified — no RICE)
92
+ - §2.5 Absorbed / Archived (removed from active)
93
+ - Any section outside `## Part 2: Backlog`
92
94
 
93
95
  ### 4. Count and Summarize
94
96
 
95
- Count the total number of active items collected. Display:
97
+ Display a lane summary:
96
98
 
97
99
  > **Review Mode — Backlog Loaded**
98
100
  >
99
- > **Items found:** [N] active items across [M] categories
100
- > **Categories:** [list category names]
101
- > **Score range:** [lowest] to [highest]
101
+ > | Lane | Items | Score range |
102
+ > |------|-------|-------------|
103
+ > | §2.2 Bug Lane | [n] | [low]–[high] |
104
+ > | §2.3 Fast Lane | [n] | [low]–[high] |
105
+ > | §2.4 Initiative Lane | [n] | [low]–[high] |
106
+ > | **Total** | **[N]** | |
102
107
  >
103
- > The walkthrough will present each item one at a time for review. You can rescore, confirm, skip, or exit early at any point.
108
+ > *Rescoring applies to these lane items only. Intakes (§2.1) have no RICE and are not included in Review.*
109
+
110
+ ### 5. Present Lane Selection Menu
104
111
 
105
- ### 5. Present MENU OPTIONS
112
+ Display:
106
113
 
107
- Display: "**Select:** [C] Continue to item walkthrough"
114
+ > **Select lane(s) to walk:**
115
+ >
116
+ > - **[B] Bug Lane only** — [n] items
117
+ > - **[F] Fast Lane only** — [n] items
118
+ > - **[I] Initiative Lane only** — [n] items
119
+ > - **[A] All lanes** — [N] items (walk in order Bug → Fast → Initiative)
120
+ > - **[T] Top N by score** — walk top N items across all lanes (prompt for N)
121
+ > - **[X] Exit** — return to mode selection
108
122
 
109
123
  #### Menu Handling Logic:
110
- - IF C: Load, read the entire file, and execute `{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-r/step-r-02-rescore.md`
111
- - IF any other input: Display "Enter **C** to continue to the walkthrough." then redisplay menu
112
124
 
113
- #### EXECUTION RULES:
114
- - ALWAYS halt and wait for user input after presenting the menu
115
- - ONLY proceed to next step when user selects 'C'
125
+ - IF B: Set walk scope to Bug Lane items only.
126
+ - IF F: Set walk scope to Fast Lane items only.
127
+ - IF I: Set walk scope to Initiative Lane items only.
128
+ - IF A: Set walk scope to all lane items in order Bug → Fast → Initiative.
129
+ - IF T: Prompt "How many top-ranked items?". Accept integer N ≥ 1. Set walk scope to top N items ranked by composite score descending (tiebreak: Confidence, then lane priority Bug > Initiative > Fast).
130
+ - IF X: Display "Exiting Review mode." then load, read, and execute `{workflowFile}`.
131
+ - IF any other input: Display "Unknown option. Use B / F / I / A / T / X." then redisplay menu.
132
+
133
+ ### 6. Confirm Scope & Advance
134
+
135
+ After scope selection, display:
136
+
137
+ > **Walkthrough scope:** [description, e.g., "Fast Lane — 65 items"]
138
+ >
139
+ > **[C] Continue to walkthrough**
140
+ > **[R] Re-select scope**
141
+ > **[X] Exit**
142
+
143
+ - IF C: Pass `walk_scope` (ordered list of items with full data) to step-r-02. Load, read the entire file, and execute `{project-root}/_bmad/bme/_enhance/workflows/initiatives-backlog/steps-r/step-r-02-rescore.md`.
144
+ - IF R: Go back to step 5.
145
+ - IF X: Load, read, and execute `{workflowFile}`.
116
146
 
117
147
  ## 🚨 SYSTEM SUCCESS/FAILURE METRICS:
118
- ### ✅ SUCCESS: Backlog file loaded, RICE guide internalized, all active items parsed with scores and provenance, item count displayed, proceeding to step-r-02
119
- ### ❌ SYSTEM FAILURE: Backlog not loaded, items from wrong sections included, items modified or filtered, scoring guide not loaded, missing backlog not handled gracefully
148
+ ### ✅ SUCCESS: Backlog file loaded, RICE guide internalized, lane items parsed from §2.2/2.3/2.4 only, lane summary displayed, user chose scope, scope list passed to step-r-02
149
+ ### ❌ SYSTEM FAILURE: Backlog not loaded, items from wrong sections included (Intakes / Absorbed), lanes not distinguished, scope selection skipped, missing backlog not handled gracefully
120
150
  **Master Rule:** Skipping steps is FORBIDDEN.