bmad-module-skill-forge 0.6.0 → 0.7.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 (136) hide show
  1. package/README.md +2 -2
  2. package/docs/agents.md +9 -5
  3. package/docs/concepts.md +17 -13
  4. package/docs/examples.md +19 -4
  5. package/docs/getting-started.md +34 -19
  6. package/docs/how-it-works.md +85 -84
  7. package/docs/index.md +1 -1
  8. package/docs/workflows.md +88 -40
  9. package/package.json +1 -1
  10. package/src/agents/forger.agent.yaml +17 -5
  11. package/src/forger/README.md +1 -1
  12. package/src/forger/forge-tier.yaml +2 -1
  13. package/src/forger/preferences.yaml +5 -7
  14. package/src/knowledge/agentskills-spec.md +1 -1
  15. package/src/knowledge/architecture-verification.md +102 -0
  16. package/src/knowledge/ccc-bridge.md +1 -1
  17. package/src/knowledge/confidence-tiers.md +12 -1
  18. package/src/knowledge/doc-fetcher.md +1 -1
  19. package/src/knowledge/manual-section-integrity.md +2 -2
  20. package/src/knowledge/overview.md +10 -7
  21. package/src/knowledge/progressive-capability.md +3 -2
  22. package/src/knowledge/qmd-registry.md +4 -1
  23. package/src/knowledge/skf-knowledge-index.csv +1 -0
  24. package/src/knowledge/skill-lifecycle.md +26 -2
  25. package/src/knowledge/split-body-strategy.md +16 -2
  26. package/src/knowledge/zero-hallucination.md +11 -8
  27. package/src/module-help.csv +9 -6
  28. package/src/module.yaml +3 -0
  29. package/src/workflows/README.md +35 -17
  30. package/src/workflows/analyze-source/data/skill-brief-schema.md +18 -5
  31. package/src/workflows/analyze-source/steps-c/step-01-init.md +2 -2
  32. package/src/workflows/analyze-source/steps-c/step-01b-continue.md +1 -1
  33. package/src/workflows/analyze-source/steps-c/step-02-scan-project.md +1 -1
  34. package/src/workflows/analyze-source/steps-c/step-03-identify-units.md +1 -1
  35. package/src/workflows/analyze-source/steps-c/step-04-map-and-detect.md +1 -1
  36. package/src/workflows/analyze-source/steps-c/step-05-recommend.md +1 -1
  37. package/src/workflows/analyze-source/steps-c/step-06-generate-briefs.md +2 -2
  38. package/src/workflows/analyze-source/workflow.md +2 -2
  39. package/src/workflows/audit-skill/data/severity-rules.md +1 -1
  40. package/src/workflows/audit-skill/steps-c/step-01-init.md +1 -0
  41. package/src/workflows/audit-skill/steps-c/step-02-re-index.md +5 -0
  42. package/src/workflows/audit-skill/steps-c/step-04-semantic-diff.md +1 -1
  43. package/src/workflows/audit-skill/workflow.md +2 -1
  44. package/src/workflows/brief-skill/data/scope-templates.md +10 -0
  45. package/src/workflows/brief-skill/data/skill-brief-schema.md +25 -23
  46. package/src/workflows/brief-skill/steps-c/step-01-gather-intent.md +1 -1
  47. package/src/workflows/brief-skill/steps-c/step-05-write-brief.md +3 -0
  48. package/src/workflows/create-skill/data/skill-sections.md +12 -11
  49. package/src/workflows/create-skill/data/source-resolution-protocols.md +1 -1
  50. package/src/workflows/create-skill/steps-c/step-01-load-brief.md +13 -9
  51. package/src/workflows/create-skill/steps-c/step-03-extract.md +15 -19
  52. package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +3 -3
  53. package/src/workflows/create-skill/steps-c/step-03c-fetch-docs.md +3 -1
  54. package/src/workflows/create-skill/steps-c/step-04-enrich.md +1 -1
  55. package/src/workflows/create-skill/steps-c/step-05-compile.md +4 -3
  56. package/src/workflows/create-skill/steps-c/step-06-validate.md +2 -2
  57. package/src/workflows/create-skill/steps-c/step-07-generate-artifacts.md +33 -44
  58. package/src/workflows/create-skill/steps-c/step-08-report.md +25 -11
  59. package/src/workflows/create-skill/workflow.md +2 -2
  60. package/src/workflows/create-stack-skill/data/compose-mode-rules.md +65 -0
  61. package/src/workflows/create-stack-skill/data/stack-skill-template.md +28 -6
  62. package/src/workflows/create-stack-skill/steps-c/step-01-init.md +23 -7
  63. package/src/workflows/create-stack-skill/steps-c/step-02-detect-manifests.md +35 -2
  64. package/src/workflows/create-stack-skill/steps-c/step-03-rank-and-confirm.md +26 -2
  65. package/src/workflows/create-stack-skill/steps-c/step-04-parallel-extract.md +24 -0
  66. package/src/workflows/create-stack-skill/steps-c/step-05-detect-integrations.md +30 -2
  67. package/src/workflows/create-stack-skill/steps-c/step-06-compile-stack.md +5 -1
  68. package/src/workflows/create-stack-skill/steps-c/step-07-generate-output.md +53 -5
  69. package/src/workflows/create-stack-skill/steps-c/step-08-validate.md +3 -3
  70. package/src/workflows/create-stack-skill/steps-c/step-09-report.md +8 -2
  71. package/src/workflows/create-stack-skill/workflow.md +2 -2
  72. package/src/workflows/export-skill/data/managed-section-format.md +8 -1
  73. package/src/workflows/export-skill/data/snippet-format.md +1 -1
  74. package/src/workflows/export-skill/steps-c/step-04-update-context.md +7 -2
  75. package/src/workflows/export-skill/steps-c/step-05-token-report.md +1 -1
  76. package/src/workflows/export-skill/workflow.md +3 -1
  77. package/src/workflows/quick-skill/data/skill-template.md +18 -6
  78. package/src/workflows/quick-skill/steps-c/step-04-compile.md +26 -6
  79. package/src/workflows/quick-skill/steps-c/step-05-validate.md +1 -1
  80. package/src/workflows/quick-skill/steps-c/step-06-write.md +3 -0
  81. package/src/workflows/quick-skill/workflow.md +1 -1
  82. package/src/workflows/refine-architecture/data/refinement-rules.md +102 -0
  83. package/src/workflows/refine-architecture/steps-c/step-01-init.md +188 -0
  84. package/src/workflows/refine-architecture/steps-c/step-02-gap-analysis.md +179 -0
  85. package/src/workflows/refine-architecture/steps-c/step-03-issue-detection.md +182 -0
  86. package/src/workflows/refine-architecture/steps-c/step-04-improvements.md +169 -0
  87. package/src/workflows/refine-architecture/steps-c/step-05-compile.md +200 -0
  88. package/src/workflows/refine-architecture/steps-c/step-06-report.md +147 -0
  89. package/src/workflows/refine-architecture/workflow.md +61 -0
  90. package/src/workflows/setup-forge/steps-c/step-01-detect-and-tier.md +2 -1
  91. package/src/workflows/setup-forge/steps-c/step-01b-ccc-index.md +1 -1
  92. package/src/workflows/setup-forge/steps-c/step-02-write-config.md +15 -16
  93. package/src/workflows/setup-forge/steps-c/step-03-auto-index.md +1 -1
  94. package/src/workflows/setup-forge/steps-c/step-04-report.md +2 -2
  95. package/src/workflows/setup-forge/workflow.md +3 -2
  96. package/src/workflows/test-skill/data/scoring-rules.md +3 -0
  97. package/src/workflows/test-skill/data/source-access-protocol.md +1 -1
  98. package/src/workflows/test-skill/steps-c/step-01-init.md +1 -0
  99. package/src/workflows/test-skill/steps-c/step-02-detect-mode.md +2 -0
  100. package/src/workflows/test-skill/workflow.md +2 -2
  101. package/src/workflows/update-skill/steps-c/step-02-detect-changes.md +2 -2
  102. package/src/workflows/update-skill/steps-c/step-03-re-extract.md +5 -2
  103. package/src/workflows/update-skill/steps-c/step-05-validate.md +7 -11
  104. package/src/workflows/update-skill/steps-c/step-06-write.md +5 -2
  105. package/src/workflows/update-skill/workflow.md +1 -1
  106. package/src/workflows/verify-stack/data/coverage-patterns.md +45 -0
  107. package/src/workflows/verify-stack/data/feasibility-report-template.md +63 -0
  108. package/src/workflows/verify-stack/data/integration-verification-rules.md +73 -0
  109. package/src/workflows/verify-stack/steps-c/step-01-init.md +174 -0
  110. package/src/workflows/verify-stack/steps-c/step-02-coverage.md +181 -0
  111. package/src/workflows/verify-stack/steps-c/step-03-integrations.md +195 -0
  112. package/src/workflows/verify-stack/steps-c/step-04-requirements.md +168 -0
  113. package/src/workflows/verify-stack/steps-c/step-05-synthesize.md +191 -0
  114. package/src/workflows/verify-stack/steps-c/step-06-report.md +197 -0
  115. package/src/workflows/verify-stack/workflow.md +61 -0
  116. package/src/workflows/analyze-source/validation-report.md +0 -657
  117. package/src/workflows/analyze-source/workflow-plan-analyze-source.md +0 -385
  118. package/src/workflows/audit-skill/validation-report.md +0 -545
  119. package/src/workflows/audit-skill/workflow-plan-audit-skill.md +0 -318
  120. package/src/workflows/brief-skill/validation-report.md +0 -630
  121. package/src/workflows/brief-skill/workflow-plan-brief-skill.md +0 -360
  122. package/src/workflows/create-skill/validation-report.md +0 -189
  123. package/src/workflows/create-skill/workflow-plan-create-skill.md +0 -525
  124. package/src/workflows/create-stack-skill/validation-report.md +0 -401
  125. package/src/workflows/create-stack-skill/workflow-plan-create-stack-skill.md +0 -481
  126. package/src/workflows/export-skill/validation-report.md +0 -263
  127. package/src/workflows/export-skill/workflow-plan-export-skill.md +0 -369
  128. package/src/workflows/quick-skill/validation-report.md +0 -543
  129. package/src/workflows/quick-skill/workflow-plan-quick-skill.md +0 -405
  130. package/src/workflows/setup-forge/validation-report.md +0 -504
  131. package/src/workflows/setup-forge/workflow-plan-setup-forge.md +0 -430
  132. package/src/workflows/test-skill/validation-report.md +0 -390
  133. package/src/workflows/test-skill/workflow-plan-test-skill.md +0 -292
  134. package/src/workflows/update-skill/data/tier-degradation-rules.md +0 -46
  135. package/src/workflows/update-skill/validation-report.md +0 -559
  136. package/src/workflows/update-skill/workflow-plan-update-skill.md +0 -441
