bmad-module-skill-forge 0.9.0 → 0.10.1-alpha.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 (268) hide show
  1. package/.claude-plugin/marketplace.json +39 -0
  2. package/.gitattributes +16 -0
  3. package/README.md +105 -38
  4. package/docs/404.md +13 -10
  5. package/docs/RELEASING.md +185 -0
  6. package/docs/STABILITY.md +123 -0
  7. package/docs/_data/pinned.yaml +98 -0
  8. package/docs/agents.md +16 -11
  9. package/docs/architecture.md +221 -0
  10. package/docs/bmad-synergy.md +11 -13
  11. package/docs/concepts.md +18 -108
  12. package/docs/examples.md +121 -80
  13. package/docs/getting-started.md +85 -147
  14. package/docs/how-it-works.md +25 -536
  15. package/docs/index.md +44 -27
  16. package/docs/skill-model.md +328 -0
  17. package/docs/troubleshooting.md +39 -0
  18. package/docs/verifying-a-skill.md +232 -0
  19. package/docs/why-skf.md +93 -0
  20. package/docs/workflows.md +119 -13
  21. package/package.json +25 -4
  22. package/src/README.md +23 -25
  23. package/src/forger/forge-tier.yaml +4 -2
  24. package/src/forger/preferences.yaml +7 -1
  25. package/src/knowledge/agentskills-spec.md +1 -1
  26. package/src/knowledge/architecture-verification.md +1 -1
  27. package/src/knowledge/ccc-bridge.md +16 -15
  28. package/src/knowledge/overview.md +11 -11
  29. package/src/knowledge/progressive-capability.md +3 -3
  30. package/src/knowledge/provenance-tracking.md +9 -3
  31. package/src/knowledge/qmd-registry.md +8 -8
  32. package/src/knowledge/skf-knowledge-index.csv +2 -2
  33. package/src/knowledge/skill-lifecycle.md +16 -1
  34. package/src/knowledge/split-body-strategy.md +1 -1
  35. package/src/knowledge/version-paths.md +17 -12
  36. package/src/module-help.csv +18 -17
  37. package/src/module.yaml +4 -0
  38. package/src/shared/health-check.md +372 -0
  39. package/src/shared/references/feasibility-report-schema.md +86 -0
  40. package/src/shared/references/headless-gate-convention.md +62 -0
  41. package/src/shared/references/output-contract-schema.md +35 -0
  42. package/src/shared/references/pipeline-contracts.md +102 -0
  43. package/src/shared/scripts/skf-atomic-write.py +370 -0
  44. package/src/shared/scripts/skf-manifest-ops.py +236 -0
  45. package/src/shared/scripts/skf-preflight.py +164 -0
  46. package/src/shared/scripts/skf-rebuild-managed-sections.py +201 -0
  47. package/src/shared/scripts/skf-severity-classify.py +163 -0
  48. package/src/shared/scripts/skf-skill-inventory.py +210 -0
  49. package/src/shared/scripts/skf-structural-diff.py +257 -0
  50. package/src/shared/scripts/skf-validate-frontmatter.py +318 -0
  51. package/src/shared/scripts/skf-validate-output.py +247 -0
  52. package/src/skf-analyze-source/SKILL.md +57 -0
  53. package/src/skf-analyze-source/assets/skill-brief-schema.md +125 -0
  54. package/src/skf-analyze-source/references/unit-detection-heuristics.md +124 -0
  55. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01-init.md +6 -66
  56. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-01b-continue.md +4 -59
  57. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-02-scan-project.md +7 -68
  58. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-03-identify-units.md +6 -66
  59. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-04-map-and-detect.md +7 -68
  60. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-05-recommend.md +6 -66
  61. package/src/{workflows/analyze-source → skf-analyze-source}/steps-c/step-06-generate-briefs.md +14 -66
  62. package/src/skf-analyze-source/steps-c/step-07-health-check.md +22 -0
  63. package/src/skf-audit-skill/SKILL.md +59 -0
  64. package/src/{workflows/audit-skill/data → skf-audit-skill/assets}/drift-report-template.md +7 -7
  65. package/src/{workflows/audit-skill/data → skf-audit-skill/references}/severity-rules.md +11 -11
  66. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-01-init.md +24 -68
  67. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-02-re-index.md +36 -71
  68. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-03-structural-diff.md +21 -63
  69. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-04-semantic-diff.md +6 -65
  70. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-05-severity-classify.md +5 -63
  71. package/src/{workflows/audit-skill → skf-audit-skill}/steps-c/step-06-report.md +10 -59
  72. package/src/skf-audit-skill/steps-c/step-07-health-check.md +22 -0
  73. package/src/skf-brief-skill/SKILL.md +53 -0
  74. package/src/{workflows/brief-skill/data → skf-brief-skill/assets}/scope-templates.md +23 -0
  75. package/src/skf-brief-skill/assets/skill-brief-schema.md +206 -0
  76. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-01-gather-intent.md +6 -67
  77. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-02-analyze-target.md +6 -66
  78. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-03-scope-definition.md +12 -68
  79. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-04-confirm-brief.md +5 -63
  80. package/src/{workflows/brief-skill → skf-brief-skill}/steps-c/step-05-write-brief.md +10 -69
  81. package/src/skf-brief-skill/steps-c/step-06-health-check.md +22 -0
  82. package/src/skf-create-skill/SKILL.md +63 -0
  83. package/src/{workflows/create-skill/data → skf-create-skill/assets}/compile-assembly-rules.md +60 -0
  84. package/src/{workflows/create-skill/data → skf-create-skill/assets}/skill-sections.md +92 -23
  85. package/src/skf-create-skill/assets/tessl-dismissal-rules.md +102 -0
  86. package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns-tracing.md +13 -13
  87. package/src/{workflows/create-skill/data → skf-create-skill/references}/extraction-patterns.md +8 -3
  88. package/src/skf-create-skill/references/source-resolution-protocols.md +239 -0
  89. package/src/{workflows/create-skill/data → skf-create-skill/references}/tier-degradation-rules.md +8 -7
  90. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-01-load-brief.md +25 -63
  91. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-02-ecosystem-check.md +8 -64
  92. package/src/skf-create-skill/steps-c/step-03-extract.md +379 -0
  93. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-03d-component-extraction.md +18 -35
  94. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-04-enrich.md +12 -69
  95. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-05-compile.md +71 -75
  96. package/src/skf-create-skill/steps-c/step-06-validate.md +267 -0
  97. package/src/{workflows/create-skill → skf-create-skill}/steps-c/step-07-generate-artifacts.md +30 -74
  98. package/src/skf-create-skill/steps-c/step-08-report.md +145 -0
  99. package/src/skf-create-skill/steps-c/step-09-health-check.md +23 -0
  100. package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-02b-ccc-discover.md +8 -66
  101. package/src/skf-create-skill/steps-c/sub/step-03b-fetch-temporal.md +229 -0
  102. package/src/{workflows/create-skill/steps-c → skf-create-skill/steps-c/sub}/step-03c-fetch-docs.md +18 -42
  103. package/src/skf-create-stack-skill/SKILL.md +64 -0
  104. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/assets}/stack-skill-template.md +2 -1
  105. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/compose-mode-rules.md +19 -5
  106. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/integration-patterns.md +1 -1
  107. package/src/{workflows/create-stack-skill/data → skf-create-stack-skill/references}/manifest-patterns.md +10 -10
  108. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-01-init.md +14 -55
  109. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-02-detect-manifests.md +29 -63
  110. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-03-rank-and-confirm.md +9 -59
  111. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-04-parallel-extract.md +29 -64
  112. package/src/skf-create-stack-skill/steps-c/step-05-detect-integrations.md +164 -0
  113. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-06-compile-stack.md +7 -60
  114. package/src/skf-create-stack-skill/steps-c/step-07-generate-output.md +328 -0
  115. package/src/{workflows/create-stack-skill → skf-create-stack-skill}/steps-c/step-08-validate.md +17 -63
  116. package/src/skf-create-stack-skill/steps-c/step-09-report.md +128 -0
  117. package/src/skf-create-stack-skill/steps-c/step-10-health-check.md +22 -0
  118. package/src/skf-drop-skill/SKILL.md +57 -0
  119. package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-01-select.md +9 -69
  120. package/src/{workflows/drop-skill → skf-drop-skill}/steps-c/step-02-execute.md +30 -106
  121. package/src/skf-drop-skill/steps-c/step-03-report.md +83 -0
  122. package/src/skf-drop-skill/steps-c/step-04-health-check.md +22 -0
  123. package/src/skf-export-skill/SKILL.md +57 -0
  124. package/src/skf-export-skill/assets/managed-section-format.md +138 -0
  125. package/src/{workflows/export-skill/data → skf-export-skill/assets}/snippet-format.md +8 -12
  126. package/src/skf-export-skill/steps-c/step-01-load-skill.md +247 -0
  127. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-02-package.md +5 -58
  128. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-03-generate-snippet.md +15 -77
  129. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-04-update-context.md +59 -133
  130. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-05-token-report.md +4 -58
  131. package/src/{workflows/export-skill → skf-export-skill}/steps-c/step-06-summary.md +20 -64
  132. package/src/skf-export-skill/steps-c/step-07-health-check.md +22 -0
  133. package/src/skf-forger/SKILL.md +110 -0
  134. package/src/skf-forger/bmad-skill-manifest.yaml +11 -0
  135. package/src/skf-quick-skill/SKILL.md +56 -0
  136. package/src/{workflows/quick-skill/data → skf-quick-skill/references}/registry-resolution.md +6 -6
  137. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-01-resolve-target.md +9 -62
  138. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-02-ecosystem-check.md +5 -59
  139. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-03-quick-extract.md +18 -61
  140. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-04-compile.md +6 -60
  141. package/src/{workflows/quick-skill → skf-quick-skill}/steps-c/step-05-validate.md +58 -78
  142. package/src/skf-quick-skill/steps-c/step-06-write.md +73 -0
  143. package/src/skf-quick-skill/steps-c/step-07-health-check.md +22 -0
  144. package/src/skf-refine-architecture/SKILL.md +57 -0
  145. package/src/{workflows/refine-architecture/data → skf-refine-architecture/references}/refinement-rules.md +16 -16
  146. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-01-init.md +6 -63
  147. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-02-gap-analysis.md +29 -71
  148. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-03-issue-detection.md +5 -65
  149. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-04-improvements.md +5 -64
  150. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-05-compile.md +5 -56
  151. package/src/{workflows/refine-architecture → skf-refine-architecture}/steps-c/step-06-report.md +14 -64
  152. package/src/skf-refine-architecture/steps-c/step-07-health-check.md +22 -0
  153. package/src/skf-rename-skill/SKILL.md +58 -0
  154. package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-01-select.md +12 -73
  155. package/src/{workflows/rename-skill → skf-rename-skill}/steps-c/step-02-execute.md +32 -113
  156. package/src/skf-rename-skill/steps-c/step-03-report.md +83 -0
  157. package/src/skf-rename-skill/steps-c/step-04-health-check.md +22 -0
  158. package/src/skf-setup/SKILL.md +55 -0
  159. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01-detect-and-tier.md +6 -62
  160. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-01b-ccc-index.md +9 -65
  161. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-02-write-config.md +15 -60
  162. package/src/{workflows/setup-forge → skf-setup}/steps-c/step-03-auto-index.md +7 -66
  163. package/src/skf-setup/steps-c/step-04-report.md +92 -0
  164. package/src/skf-setup/steps-c/step-05-health-check.md +22 -0
  165. package/src/skf-test-skill/SKILL.md +59 -0
  166. package/src/skf-test-skill/references/migration-section-rules.md +114 -0
  167. package/src/skf-test-skill/references/scoring-rules.md +207 -0
  168. package/src/skf-test-skill/references/source-access-protocol.md +109 -0
  169. package/src/skf-test-skill/scripts/compute-score.py +310 -0
  170. package/src/skf-test-skill/steps-c/step-01-init.md +238 -0
  171. package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-02-detect-mode.md +4 -62
  172. package/src/skf-test-skill/steps-c/step-03-coverage-check.md +347 -0
  173. package/src/skf-test-skill/steps-c/step-04-coherence-check.md +239 -0
  174. package/src/{workflows/test-skill → skf-test-skill}/steps-c/step-04b-external-validators.md +42 -77
  175. package/src/skf-test-skill/steps-c/step-05-score.md +266 -0
  176. package/src/skf-test-skill/steps-c/step-06-report.md +290 -0
  177. package/src/skf-test-skill/steps-c/step-07-health-check.md +25 -0
  178. package/src/skf-test-skill/templates/test-report-template.md +58 -0
  179. package/src/skf-update-skill/SKILL.md +58 -0
  180. package/src/{workflows/update-skill/data → skf-update-skill/references}/manual-section-rules.md +6 -6
  181. package/src/{workflows/update-skill/data → skf-update-skill/references}/merge-conflict-rules.md +5 -5
  182. package/src/skf-update-skill/references/remote-source-resolution.md +94 -0
  183. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-01-init.md +22 -69
  184. package/src/skf-update-skill/steps-c/step-02-detect-changes.md +255 -0
  185. package/src/skf-update-skill/steps-c/step-03-re-extract.md +336 -0
  186. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-04-merge.md +60 -72
  187. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-05-validate.md +5 -62
  188. package/src/skf-update-skill/steps-c/step-06-write.md +278 -0
  189. package/src/{workflows/update-skill → skf-update-skill}/steps-c/step-07-report.md +11 -66
  190. package/src/skf-update-skill/steps-c/step-08-health-check.md +22 -0
  191. package/src/skf-verify-stack/SKILL.md +60 -0
  192. package/src/skf-verify-stack/assets/feasibility-report-template.md +76 -0
  193. package/src/{workflows/verify-stack/data → skf-verify-stack/references}/coverage-patterns.md +12 -4
  194. package/src/skf-verify-stack/references/integration-verification-rules.md +78 -0
  195. package/src/skf-verify-stack/steps-c/step-01-init.md +178 -0
  196. package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-02-coverage.md +27 -72
  197. package/src/skf-verify-stack/steps-c/step-03-integrations.md +179 -0
  198. package/src/{workflows/verify-stack → skf-verify-stack}/steps-c/step-04-requirements.md +14 -67
  199. package/src/skf-verify-stack/steps-c/step-05-synthesize.md +147 -0
  200. package/src/skf-verify-stack/steps-c/step-06-report.md +156 -0
  201. package/src/skf-verify-stack/steps-c/step-07-health-check.md +25 -0
  202. package/tools/cli/commands/install.js +1 -1
  203. package/tools/cli/commands/status.js +21 -23
  204. package/tools/cli/commands/uninstall.js +11 -19
  205. package/tools/cli/commands/update.js +2 -2
  206. package/tools/cli/lib/ide-skills.js +216 -0
  207. package/tools/cli/lib/installer.js +29 -52
  208. package/tools/cli/lib/manifest.js +11 -5
  209. package/tools/cli/lib/platform-codes.yaml +223 -0
  210. package/tools/cli/lib/ui.js +76 -47
  211. package/tools/validate-docs-drift.js +193 -0
  212. package/src/agents/forger.agent.yaml +0 -114
  213. package/src/workflows/README.md +0 -174
  214. package/src/workflows/analyze-source/data/skill-brief-schema.md +0 -125
  215. package/src/workflows/analyze-source/data/unit-detection-heuristics.md +0 -124
  216. package/src/workflows/analyze-source/workflow.md +0 -61
  217. package/src/workflows/audit-skill/workflow.md +0 -64
  218. package/src/workflows/brief-skill/data/skill-brief-schema.md +0 -159
  219. package/src/workflows/brief-skill/workflow.md +0 -58
  220. package/src/workflows/create-skill/data/source-resolution-protocols.md +0 -200
  221. package/src/workflows/create-skill/steps-c/step-03-extract.md +0 -301
  222. package/src/workflows/create-skill/steps-c/step-03b-fetch-temporal.md +0 -253
  223. package/src/workflows/create-skill/steps-c/step-06-validate.md +0 -254
  224. package/src/workflows/create-skill/steps-c/step-08-report.md +0 -176
  225. package/src/workflows/create-skill/workflow.md +0 -53
  226. package/src/workflows/create-stack-skill/steps-c/step-05-detect-integrations.md +0 -196
  227. package/src/workflows/create-stack-skill/steps-c/step-07-generate-output.md +0 -270
  228. package/src/workflows/create-stack-skill/steps-c/step-09-report.md +0 -145
  229. package/src/workflows/create-stack-skill/workflow.md +0 -59
  230. package/src/workflows/drop-skill/steps-c/step-03-report.md +0 -135
  231. package/src/workflows/drop-skill/workflow.md +0 -63
  232. package/src/workflows/export-skill/data/managed-section-format.md +0 -103
  233. package/src/workflows/export-skill/steps-c/step-01-load-skill.md +0 -237
  234. package/src/workflows/export-skill/workflow.md +0 -58
  235. package/src/workflows/quick-skill/steps-c/step-06-write.md +0 -179
  236. package/src/workflows/quick-skill/workflow.md +0 -58
  237. package/src/workflows/refine-architecture/workflow.md +0 -61
  238. package/src/workflows/rename-skill/steps-c/step-03-report.md +0 -132
  239. package/src/workflows/rename-skill/workflow.md +0 -64
  240. package/src/workflows/setup-forge/steps-c/step-04-report.md +0 -156
  241. package/src/workflows/setup-forge/workflow.md +0 -51
  242. package/src/workflows/test-skill/data/scoring-rules.md +0 -123
  243. package/src/workflows/test-skill/data/source-access-protocol.md +0 -51
  244. package/src/workflows/test-skill/steps-c/step-01-init.md +0 -217
  245. package/src/workflows/test-skill/steps-c/step-03-coverage-check.md +0 -280
  246. package/src/workflows/test-skill/steps-c/step-04-coherence-check.md +0 -271
  247. package/src/workflows/test-skill/steps-c/step-05-score.md +0 -222
  248. package/src/workflows/test-skill/steps-c/step-06-report.md +0 -207
  249. package/src/workflows/test-skill/templates/test-report-template.md +0 -28
  250. package/src/workflows/test-skill/workflow.md +0 -57
  251. package/src/workflows/update-skill/data/remote-source-resolution.md +0 -57
  252. package/src/workflows/update-skill/steps-c/step-02-detect-changes.md +0 -221
  253. package/src/workflows/update-skill/steps-c/step-03-re-extract.md +0 -256
  254. package/src/workflows/update-skill/steps-c/step-06-write.md +0 -265
  255. package/src/workflows/update-skill/workflow.md +0 -56
  256. package/src/workflows/verify-stack/data/feasibility-report-template.md +0 -63
  257. package/src/workflows/verify-stack/data/integration-verification-rules.md +0 -73
  258. package/src/workflows/verify-stack/steps-c/step-01-init.md +0 -179
  259. package/src/workflows/verify-stack/steps-c/step-03-integrations.md +0 -195
  260. package/src/workflows/verify-stack/steps-c/step-05-synthesize.md +0 -191
  261. package/src/workflows/verify-stack/steps-c/step-06-report.md +0 -197
  262. package/src/workflows/verify-stack/workflow.md +0 -61
  263. package/tools/cli/lib/compiler.js +0 -306
  264. package/tools/cli/lib/ide-commands.js +0 -244
  265. /package/src/{workflows/analyze-source → skf-analyze-source}/templates/analysis-report-template.md +0 -0
  266. /package/src/{workflows/quick-skill/data → skf-quick-skill/assets}/skill-template.md +0 -0
  267. /package/src/{workflows/setup-forge/data → skf-setup/references}/tier-rules.md +0 -0
  268. /package/src/{workflows/test-skill/data → skf-test-skill/assets}/output-section-formats.md +0 -0