@@ -1,46 +0,0 @@
1
- # Tier Degradation Rules
2
-
3
- ## Remote Source at Forge/Deep Tier
4
-
5
- When `source_repo` is a remote URL (GitHub URL or owner/repo format) and the tier is Forge or Deep:
6
-
7
- - **ast-grep requires local files** — it cannot operate on remote URLs
8
-
9
- **Ephemeral clone strategy (preferred):**
10
-
11
- 1. Check `git` availability (`git --version`). `git` is effectively guaranteed at Deep tier (via `gh` dependency) but NOT guaranteed at Forge tier.
12
- 2. If `git` is available: perform an ephemeral shallow clone to a system temp path (`{system_temp}/skf-ephemeral-{skill-name}-{timestamp}/`).
13
- 3. For create-skill: use `--depth 1 --single-branch --filter=blob:none`; if `include_patterns` are specified, apply mode selection: if `exclude_patterns` are absent, use cone mode (convert include_patterns to directory roots; use `--skip-checks` for individual file paths); if `exclude_patterns` are present, use `--no-cone` mode (pass gitignore-style patterns with `!`-prefixed excludes — includes first, then negations). See source-resolution-protocols.md for the full conversion rules.
14
- 4. For update-skill: use sparse-checkout with `--skip-checks` scoped to the changed files from the change manifest only (file paths require `--skip-checks`). No `--branch` flag — uses the remote default branch (must match the branch used during original create-skill run).
15
- 5. If clone succeeds: use the local clone path for AST extraction. All results are T1 with `[AST:...]` citations.
16
- 6. Cleanup: delete the temp directory after extraction inventory is built and all data is in context. The clone never persists beyond the extraction step.
17
-
18
- **Fallback (clone fails or `git` unavailable):**
19
-
20
- - The extraction step MUST warn the user explicitly before degrading
21
- - **create-skill:** Warning must include actionable guidance — clone locally and update `source_repo` in the brief to the local path
22
- - **update-skill:** Warning must include actionable guidance — clone locally, re-run [CS] Create Skill with the local path to regenerate provenance data, then re-run the update
23
- - Extraction proceeds using Quick tier strategy (source reading via gh_bridge)
24
- - All results labeled T1-low with `[SRC:...]` citations
25
- - The degradation reason is recorded in the evidence report
26
-
27
- Silent degradation is **forbidden**. The user must always know when AST extraction was skipped and why.
28
-
29
- ## AST Tool Unavailable at Forge/Deep Tier
30
-
31
- When the tier is Forge or Deep but ast-grep is not functional:
32
-
33
- - The extraction step MUST warn the user explicitly before degrading
34
- - Warning must include actionable guidance: run [SF] Setup Forge to detect tools
35
- - Extraction proceeds using Quick tier strategy
36
- - All results labeled T1-low
37
- - The degradation reason is recorded in the evidence report
38
-
39
- ## Per-File AST Failure
40
-
41
- When ast-grep fails on an individual file (parse error, unsupported syntax):
42
-
43
- - Fall back to source reading for **that file only**
44
- - Other files continue with AST extraction
45
- - The affected file's results are labeled T1-low; unaffected files retain T1
46
- - Log a warning noting which file degraded and why
@@ -1,559 +0,0 @@
1
- ---
2
- validationDate: 2026-02-27
3
- workflowName: update-skill
4
- workflowPath: _bmad-output/bmb-creations/workflows/update-skill
5
- validationStatus: COMPLETE
6
- completionDate: 2026-02-27
7
- ---
8
-
9
- # Validation Report: update-skill
10
-
11
- **Validation Started:** 2026-02-27
12
- **Validator:** BMAD Workflow Validation System
13
- **Standards Version:** BMAD Workflow Standards
14
-
15
- ---
16
-
17
- ## File Structure & Size
18
-
19
- ### Folder Structure
20
-
21
- ```
22
- update-skill/
23
- ├── workflow.md (56 lines)
24
- ├── workflow-plan-update-skill.md (plan file)
25
- ├── data/
26
- │ ├── manual-section-rules.md (44 lines)
27
- │ └── merge-conflict-rules.md (62 lines)
28
- └── steps-c/
29
- ├── step-01-init.md (208 lines)
30
- ├── step-02-detect-changes.md (183 lines)
31
- ├── step-03-re-extract.md (187 lines)
32
- ├── step-04-merge.md (230 lines)
33
- ├── step-05-validate.md (187 lines)
34
- ├── step-06-write.md (204 lines)
35
- └── step-07-report.md (201 lines)
36
- ```
37
-
38
- ### Structure Assessment
39
-
40
- - workflow.md exists: PASS
41
- - Step files in organized steps-c/ folder: PASS
42
- - Reference data in data/ folder: PASS
43
- - Folder names logical: PASS
44
- - No stray files: PASS
45
-
46
- ### File Size Analysis
47
-
48
- | File | Lines | Status |
49
- |------|-------|--------|
50
- | step-01-init.md | 208 | ⚠️ Approaching limit (200-250) |
51
- | step-02-detect-changes.md | 183 | ✅ Good |
52
- | step-03-re-extract.md | 187 | ✅ Good |
53
- | step-04-merge.md | 230 | ⚠️ Approaching limit (200-250) |
54
- | step-05-validate.md | 187 | ✅ Good |
55
- | step-06-write.md | 204 | ⚠️ Approaching limit (200-250) |
56
- | step-07-report.md | 201 | ⚠️ Approaching limit (200-250) |
57
- | workflow.md | 56 | ✅ Good |
58
- | manual-section-rules.md | 44 | ✅ Good |
59
- | merge-conflict-rules.md | 62 | ✅ Good |
60
-
61
- **Size Warnings:**
62
- - step-01-init.md (208): Init step with Input Discovery pattern — inherently longer due to artifact validation and degraded mode handling
63
- - step-04-merge.md (230): Largest step — complex merge priority logic with [MANUAL] conflict resolution UI. Consider extracting conflict UI template to data/ if further expansion needed
64
- - step-06-write.md (204): Atomic write + verification for multiple file types
65
- - step-07-report.md (201): Comprehensive summary with multiple report sections
66
-
67
- **Recommendation:** step-04-merge.md at 230 lines is the highest risk. If any content is added, the conflict resolution UI or stack skill merge section should be extracted to a data file.
68
-
69
- ### File Presence Verification
70
-
71
- | Design Step | File | Status |
72
- |-------------|------|--------|
73
- | 01 - init | step-01-init.md | PRESENT |
74
- | 02 - detect-changes | step-02-detect-changes.md | PRESENT |
75
- | 03 - re-extract | step-03-re-extract.md | PRESENT |
76
- | 04 - merge | step-04-merge.md | PRESENT |
77
- | 05 - validate | step-05-validate.md | PRESENT |
78
- | 06 - write | step-06-write.md | PRESENT |
79
- | 07 - report | step-07-report.md | PRESENT |
80
-
81
- - Sequential numbering: PASS (01-07 with no gaps)
82
- - Final step exists: PASS
83
- - All design steps have corresponding files: PASS
84
-
85
- ### Overall: PASS with WARNINGS (4 files approaching size limit, 0 exceeding)
86
-
87
- ---
88
-
89
- ## Frontmatter Validation
90
-
91
- ### Per-File Results
92
-
93
- | File | name | description | Variables Used | Paths Valid | Status |
94
- |------|------|-------------|---------------|-------------|--------|
95
- | step-01-init.md | ✅ | ✅ | 2/2 used | ✅ | PASS |
96
- | step-02-detect-changes.md | ✅ | ✅ | 1/1 used | ⚠️ | FAIL |
97
- | step-03-re-extract.md | ✅ | ✅ | 1/1 used | ✅ | PASS |
98
- | step-04-merge.md | ✅ | ✅ | 3/3 used | ✅ | PASS |
99
- | step-05-validate.md | ✅ | ✅ | 1/1 used | ✅ | PASS |
100
- | step-06-write.md | ✅ | ✅ | 1/1 used | ✅ | PASS |
101
- | step-07-report.md | ✅ | ✅ | 0/0 (final) | ✅ | PASS |
102
-
103
- ### Violations Found
104
-
105
- **1. [FAIL] step-02-detect-changes.md — Hardcoded path reference**
106
- - Lines 128, 151, 160 reference `step-07-report.md` directly (no-change shortcut path)
107
- - **Fix:** Add frontmatter variable `noChangeReportFile: './step-07-report.md'` and replace hardcoded references with `{noChangeReportFile}`
108
-
109
- ### Overall: FAIL (1 violation in step-02-detect-changes.md)
110
-
111
- ## Critical Path Violations
112
-
113
- ### Config Variables (Exceptions)
114
-
115
- From workflow.md Configuration Loading section:
116
- - `skills_output_folder`, `forge_data_folder`, `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
117
-
118
- These are runtime config variables resolved from `{project-root}/_bmad/skf/config.yaml` — paths using these are valid.
119
-
120
- ### Content Path Violations
121
-
122
- No `{project-root}/` hardcoded paths found in step content. All module-specific paths use config variables.
123
-
124
- ### Dead Links
125
-
126
- | Reference | From | Status |
127
- |-----------|------|--------|
128
- | `./step-02-detect-changes.md` | step-01-init | EXISTS |
129
- | `../data/manual-section-rules.md` | step-01-init | EXISTS |
130
- | `./step-03-re-extract.md` | step-02-detect-changes | EXISTS |
131
- | `./step-04-merge.md` | step-03-re-extract | EXISTS |
132
- | `./step-05-validate.md` | step-04-merge | EXISTS |
133
- | `../data/manual-section-rules.md` | step-04-merge | EXISTS |
134
- | `../data/merge-conflict-rules.md` | step-04-merge | EXISTS |
135
- | `./step-06-write.md` | step-05-validate | EXISTS |
136
- | `./step-07-report.md` | step-06-write | EXISTS |
137
-
138
- All frontmatter file references resolve to existing files.
139
-
140
- ### Module Awareness
141
-
142
- Workflow is SKF module — correctly references `{project-root}/_bmad/skf/config.yaml`. No BMB-specific path assumptions detected.
143
-
144
- ### Summary
145
-
146
- - **CRITICAL:** 0 violations
147
- - **HIGH:** 0 violations
148
- - **MEDIUM:** 0 violations
149
-
150
- **Status:** PASS — No critical path violations
151
-
152
- ## Menu Handling Validation
153
-
154
- ### Per-File Results
155
-
156
- | File | Menu Type | Handler | Exec Rules | A/P | Status |
157
- |------|-----------|---------|------------|-----|--------|
158
- | step-01-init | [C] gate + [D]/[X] degraded | ✅ Present | ✅ halt+wait | None (correct) | PASS |
159
- | step-02-detect-changes | Auto-proceed | ✅ Present | ✅ auto-proceed | None | PASS |
160
- | step-03-re-extract | Auto-proceed | ✅ Present | ✅ auto-proceed | None | PASS |
161
- | step-04-merge | Conditional: [C] if conflicts, auto if clean | ✅ Both paths | ✅ Both paths | None | PASS |
162
- | step-05-validate | Auto-proceed (advisory) | ✅ Present | ✅ auto-proceed | None | PASS |
163
- | step-06-write | Auto-proceed | ✅ Present | ✅ auto-proceed | None | PASS |
164
- | step-07-report | None (final step) | N/A | N/A | None | PASS |
165
-
166
- ### Assessment
167
-
168
- - All step files have appropriate menu patterns for their type
169
- - Init step (01) correctly uses [C] gate without A/P
170
- - Auto-proceed steps (02, 03, 05, 06) correctly skip user interaction
171
- - Conditional step (04) properly handles both conflict and clean merge paths
172
- - Final step (07) correctly ends workflow with no menu
173
- - A/P excluded throughout (correct for prescriptive surgical workflow)
174
- - step-01 has secondary [D]/[X] menu for degraded mode with proper handler
175
- - step-04 has secondary [K]/[R]/[E] conflict resolution UI within merge process
176
-
177
- ### Overall: PASS — No menu handling violations
178
-
179
- ## Step Type Validation
180
-
181
- ### Per-File Results
182
-
183
- | File | Expected Type | Actual Type | Pattern Match | Status |
184
- |------|--------------|-------------|---------------|--------|
185
- | step-01-init | Init (Input Discovery) | Init (Input Discovery) | ✅ | PASS |
186
- | step-02-detect-changes | Middle (Simple/Auto) | Middle (Auto-proceed) | ✅ | PASS |
187
- | step-03-re-extract | Middle (Simple/Auto) | Middle (Auto-proceed) | ✅ | PASS |
188
- | step-04-merge | Middle (Conditional) | Middle (Conditional) | ✅ | PASS |
189
- | step-05-validate | Validation Sequence | Validation Sequence | ✅ | PASS |
190
- | step-06-write | Middle (Simple/Auto) | Middle (Auto-proceed) | ✅ | PASS |
191
- | step-07-report | Final | Final | ✅ | PASS |
192
-
193
- ### Detailed Analysis
194
-
195
- **step-01-init:** Init with Input Discovery pattern. Requests skill path from user, validates required artifacts (SKILL.md, metadata.json, forge-tier.yaml), checks `preferences.yaml` for `tier_override`, offers degraded mode for missing provenance, inventories [MANUAL] sections. C-only gate (no A/P — correct for init). Non-continuable (correct for single-session).
196
-
197
- **step-02-detect-changes:** Auto-proceed middle step with Pattern 4 parallel subprocess. No-change shortcut correctly routes to final step. No user interaction.
198
-
199
- **step-03-re-extract:** Auto-proceed middle step with Pattern 2 per-file + Pattern 3 QMD subprocesses. Tier-aware extraction logic. No user interaction.
200
-
201
- **step-04-merge:** Conditional middle step — unique pattern. Auto-proceeds on clean merge, presents [C] gate on [MANUAL] conflicts. Secondary [K]/[R]/[E] conflict resolution UI for per-conflict decisions. Correctly halts for user input when conflicts exist.
202
-
203
- **step-05-validate:** Validation sequence — auto-proceeds regardless of findings (advisory mode). Pattern 4 parallel checks across 4 categories. Non-blocking.
204
-
205
- **step-06-write:** Auto-proceed middle step. Atomic file writes with read-back verification. No user interaction.
206
-
207
- **step-07-report:** Final step — no nextStepFile, no menu, workflow ends. Handles no-change shortcut from step-02. Provides workflow chaining recommendations.
208
-
209
- ### Overall: PASS — All 7 steps match their designated type patterns
210
-
211
- ## Output Format Validation
212
-
213
- ### Document Production
214
-
215
- **Classification:** Non-document workflow (action-based)
216
- **From plan:** "Document Output: false (modifies existing files, does not produce new documents)"
217
-
218
- This workflow surgically modifies existing skill artifacts (SKILL.md, metadata.json, provenance-map.json, evidence-report.md) rather than producing a new document.
219
-
220
- ### Assessment
221
-
222
- - Template file required: NO (non-document) ✅
223
- - Final polish step required: NO (non-document) ✅
224
- - Step-to-output mapping: N/A (no progressive document construction)
225
- - No `outputFile` variables in any step frontmatter: ✅ (correct for action workflow)
226
- - No `stepsCompleted` tracking in output: ✅ (correct for non-continuable, non-document)
227
-
228
- ### Overall: PASS (N/A — non-document workflow correctly configured)
229
-
230
- ## Validation Design Check
231
-
232
- ### Is Validation Critical?
233
-
234
- YES — This workflow modifies code-derived artifacts with provenance tracking. [MANUAL] section integrity is a zero-loss requirement. Quality gates are important to catch merge errors.
235
-
236
- ### Internal Validation Step: step-05-validate
237
-
238
- | Criterion | Status |
239
- |-----------|--------|
240
- | Loads validation data/standards (skill-check) | ✅ |
241
- | Systematic check sequence (4 parallel checks) | ✅ |
242
- | Auto-proceeds through checks | ✅ |
243
- | Clear pass/fail criteria (PASS/WARN/FAIL per check) | ✅ |
244
- | Reports findings to user | ✅ |
245
- | Anti-lazy language | ⚠️ Has "CRITICAL:" but not explicit "DO NOT BE LAZY" |
246
-
247
- ### 4 Validation Checks Assessed
248
-
249
- 1. **Spec Compliance** — validates against agentskills.io via skill-check ✅
250
- 2. **[MANUAL] Section Integrity** — byte-level comparison against step-01 inventory ✅
251
- 3. **Confidence Tier Consistency** — verifies tier labels match forge capabilities ✅
252
- 4. **Provenance Completeness** — verifies export-to-source mapping integrity ✅
253
-
254
- ### Critical Flow Segregation
255
-
256
- Validation is inline with create steps (step-05 in steps-c/), not in a separate steps-v/ folder. This is **correct** — update-skill is a create-only workflow, not tri-modal. The validation is an internal quality gate within the pipeline, not a standalone validation mode.
257
-
258
- ### Data Files
259
-
260
- - `data/manual-section-rules.md` — referenced by steps 01, 04 ✅
261
- - `data/merge-conflict-rules.md` — referenced by step 04 ✅
262
- - No validation-specific data files (validation criteria embedded in step-05) ⚠️
263
-
264
- ### Overall: PASS — Validation design is well-structured with 4 systematic checks
265
-
266
- ---
267
-
268
- ## Instruction Style Check
269
-
270
- ### Domain Assessment
271
-
272
- **Domain:** Code analysis / surgical modification
273
- **Appropriate Style:** Prescriptive (zero-hallucination surgical workflow)
274
- **From plan:** "Instruction Style: Overall: prescriptive"
275
-
276
- ### Per-File Style Analysis
277
-
278
- | File | Style | Appropriate | Status |
279
- |------|-------|------------|--------|
280
- | step-01-init | Prescriptive | ✅ Yes (artifact validation) | PASS |
281
- | step-02-detect-changes | Prescriptive | ✅ Yes (deterministic comparison) | PASS |
282
- | step-03-re-extract | Prescriptive | ✅ Yes (AST extraction) | PASS |
283
- | step-04-merge | Prescriptive | ✅ Yes (merge priority order) | PASS |
284
- | step-05-validate | Prescriptive | ✅ Yes (systematic validation) | PASS |
285
- | step-06-write | Prescriptive | ✅ Yes (atomic file operations) | PASS |
286
- | step-07-report | Prescriptive | ✅ Yes (factual reporting) | PASS |
287
-
288
- ### Style Indicators Observed
289
-
290
- - All steps use "Follow this sequence exactly" ✅
291
- - All steps have "FORBIDDEN to" rules ✅
292
- - All steps have explicit MANDATORY SEQUENCE ✅
293
- - Zero "guide user through" or "think about" language (correct — not facilitative)
294
- - Consistent prescriptive style throughout ✅
295
-
296
- ### Overall: PASS — Prescriptive style appropriate for surgical code analysis domain
297
-
298
- ---
299
-
300
- ## Collaborative Experience Check
301
-
302
- ### Workflow Interaction Profile
303
-
304
- This is a **mostly autonomous** workflow. 5 of 7 steps auto-proceed without user interaction. User interaction is minimal by design — surgical precision, not collaborative facilitation.
305
-
306
- ### Per-Step Analysis
307
-
308
- | File | Interaction | Question Style | Status |
309
- |------|-------------|---------------|--------|
310
- | step-01-init | [C] gate + optional [D]/[X] | Progressive (1-2 prompts) | PASS |
311
- | step-02-detect-changes | Auto-proceed | None | PASS |
312
- | step-03-re-extract | Auto-proceed | None | PASS |
313
- | step-04-merge | Conditional: per-conflict [K]/[R]/[E] | Progressive (one conflict at a time) | PASS |
314
- | step-05-validate | Auto-proceed | None | PASS |
315
- | step-06-write | Auto-proceed | None | PASS |
316
- | step-07-report | Display only | None | PASS |
317
-
318
- ### Assessment
319
-
320
- **Collaborative Strengths:**
321
- - step-01: Single question for skill path, then baseline summary before [C] gate — not overwhelming
322
- - step-01 degraded mode: Clear [D]/[X] choice with explanation — not interrogative
323
- - step-04 conflict resolution: Presents one conflict at a time with [K]/[R]/[E] — progressive, not a laundry list
324
- - Auto-proceed steps respect user's time — no unnecessary gates
325
-
326
- **No Interrogation Patterns Found:**
327
- - No laundry list questions detected
328
- - No form-filling patterns
329
- - Two user touchpoints are appropriate for the workflow's purpose
330
-
331
- **Progression and Arc:**
332
- - Clear flow: load → detect → extract → merge → validate → write → report ✅
333
- - Each step builds on previous with explicit data flow ✅
334
- - Summary tables at key points keep user informed ✅
335
- - Report step provides satisfying completion with chaining recommendations ✅
336
-
337
- **User Experience:** This workflow feels like a **surgical instrument** — minimal interaction, maximum precision. Appropriate for its domain.
338
-
339
- ### Overall: PASS — Minimal interaction appropriate for autonomous surgical workflow
340
-
341
- ## Subprocess Optimization Opportunities
342
-
343
- ### Already Implemented
344
-
345
- | Step | Pattern | Description | Status |
346
- |------|---------|-------------|--------|
347
- | step-02 | Pattern 4 (Parallel) | Parallel timestamp/hash comparison across 3 categories | ✅ Implemented |
348
- | step-03 | Pattern 2 (Per-file) | Per-file AST extraction on each changed file | ✅ Implemented |
349
- | step-03 | Pattern 3 (Data Ops) | QMD semantic enrichment query (Deep tier only) | ✅ Implemented |
350
- | step-05 | Pattern 4 (Parallel) | Parallel validation: spec, [MANUAL], confidence, provenance | ✅ Implemented |
351
-
352
- All steps include TOOL/SUBPROCESS FALLBACK rule for graceful degradation to main thread.
353
-
354
- ### Additional Opportunities Identified
355
-
356
- **LOW Priority — step-06-write: Parallel verification reads**
357
- - **Current:** Sequential read-back verification of each written file
358
- - **Suggested:** Pattern 4 — verify all files in parallel after all writes complete
359
- - **Impact:** Minor time savings on 4-5 file verifications
360
- - **Priority:** LOW (verification is fast regardless)
361
-
362
- ### Steps Without Subprocess Needs
363
-
364
- | Step | Reason |
365
- |------|--------|
366
- | step-01-init | Sequential artifact loading + user interaction. No parallelizable work. |
367
- | step-04-merge | Sequential by design (priority order: delete → move → rename → modify → add). Parallelization would break merge semantics. |
368
- | step-07-report | Display only — no computation requiring subprocess. |
369
-
370
- ### Summary by Pattern
371
-
372
- - **Pattern 1 (grep/regex):** 0 opportunities — no multi-file grep operations
373
- - **Pattern 2 (per-file):** 1 implemented (step-03 extraction)
374
- - **Pattern 3 (data ops):** 1 implemented (step-03 QMD enrichment)
375
- - **Pattern 4 (parallel):** 2 implemented (steps 02, 05) + 1 low-priority (step-06)
376
-
377
- ### Overall: PASS — Major optimization opportunities already implemented in design. 1 low-priority additional opportunity identified.
378
-
379
- ## Cohesive Review
380
-
381
- ### Overall Assessment: EXCELLENT
382
-
383
- This workflow is a well-architected surgical pipeline that achieves its goal of precision skill updating with zero [MANUAL] content loss. The balance of autonomy (5 auto-proceed steps) and user control (2 strategic gates) is appropriate for its domain.
384
-
385
- ### Quality Dimensions
386
-
387
- | Dimension | Rating | Notes |
388
- |-----------|--------|-------|
389
- | Goal Clarity | Excellent | Single clear purpose — surgical skill update preserving [MANUAL] content |
390
- | Logical Flow | Excellent | Linear pipeline with clean data flow: load → detect → extract → merge → validate → write → report |
391
- | Facilitation Quality | Good | Minimal interaction by design — appropriate for autonomous surgical operation |
392
- | User Experience | Excellent | Clear baseline summary, progressive conflict resolution, comprehensive report |
393
- | Goal Achievement | Excellent | All success criteria from requirements addressed in the implementation |
394
-
395
- ### Cohesiveness Analysis
396
-
397
- **Flow Continuity:**
398
- - Each step explicitly builds on previous step's output ✅
399
- - Data flow is traceable across all 7 steps ✅
400
- - Two skip paths (no-change shortcut, clean merge auto-proceed) are well-integrated ✅
401
-
402
- **Voice and Tone:**
403
- - Consistent clinical, terse communication throughout ✅
404
- - Confidence tier labeling principle maintained ✅
405
- - Surgeon mode persona reinforced in every step ✅
406
-
407
- **Structural Consistency:**
408
- - All steps follow identical structure (MANDATORY EXECUTION RULES, CONTEXT BOUNDARIES, MANDATORY SEQUENCE, SYSTEM METRICS) ✅
409
- - Universal rules consistently repeated ✅
410
- - Step-specific rules clearly differentiated ✅
411
-
412
- ### Strengths
413
-
414
- 1. **Zero-hallucination principle** enforced throughout — every statement must trace to actual artifacts
415
- 2. **[MANUAL] section preservation** treated as highest priority with multiple safeguards (inventory in step-01, preservation in step-04, integrity verification in step-05, write verification in step-06)
416
- 3. **Tier-aware extraction** well-implemented across Quick/Forge/Forge+/Deep with graceful degradation
417
- 4. **Subprocess optimization** strategically placed at the right steps (02-parallel, 03-per-file, 03-QMD, 05-parallel)
418
- 5. **Error handling** is comprehensive (missing artifacts → abort with helpful message, missing provenance → degraded mode, [MANUAL] conflicts → user resolution)
419
- 6. **Workflow chaining** properly integrated with input/output contracts
420
- 7. **No-change shortcut** prevents unnecessary work when skill is already current
421
- 8. **Conflict resolution UI** is progressive (one conflict at a time, [K]/[R]/[E] choices)
422
-
423
- ### Weaknesses
424
-
425
- 1. **Hardcoded path** in step-02 for no-change shortcut (`step-07-report.md` instead of `{noChangeReportFile}`) — already flagged in frontmatter validation
426
- 2. **step-04-merge at 230 lines** — largest step, risk of exceeding limit if expanded. Conflict UI or stack merge section could be extracted to data/
427
- 3. **Evidence-report.md append** in step-06 doesn't explicitly handle the case where the file doesn't exist yet (first update after create-skill)
428
- 4. **Batch mode** mentioned in requirements but not implemented in steps (noted as future enhancement)
429
-
430
- ### Critical Issues
431
-
432
- None. The workflow is well-designed and should function correctly in its current form.
433
-
434
- ### Recommendation
435
-
436
- **READY TO USE** — This workflow exemplifies best practices for surgical code analysis workflows within the SKF module ecosystem. The single frontmatter violation (step-02 hardcoded path) is minor and easily fixed. The workflow reflects deep understanding of the provenance-driven update cycle, [MANUAL] preservation requirements, and tier-aware extraction patterns established across prior SKF workflow builds.
437
-
438
- ## Plan Quality Validation
439
-
440
- ### Plan File
441
-
442
- **Location:** workflow-plan-update-skill.md
443
- **Status:** Found and validated
444
-
445
- ### Implementation Coverage
446
-
447
- #### 1. Discovery/Vision
448
-
449
- | Planned | Implemented | Quality |
450
- |---------|------------|---------|
451
- | Smart regeneration preserving [MANUAL] sections | ✅ All 7 steps implement this vision | HIGH |
452
- | Provenance-map-driven change detection | ✅ step-02 uses provenance map for targeted diff | HIGH |
453
- | Handles individual and stack skills internally | ✅ Conditional stack sections in steps 01, 04, 05, 06 | HIGH |
454
-
455
- #### 2. Classification
456
-
457
- | Attribute | Planned | Implemented | Status |
458
- |-----------|---------|------------|--------|
459
- | Document Output | false | No outputFile, no templates | ✅ |
460
- | Module | SKF | Loads from `_bmad/skf/config.yaml` | ✅ |
461
- | Session Type | single-session | No continueFile, no stepsCompleted | ✅ |
462
- | Lifecycle | create-only (steps-c/) | Only steps-c/ folder | ✅ |
463
-
464
- #### 3. Requirements
465
-
466
- | Requirement | Implemented | Quality |
467
- |-------------|------------|---------|
468
- | Linear 7-step pipeline | ✅ 7 sequential steps | HIGH |
469
- | 2 strategic user gates | ✅ step-01 [C] + step-04 conditional [C] | HIGH |
470
- | Required inputs (SKILL.md, metadata, forge-tier, provenance) | ✅ All validated in step-01 | HIGH |
471
- | Outputs (SKILL.md, provenance-map, evidence-report) | ✅ All written in step-06 | HIGH |
472
- | Zero [MANUAL] content loss | ✅ Safeguards in steps 01, 04, 05, 06 | HIGH |
473
- | Confidence tier labeling (T1/T1-low/T2) | ✅ step-03 tier-aware extraction | HIGH |
474
- | AST file:line citations | ✅ Zero-hallucination principle throughout | HIGH |
475
- | Stack skill multi-file support | ✅ Conditional sections across steps | HIGH |
476
- | Prescriptive instruction style | ✅ Consistent throughout | HIGH |
477
-
478
- #### 4. Design
479
-
480
- | Design Element | Implemented | Status |
481
- |---------------|------------|--------|
482
- | 7 steps matching design sequence | ✅ All present, correct order | ✅ |
483
- | Step types match design table | ✅ Init, 4x auto, conditional, validation, final | ✅ |
484
- | Data flow matches diagram | ✅ Explicit data passing across all steps | ✅ |
485
- | Interaction patterns (2 gates, 5 auto) | ✅ Matches design specification | ✅ |
486
- | No-change shortcut (step-02 → step-07) | ✅ Implemented | ✅ |
487
- | Error handling (abort/degraded/conflict) | ✅ All scenarios covered | ✅ |
488
-
489
- #### 5. Tools
490
-
491
- | Tool | Planned | Implemented | Status |
492
- |------|---------|------------|--------|
493
- | File I/O | Included | Steps 01, 06 read/write | ✅ |
494
- | Sub-Processes | Included | Steps 02, 03, 05 | ✅ |
495
- | ast_bridge | External | Referenced in step-03 | ✅ |
496
- | gh_bridge | External | Implied in source file access | ✅ |
497
- | qmd_bridge | External | Referenced in step-03 (Deep tier) | ✅ |
498
- | skill-check | External | Referenced in step-05 | ✅ |
499
- | manual-section-rules.md | Data file | Created | ✅ |
500
- | merge-conflict-rules.md | Data file | Created | ✅ |
501
-
502
- ### Implementation Gaps
503
-
504
- 1. **Batch mode** (--batch, --continue flags) — Mentioned in requirements but not implemented in step files. This was a deferred enhancement; the plan notes batch mode "wraps multiple runs" suggesting it's an external orchestration concern, not an internal workflow concern.
505
-
506
- ### Quality Issues
507
-
508
- None significant. All implemented requirements are HIGH quality.
509
-
510
- ### Overall Assessment
511
-
512
- - **Plan implementation score:** ~97% (only batch mode deferred)
513
- - **Status:** Fully Implemented
514
- - **Quality:** HIGH across all requirement areas
515
-
516
- ## Summary
517
-
518
- **Validation Completed:** 2026-02-27
519
- **Overall Status:** PASS with 1 minor violation
520
-
521
- ### Validation Steps Completed
522
-
523
- | Step | Check | Result |
524
- |------|-------|--------|
525
- | 1 | File Structure & Size | PASS (4 warnings — files approaching limit) |
526
- | 2 | Frontmatter Validation | FAIL (1 violation — hardcoded path in step-02) |
527
- | 2b | Critical Path Violations | PASS (0 violations) |
528
- | 3 | Menu Handling | PASS (all menus correct) |
529
- | 4 | Step Type Validation | PASS (all types match design) |
530
- | 5 | Output Format | PASS (N/A — non-document workflow) |
531
- | 6 | Validation Design Check | PASS (well-structured internal validation) |
532
- | 7 | Instruction Style | PASS (prescriptive, appropriate for domain) |
533
- | 8 | Collaborative Experience | PASS (minimal interaction, appropriate for surgical workflow) |
534
- | 8b | Subprocess Optimization | PASS (major patterns already implemented) |
535
- | 9 | Cohesive Review | EXCELLENT (ready to use) |
536
- | 11 | Plan Quality | Fully Implemented (~97%) |
537
-
538
- ### Issues to Fix
539
-
540
- **Must Fix (1):**
541
- 1. **step-02-detect-changes.md** — Add `noChangeReportFile: './step-07-report.md'` to frontmatter and replace hardcoded `step-07-report.md` references on lines 128, 151, 160 with `{noChangeReportFile}`
542
-
543
- **Recommended (0 blocking):**
544
- - step-04-merge.md at 230 lines is highest risk for exceeding 250-line limit. Consider extracting conflict UI or stack merge section to a data file if expansion is needed.
545
- - step-06-write should explicitly handle the case where evidence-report.md doesn't exist yet (first update after create-skill).
546
-
547
- ### Key Strengths
548
-
549
- - Zero-hallucination principle consistently enforced
550
- - [MANUAL] section preservation is multi-layered (inventory, preservation, verification, write-check)
551
- - Tier-aware extraction is well-implemented
552
- - Subprocess optimization strategically placed
553
- - Error handling is comprehensive with helpful messages
554
- - Workflow chaining contracts are properly defined
555
- - Plan implementation is ~97% complete
556
-
557
- ### Recommendation
558
-
559
- **READY TO USE** after fixing the 1 frontmatter violation in step-02. The workflow exemplifies best practices for surgical code analysis within the SKF module ecosystem.