@@ -1,195 +0,0 @@
1
- ---
2
- name: 'step-03-integrations'
3
- description: 'Pass 2 — cross-reference API surfaces between library pairs based on integration claims in the architecture document'
4
-
5
- nextStepFile: './step-04-requirements.md'
6
- integrationRulesData: '../data/integration-verification-rules.md'
7
- outputFile: '{forge_data_folder}/feasibility-report-{project_name}.md'
8
- ---
9
-
10
- # Step 3: Integration Verification
11
-
12
- ## STEP GOAL:
13
-
14
- Cross-reference API surfaces between library pairs that the architecture document claims work together. For each integration pair, verify language compatibility, protocol alignment, type compatibility, and documentation cross-references. Produce an evidence-backed verdict for each integration.
15
-
16
- ## MANDATORY EXECUTION RULES (READ FIRST):
17
-
18
- ### Universal Rules:
19
-
20
- - 📖 CRITICAL: Read the complete step file before taking any action
21
- - 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
22
- - ⚙️ TOOL/SUBPROCESS FALLBACK: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
23
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
24
-
25
- ### Role Reinforcement:
26
-
27
- - ✅ You are a stack verification analyst performing integration feasibility analysis
28
- - ✅ Every verdict must cite evidence from the actual skill content — no speculation
29
- - ✅ Apply the verification protocol strictly — do not skip compatibility checks
30
-
31
- ### Step-Specific Rules:
32
-
33
- - 🎯 Focus ONLY on integration pair verification using skill API surfaces
34
- - 🚫 FORBIDDEN to evaluate requirements coverage — that is Step 04
35
- - 🚫 FORBIDDEN to parse Mermaid diagrams — use prose-based co-mention analysis only
36
- - 💬 Every verdict MUST include evidence citations from the skills
37
-
38
- ## EXECUTION PROTOCOLS:
39
-
40
- - 🎯 Extract integration claims from architecture document prose
41
- - 💾 Load skill API surfaces and cross-reference each integration pair
42
- - 📖 Append Integration Verdicts section to {outputFile}
43
- - 🚫 Only integration analysis — no requirements checking, no synthesis
44
-
45
- ## CONTEXT BOUNDARIES:
46
-
47
- - Available: Architecture document content, skill SKILL.md and metadata.json files, integration verification rules
48
- - Focus: Pairwise integration compatibility between skills
49
- - Limits: Only verify pairs explicitly claimed in the architecture document — do not invent integration relationships
50
- - Dependencies: Step 01 (skill inventory), Step 02 (coverage matrix — only verify skills that exist)
51
-
52
- ## MANDATORY SEQUENCE
53
-
54
- **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
55
-
56
- ### 1. Load Integration Verification Rules
57
-
58
- Load `{integrationRulesData}` for the cross-reference verification protocol.
59
-
60
- Extract: verification checks (language boundary, protocol compatibility, type compatibility, documentation cross-reference), verdict criteria, and evidence requirements.
61
-
62
- ### 2. Extract Integration Claims
63
-
64
- Parse the architecture document for statements describing two or more technologies working together.
65
-
66
- **Detection method — prose-based co-mention analysis:**
67
- - Identify sentences or paragraphs where two or more technology names appear together
68
- - Look for integration verbs: "connects to", "communicates with", "wraps", "extends", "consumes", "produces", "bridges", "integrates with", "sits between"
69
- - Look for data flow descriptions: "{A} sends data to {B}", "{A} results are consumed by {B}"
70
- - Look for layer boundary descriptions: "{A} at the API layer connects to {B} at the data layer"
71
-
72
- **CRITICAL:** Do NOT parse Mermaid diagram syntax. Use only prose text for co-mention detection.
73
-
74
- **Build integration pairs list:**
75
- - Each pair: `{library_a, library_b, architectural_context}`
76
- - `architectural_context`: the quoted text or paraphrased description of their relationship
77
-
78
- **Filter:** Only include pairs where BOTH libraries have a corresponding skill (Covered in Step 02). Skip pairs involving Missing skills — they cannot be verified.
79
-
80
- ### 3. Load Skill API Surfaces
81
-
82
- For each library in an integration pair, load the skill artifacts:
83
-
84
- **From SKILL.md, extract:**
85
- - Exported functions and their signatures
86
- - Exported types, interfaces, and classes
87
- - Protocol indicators (HTTP, gRPC, WebSocket, message queue, file I/O, IPC)
88
- - Data format indicators (JSON, protobuf, CSV, binary, streaming)
89
-
90
- **From metadata.json, extract:**
91
- - `language` — primary programming language
92
- - `exports` — export names array (populated for individual skills; empty for stack skills)
93
- - `stats.exports_documented` — export count
94
- - `confidence_tier` — extraction confidence level
95
-
96
- Store loaded API surfaces for cross-referencing.
97
-
98
- ### 4. Cross-Reference Each Integration Pair
99
-
100
- For each integration pair `{library_a, library_b}`, apply the verification protocol from `{integrationRulesData}`:
101
-
102
- **Check 1 — Language Boundary:**
103
- - Same language → compatible
104
- - Different languages → check for FFI, IPC, or network protocol bridge
105
- - If no bridge mechanism documented → flag as risk
106
-
107
- **Check 2 — Protocol Compatibility:**
108
- - Both use same protocol (e.g., both HTTP) → compatible
109
- - Complementary protocols (e.g., HTTP client + HTTP server) → compatible
110
- - Incompatible protocols with no adapter → flag as risk
111
-
112
- **Check 3 — Type Compatibility:**
113
- - Shared types or compatible serialization formats → compatible
114
- - Incompatible type systems with no conversion layer → flag as risk
115
-
116
- **Check 4 — Documentation Cross-Reference:**
117
- - Skill A mentions skill B's library (or vice versa) → strong evidence
118
- - Neither skill mentions the other → weak evidence (plausible but unverified)
119
-
120
- **Assign verdict per pair:**
121
- - **Verified** — all checks pass with evidence from both skills
122
- - **Plausible** — checks pass but evidence is indirect or incomplete
123
- - **Risky** — one or more checks flag compatibility concerns
124
- - **Blocked** — fundamental incompatibility detected (language barrier with no bridge, incompatible protocols)
125
-
126
- **Each verdict MUST include:**
127
- - Which checks passed and which flagged
128
- - Evidence citations: specific exports, types, or protocol references from the skills
129
-
130
- ### 5. Display Integration Results
131
-
132
- "**Pass 2: Integration Verification**
133
-
134
- | Library A | Library B | Context | Verdict | Evidence |
135
- |-----------|-----------|---------|---------|----------|
136
- | {lib_a} | {lib_b} | {brief context} | {Verified/Plausible/Risky/Blocked} | {key evidence} |
137
-
138
- **Summary:** {verified_count} Verified, {plausible_count} Plausible, {risky_count} Risky, {blocked_count} Blocked
139
-
140
- {IF zero integration pairs found:}
141
- **No integration claims detected in the architecture document prose.** Ensure your architecture document describes relationships between technologies in text form (not exclusively in Mermaid diagrams). Coverage-only analysis was performed.
142
-
143
- {IF any Risky:}
144
- **Risky Integrations — Recommendations:**
145
- {For each risky pair:}
146
- - `{lib_a}` ↔ `{lib_b}`: {specific concern}. **Recommendation:** {prescriptive action}
147
-
148
- {IF any Blocked:}
149
- **Blocked Integrations — Action Required:**
150
- {For each blocked pair:}
151
- - `{lib_a}` ↔ `{lib_b}`: {fundamental incompatibility}. **Recommendation:** {prescriptive action}"
152
-
153
- ### 6. Append to Report
154
-
155
- Write the **Integration Verdicts** section to `{outputFile}`:
156
- - Include the full integration verdicts table with evidence
157
- - Include recommendations for Risky and Blocked pairs
158
- - Update frontmatter: append `'step-03-integrations'` to `stepsCompleted`
159
- - Set `integrations_verified`, `integrations_plausible`, `integrations_risky`, `integrations_blocked` counts
160
-
161
- ### 7. Auto-Proceed to Next Step
162
-
163
- **Early halt guard:** If ALL integration pairs are Blocked, present: "**All integrations are Blocked** — fundamental incompatibilities detected across all library pairs. Remaining analysis will produce limited value. **[X] Halt workflow (recommended)** | **[C] Continue anyway**" — wait for user input. If X: halt with: "**Workflow halted — all integrations blocked.** Integration Verdicts saved to `{outputFile}`. Run **[VS]** after applying architectural changes. **Blocked integrations:** {list each blocked pair with reason}." If C: continue.
164
-
165
- {IF NOT halted (user selected C, or early halt guard did not trigger):}
166
-
167
- "**Proceeding to requirements verification...**"
168
-
169
- Load, read the full file and then execute `{nextStepFile}`.
170
-
171
- ---
172
-
173
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
174
-
175
- ### ✅ SUCCESS:
176
-
177
- - Integration rules loaded from {integrationRulesData}
178
- - Integration claims extracted from architecture document prose (not Mermaid diagrams)
179
- - Skill API surfaces loaded for each library in integration pairs
180
- - All four verification checks applied to each pair
181
- - Every verdict includes evidence citations from actual skill content
182
- - Recommendations provided for every Risky and Blocked integration
183
- - Integration Verdicts section appended to {outputFile}
184
- - Auto-proceeded to step 04
185
-
186
- ### ❌ SYSTEM FAILURE:
187
-
188
- - Parsing Mermaid diagrams instead of using prose-based co-mention analysis
189
- - Verdicts without evidence citations from actual skills
190
- - Inventing integration relationships not described in the architecture document
191
- - Skipping any of the four verification checks
192
- - Evaluating requirements coverage (that is Step 04)
193
- - Hardcoded paths instead of frontmatter variables
194
-
195
- **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
@@ -1,191 +0,0 @@
1
- ---
2
- name: 'step-05-synthesize'
3
- description: 'Produce overall feasibility verdict, prescriptive recommendations, and diff from previous run'
4
-
5
- nextStepFile: './step-06-report.md'
6
- outputFile: '{forge_data_folder}/feasibility-report-{project_name}.md'
7
- ---
8
-
9
- # Step 5: Synthesize Verdict
10
-
11
- ## STEP GOAL:
12
-
13
- Calculate the overall feasibility verdict based on all three analysis passes, generate prescriptive recommendations for every non-verified finding, check for a previous feasibility report to produce a delta, and compile the synthesis section of the report.
14
-
15
- ## MANDATORY EXECUTION RULES (READ FIRST):
16
-
17
- ### Universal Rules:
18
-
19
- - 📖 CRITICAL: Read the complete step file before taking any action
20
- - 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
21
- - ⚙️ TOOL/SUBPROCESS FALLBACK: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
22
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
23
-
24
- ### Role Reinforcement:
25
-
26
- - ✅ You are a stack verification analyst delivering the final synthesis
27
- - ✅ The overall verdict must follow the decision logic exactly — no subjectivity
28
- - ✅ Every recommendation must be specific and actionable — not vague advice
29
-
30
- ### Step-Specific Rules:
31
-
32
- - 🎯 Focus ONLY on synthesizing findings from Steps 02-04 into a verdict
33
- - 🚫 FORBIDDEN to discover new findings or re-analyze skills
34
- - 🚫 FORBIDDEN to present the final report to the user — that is Step 06
35
- - 💬 Recommendations must name specific tools, libraries, or actions
36
-
37
- ## EXECUTION PROTOCOLS:
38
-
39
- - 🎯 Apply verdict decision logic to produce FEASIBLE / CONDITIONALLY FEASIBLE / NOT FEASIBLE
40
- - 💾 Append Synthesis & Recommendations section to {outputFile}
41
- - 📖 Check for previous report and generate delta if found
42
- - 🚫 Only synthesis — no new analysis, no final presentation
43
-
44
- ## CONTEXT BOUNDARIES:
45
-
46
- - Available: Coverage matrix (Step 02), integration verdicts (Step 03), requirements coverage (Step 04 if applicable)
47
- - Focus: Verdict calculation, recommendation generation, delta comparison
48
- - Limits: Do not present the full report — that is Step 06
49
- - Dependencies: Steps 02-03 must be complete; Step 04 completed or skipped
50
-
51
- ## MANDATORY SEQUENCE
52
-
53
- **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
54
-
55
- ### 1. Calculate Overall Verdict
56
-
57
- Apply the following decision logic using findings from all completed passes:
58
-
59
- **Evaluate in order — the first matching condition wins. Do not continue once a verdict is determined.**
60
-
61
- **NOT FEASIBLE (evaluate first):**
62
- - Any integration is **Blocked** → overall verdict is NOT FEASIBLE
63
- - Rationale: a blocked integration represents a fundamental architectural incompatibility. Also note in the rationale any co-occurring Missing skills or Risky integrations so the user understands the full set of problems
64
-
65
- **CONDITIONALLY FEASIBLE (evaluate second):**
66
- If ANY of the following apply, the verdict is CONDITIONALLY FEASIBLE. Include ALL matching conditions in the rationale:
67
- - Any technology is **Missing** from coverage (no skill exists)
68
- - Any integration is **Risky** (but none Blocked)
69
- - Requirements have any **Not Addressed** items
70
- - Requirements have any **Partially Fulfilled** items
71
- - Rationale: the stack can work but has gaps, risks, or unverified assumptions that must be addressed
72
-
73
- **FEASIBLE (evaluate last):**
74
- - Coverage is 100% (no Missing skills) AND all integrations are Verified or Plausible AND requirements are all Fulfilled (or requirements pass was skipped) AND no Blocked or Risky integrations → overall verdict is FEASIBLE
75
- - Rationale: {IF requirements pass completed:} the stack can support the architecture as described — all requirements fully fulfilled. {IF requirements pass was skipped:} the stack can support the architecture as described — requirements were not evaluated (no PRD provided)
76
-
77
- **Post-verdict: Zero integration pairs guard (apply after ANY verdict):**
78
- If zero integration pairs were extracted (all four integration counts are 0) AND the architecture document references 2+ technologies:
79
- - If the verdict was FEASIBLE, override to CONDITIONALLY FEASIBLE
80
- - Regardless of verdict, append this note to the rationale: "No integration claims were found in the architecture document prose. Manual review recommended to confirm that technology relationships are not documented exclusively in diagrams or implied without explicit co-mention."
81
-
82
- Store the verdict for use in the report.
83
-
84
- ### 2. Generate Prescriptive Recommendations
85
-
86
- For each non-verified finding across all passes, generate an actionable next step:
87
-
88
- **Missing skill (from Step 02):**
89
- - "Run **[CS] Create Skill** or **[QS] Quick Skill** for `{library_name}`, then re-run **[VS]** to verify coverage."
90
-
91
- **Risky integration (from Step 03):**
92
- - If protocol mismatch → "Consider adding a bridge layer between `{lib_a}` and `{lib_b}` (e.g., HTTP adapter, message queue). Document the bridge in the architecture."
93
- - If type incompatibility → "Add a serialization/conversion layer between `{lib_a}` and `{lib_b}` to resolve the type mismatch identified in their API surfaces."
94
- - If weak evidence → "Add cross-references between `{lib_a}` and `{lib_b}` skills by re-running **[CS]** with integration context."
95
-
96
- **Blocked integration (from Step 03):**
97
- - If language barrier → "Replace `{lib_a}` with a `{lib_b_language}`-compatible alternative, or introduce an IPC/FFI bridge. Redesign the integration path in the architecture document."
98
- - If fundamental incompatibility → "Replace `{blocked_lib}` with an alternative that is compatible with `{other_lib}` in the same domain, or redesign the integration path in the architecture document."
99
-
100
- **Not Addressed requirement (from Step 04):**
101
- - "No library in the stack covers `{requirement}`. Evaluate `{category}` libraries that provide this capability, generate a skill, then re-run **[VS]**."
102
-
103
- **Partially Fulfilled requirement (from Step 04):**
104
- - "Gap in `{requirement}`: {what_is_missing}. Consider extending `{contributing_skill}` or adding a dedicated library."
105
-
106
- **Zero integration pairs (from Step 03):**
107
- - If zero integration pairs were found AND the architecture references 2+ technologies: "No integration claims were found in the architecture document prose. Add explicit prose descriptions of how your technologies interact (not only in diagrams), then re-run **[VS]** to verify integrations."
108
-
109
- ### 3. Check for Previous Report
110
-
111
- Check if a `previous_report` path was recorded in the current report's frontmatter. Since the current workflow run overwrites the report starting in Step 01, the delta feature requires the user to have saved a copy before re-running [VS].
112
-
113
- **Note:** The delta feature is only available when the user has manually backed up a prior report and provided the path. To enable delta comparisons, instruct the user to copy their feasibility report (e.g., `feasibility-report-{project_name}-v1.md`) before re-running [VS], then provide the backup path when prompted in Step 01.
114
-
115
- **If a previous report is found:**
116
- - Load its verdict, coverage percentage, and integration verdicts
117
- - Generate a delta comparison:
118
- - **Improved items:** findings that were Risky/Blocked/Missing and are now Verified/Covered
119
- - **Regressed items:** findings that were Verified/Covered and are now Risky/Blocked/Missing
120
- - **New items:** findings not present in the previous report
121
- - **Unchanged items:** count of findings with the same verdict
122
-
123
- **If no previous report found:**
124
- - Note: "First verification run — no delta available."
125
-
126
- ### 4. Compile Synthesis Section
127
-
128
- Assemble the following for the report:
129
-
130
- **Overall verdict** with rationale citing the decision logic.
131
-
132
- **Recommendation list** ordered by priority (count total recommendations as `recommendation_count` — persist this count to `{outputFile}` frontmatter for use in step-06):
133
- 1. Blocked integrations (if any)
134
- 2. Missing skills
135
- 3. Risky integrations
136
- 4. Not Addressed requirements
137
- 5. Partially Fulfilled requirements
138
-
139
- **Delta from previous run** (if applicable):
140
- - Improved, regressed, new, unchanged counts
141
- - Specific items that changed
142
-
143
- **Suggested next workflow:**
144
- - FEASIBLE → "Proceed to **[RA] Refine Architecture** to produce an implementation-ready architecture, then **[SS]** to compose your stack skill, then **[TS]** to test and **[EX]** to export."
145
- - CONDITIONALLY FEASIBLE → "Address the {recommendation_count} recommendations above, then re-run **[VS]**. Once all clear, proceed to **[RA]**."
146
- - NOT FEASIBLE → "Critical blockers must be resolved before proceeding. Apply the recommendations above and re-run **[VS]**."
147
-
148
- ### 5. Append to Report
149
-
150
- Write the **Synthesis & Recommendations** section to `{outputFile}`:
151
- - Include overall verdict with rationale
152
- - Include prioritized recommendation list
153
- - Include delta from previous run (if applicable)
154
- - Include suggested next workflow
155
- - **Replace the body placeholder** in the `## Overall Verdict` section: replace `{FEASIBLE / CONDITIONALLY FEASIBLE / NOT FEASIBLE}` and `{1-2 sentence summary}` with the actual calculated verdict and rationale text
156
- - Update frontmatter: append `'step-05-synthesize'` to `stepsCompleted`
157
- - Set `overall_verdict` to the calculated verdict
158
- - Set `recommendation_count` to the total number of recommendations
159
- - If delta was computed (section 3), set `delta_improved`, `delta_regressed`, `delta_new`, `delta_unchanged` in frontmatter to the respective counts
160
- - Verify that `integrations_verified`, `integrations_plausible`, `integrations_risky`, `integrations_blocked` in frontmatter match the counts from Step 03 (these were set in Step 03). If a discrepancy is found, overwrite the frontmatter counts with the values from Step 03 — the report file is the system of record
161
-
162
- ### 6. Auto-Proceed to Next Step
163
-
164
- "**Proceeding to final report presentation...**"
165
-
166
- Load, read the full file and then execute `{nextStepFile}`.
167
-
168
- ---
169
-
170
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
171
-
172
- ### ✅ SUCCESS:
173
-
174
- - Overall verdict calculated using the exact decision logic (not subjective judgment)
175
- - Every non-verified finding has a specific, actionable recommendation
176
- - Recommendations name concrete tools ([CS], [QS], [VS], [RA]) and specific libraries
177
- - Previous report delta generated if applicable
178
- - Synthesis section appended to {outputFile} with verdict, recommendations, and next workflow
179
- - Frontmatter updated with overall_verdict and metric counts
180
- - Auto-proceeded to step 06
181
-
182
- ### ❌ SYSTEM FAILURE:
183
-
184
- - Subjective or vague overall verdict not following the decision logic
185
- - Recommendations without specific actions ("improve the integration")
186
- - Not checking for previous report
187
- - Discovering new findings or re-analyzing skills
188
- - Presenting the full report to the user (that is Step 06)
189
- - Hardcoded paths instead of frontmatter variables
190
-
191
- **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
@@ -1,197 +0,0 @@
1
- ---
2
- name: 'step-06-report'
3
- description: 'Present the final feasibility report to the user with verdict, findings, and next steps'
4
-
5
- outputFile: '{forge_data_folder}/feasibility-report-{project_name}.md'
6
- ---
7
-
8
- # Step 6: Present Report
9
-
10
- ## STEP GOAL:
11
-
12
- Present the complete feasibility report to the user. Display the overall verdict prominently, walk through key findings from each analysis pass, present actionable next steps based on the verdict, and offer the user options to review the full report or exit.
13
-
14
- ## MANDATORY EXECUTION RULES (READ FIRST):
15
-
16
- ### Universal Rules:
17
-
18
- - 📖 CRITICAL: Read the complete step file before taking any action
19
- - ⚙️ TOOL/SUBPROCESS FALLBACK: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
20
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
21
-
22
- ### Role Reinforcement:
23
-
24
- - ✅ You are a stack verification analyst delivering the final report
25
- - ✅ Present findings clearly and concisely — the user needs to make decisions
26
- - ✅ Next step recommendations must match the verdict exactly
27
-
28
- ### Step-Specific Rules:
29
-
30
- - 🎯 Focus ONLY on presenting the completed report — no new analysis
31
- - 🚫 FORBIDDEN to discover new findings, re-analyze skills, or change verdicts
32
- - 🚫 FORBIDDEN to modify the report content — only read and present
33
- - 📋 This is the FINAL step — no nextStepFile
34
-
35
- ## EXECUTION PROTOCOLS:
36
-
37
- - 🎯 Load and present the complete feasibility report
38
- - 💾 No new content written — report was finalized in Step 05
39
- - 📖 Present summary, detailed findings, and next steps clearly
40
- - 🚫 Read-only presentation — do not alter report data
41
-
42
- ## CONTEXT BOUNDARIES:
43
-
44
- - Available: Complete {outputFile} with all sections from Steps 01-05
45
- - Focus: Clear, actionable presentation of findings
46
- - Limits: Do not add new analysis or change any verdicts
47
- - Dependencies: All previous steps must be complete (Steps 01-05)
48
-
49
- ## MANDATORY SEQUENCE
50
-
51
- **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
52
-
53
- ### 1. Load Complete Report
54
-
55
- Read the entire `{outputFile}` to have all data available for presentation.
56
-
57
- Verify all expected sections are present: Coverage Matrix, Integration Verdicts, Requirements Coverage (or skipped notation), Synthesis & Recommendations.
58
-
59
- **Extract metrics from frontmatter:** Read `skills_analyzed`, `coverage_percentage`, `integrations_verified` (as `verified_count`), `integrations_plausible` (as `plausible_count`), `integrations_risky` (as `risky_count`), `integrations_blocked` (as `blocked_count`), `requirements_fulfilled` (as `fulfilled_count`), `requirements_partial` (as `partial_count`), `requirements_not_addressed` (as `not_addressed_count`), `requirements_pass`, `overall_verdict`, and `recommendation_count`. Use these mapped display names in the summary table and next steps below.
60
-
61
- ### 2. Present Summary
62
-
63
- "**Verify Stack — Feasibility Report**
64
-
65
- ---
66
-
67
- **Overall Verdict: {FEASIBLE / CONDITIONALLY FEASIBLE / NOT FEASIBLE}**
68
-
69
- | Metric | Value |
70
- |--------|-------|
71
- | **Skills Analyzed** | {skills_analyzed} |
72
- | **Coverage** | {coverage_percentage}% |
73
- | **Integrations Verified** | {verified_count} |
74
- | **Integrations Plausible** | {plausible_count} |
75
- | **Integrations Risky** | {risky_count} |
76
- | **Integrations Blocked** | {blocked_count} |
77
- | **Requirements Fulfilled** | {fulfilled_count or 'N/A — no PRD'} |
78
- | **Requirements Partially Fulfilled** | {partial_count or 'N/A — no PRD'} |
79
- | **Requirements Not Addressed** | {not_addressed_count or 'N/A — no PRD'} |
80
-
81
- {IF delta_improved is not null (delta from previous run exists):}
82
- **Delta from Previous Run:**
83
- - Improved: {delta_improved} items
84
- - Regressed: {delta_regressed} items
85
- - New: {delta_new} items
86
- - Unchanged: {delta_unchanged} items
87
-
88
- ---"
89
-
90
- ### 3. Present Detailed Findings
91
-
92
- Walk through each section briefly, focusing on items that need attention:
93
-
94
- "**Coverage Highlights:**
95
- {IF 100% coverage:}
96
- - All referenced technologies have a matching skill
97
-
98
- {IF any missing:}
99
- - **Missing:** {list of missing technology names}
100
-
101
- **Integration Verdicts:**
102
- {IF all Verified/Plausible:}
103
- - All integration pairs verified or plausible — no blockers
104
-
105
- {IF any Risky:}
106
- - **Risky:** {list of risky pairs with brief concern}
107
-
108
- {IF any Blocked:}
109
- - **Blocked:** {list of blocked pairs with brief incompatibility}
110
-
111
- {IF requirements pass completed:}
112
- **Requirements Gaps:**
113
- {IF all Fulfilled:}
114
- - All stated requirements addressed by the stack
115
-
116
- {IF any Partially Fulfilled:}
117
- - **Partially Fulfilled:** {list of partially covered requirements with gap description}
118
-
119
- {IF any Not Addressed:}
120
- - **Not Addressed:** {list of unaddressed requirements}"
121
-
122
- ### 4. Present Next Steps
123
-
124
- Based on the overall verdict, present the appropriate recommendation:
125
-
126
- **IF FEASIBLE:**
127
- "**Your stack is verified.** All technologies are covered, integrations are compatible, and requirements are all fulfilled (or requirements pass was skipped).
128
-
129
- **Recommended next steps:**
130
- 1. **[RA] Refine Architecture** — Produce an implementation-ready architecture document enriched with skill-backed API details
131
- 2. **[SS] Create Stack Skill** — compose your individual skills into a unified stack skill, providing the refined architecture doc when prompted
132
- 3. **[TS] Test Skill** → **[EX] Export Skill** — Verify completeness and package for distribution"
133
-
134
- **IF CONDITIONALLY FEASIBLE:**
135
- "**Your stack is conditionally feasible.** There are {recommendation_count} items to address before proceeding.
136
-
137
- **Required actions:**
138
- {List the specific recommendations from Step 05 synthesis}
139
-
140
- **After addressing these items:** Re-run **[VS] Verify Stack** to confirm resolution, then proceed to **[RA]**."
141
-
142
- **IF NOT FEASIBLE:**
143
- "**Critical blockers must be resolved.** The stack cannot support the architecture as described.
144
-
145
- **Critical actions:**
146
- {List the blocked integration recommendations and missing skill actions from Step 05}
147
-
148
- **After resolving blockers:** Re-run **[VS] Verify Stack**. Repeat until verdict improves to FEASIBLE or CONDITIONALLY FEASIBLE."
149
-
150
- ### 5. Present Menu
151
-
152
- Display: "**[R] Review full report** | **[X] Exit verification**"
153
-
154
- #### Menu Handling Logic:
155
-
156
- - **IF R:** Walk through the report section by section, presenting each section's content from {outputFile} in a readable format. After completing the walkthrough, redisplay the menu. (Note: the R walkthrough loop terminates only when the user selects X.)
157
- - **IF X:** "**Feasibility report saved to:** `{outputFile}`
158
-
159
- Re-run **[VS] Verify Stack** anytime after making changes to your skills or architecture document.
160
-
161
- **Verification workflow complete.**"
162
-
163
- #### EXECUTION RULES:
164
-
165
- - ALWAYS halt and wait for user input after presenting the menu
166
- - R may be selected multiple times — always walk through the full report
167
- - X ends the workflow
168
-
169
- ## CRITICAL STEP COMPLETION NOTE
170
-
171
- This is the final step of the verify-stack workflow. When the user selects X, the workflow is complete. The feasibility report at `{outputFile}` contains the full analysis: Coverage Matrix, Integration Verdicts, Requirements Coverage, and Synthesis & Recommendations.
172
-
173
- ---
174
-
175
- ## 🚨 SYSTEM SUCCESS/FAILURE METRICS
176
-
177
- ### ✅ SUCCESS:
178
-
179
- - Complete report loaded and verified for section completeness
180
- - Overall verdict displayed prominently with key metrics
181
- - Delta from previous run shown if applicable
182
- - Detailed findings presented with focus on risky/blocked/missing items
183
- - Next steps match the verdict exactly (FEASIBLE/CONDITIONALLY FEASIBLE/NOT FEASIBLE)
184
- - Menu presented with R and X options
185
- - Report walkthrough available on R selection
186
- - Workflow exits cleanly on X with saved file path
187
-
188
- ### ❌ SYSTEM FAILURE:
189
-
190
- - Discovering new findings or changing verdicts in this step
191
- - Modifying the report content
192
- - Next step recommendations that do not match the verdict
193
- - Not presenting the menu
194
- - Not displaying the report save path on exit
195
- - Hardcoded paths instead of frontmatter variables
196
-
197
- **Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.
@@ -1,61 +0,0 @@
1
- ---
2
- name: verify-stack
3
- description: Validate tech stack feasibility against architecture and PRD documents
4
- web_bundle: true
5
- installed_path: '{project-root}/_bmad/skf/workflows/skillforge/verify-stack'
6
- ---
7
-
8
- # Verify Stack
9
-
10
- **Goal:** Cross-reference generated skills against architecture and PRD documents to produce a feasibility report with evidence-backed integration verdicts, coverage analysis, and requirements mapping.
11
-
12
- **Your Role:** In addition to your name, communication_style, and persona, you are also a stack feasibility analyst and integration verifier operating in Ferris Audit mode. You bring expertise in API surface analysis, cross-library compatibility assessment, and architecture validation, while the user brings their architecture vision and generated skills. Execute with analytical precision — every verdict must cite evidence from the generated skills.
13
-
14
- ---
15
-
16
- ## WORKFLOW ARCHITECTURE
17
-
18
- This uses **step-file architecture** for disciplined execution:
19
-
20
- ### Core Principles
21
-
22
- - **Micro-file Design**: Each step is a self-contained instruction file that must be followed exactly
23
- - **Just-In-Time Loading**: Only the current step file is in memory — never load future step files until told to do so
24
- - **Sequential Enforcement**: Sequence within the step files must be completed in order, no skipping or optimization allowed
25
- - **Read-Only Analysis**: This workflow never modifies skills or input documents — it only reads and produces a feasibility report
26
- - **Evidence-Backed Verdicts**: Every integration verdict must cite specific APIs, types, or function signatures from the generated skills
27
-
28
- ### Step Processing Rules
29
-
30
- 1. **READ COMPLETELY**: Always read the entire step file before taking any action
31
- 2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
32
- 3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
33
- 4. **CHECK CONTINUATION**: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue)
34
- 5. **LOAD NEXT**: When directed, load, read entire file, then execute the next step file
35
-
36
- ### Critical Rules (NO EXCEPTIONS)
37
-
38
- - 🛑 **NEVER** load multiple step files simultaneously
39
- - 📖 **ALWAYS** read entire step file before execution
40
- - 🚫 **NEVER** skip steps or optimize the sequence
41
- - 🎯 **ALWAYS** follow the exact instructions in the step file
42
- - ⏸️ **ALWAYS** halt at menus and wait for user input
43
- - 📋 **NEVER** create mental todo lists from future steps
44
- - ⚙️ **TOOL/SUBPROCESS FALLBACK**: If any instruction references a subprocess, subagent, or tool you do not have access to, you MUST still achieve the outcome in your main context thread
45
- - ✅ YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}`
46
- - 🔒 **READ-ONLY**: This workflow NEVER modifies skills, architecture docs, or PRD files
47
-
48
- ---
49
-
50
- ## INITIALIZATION SEQUENCE
51
-
52
- ### 1. Module Configuration Loading
53
-
54
- Load and read full config from {project-root}/_bmad/skf/config.yaml and resolve:
55
-
56
- - `project_name`, `user_name`, `communication_language`
57
- - `skills_output_folder`, `forge_data_folder`, `document_output_language`
58
-
59
- ### 2. First Step Execution
60
-
61
- Load, read the full file and then execute `./steps-c/step-01-init.md` to begin the workflow.