mustflow 1.18.16 → 1.30.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 (303) hide show
  1. package/README.md +16 -6
  2. package/dist/cli/commands/adapters.js +90 -0
  3. package/dist/cli/commands/classify.js +3 -4
  4. package/dist/cli/commands/contract-lint.js +26 -6
  5. package/dist/cli/commands/dashboard.js +103 -4
  6. package/dist/cli/commands/explain-verify.js +213 -0
  7. package/dist/cli/commands/explain.js +48 -4
  8. package/dist/cli/commands/handoff.js +136 -0
  9. package/dist/cli/commands/run.js +97 -136
  10. package/dist/cli/commands/update.js +91 -61
  11. package/dist/cli/commands/verify.js +230 -137
  12. package/dist/cli/i18n/en.js +65 -4
  13. package/dist/cli/i18n/es.js +65 -4
  14. package/dist/cli/i18n/fr.js +65 -4
  15. package/dist/cli/i18n/hi.js +65 -4
  16. package/dist/cli/i18n/ko.js +65 -4
  17. package/dist/cli/i18n/zh.js +65 -4
  18. package/dist/cli/index.js +11 -0
  19. package/dist/cli/lib/command-registry.js +10 -0
  20. package/dist/cli/lib/dashboard-export.js +775 -0
  21. package/dist/cli/lib/local-index.js +22 -6
  22. package/dist/cli/lib/run-plan.js +222 -0
  23. package/dist/cli/lib/templates.js +18 -3
  24. package/dist/cli/lib/update-diff-preview.js +163 -0
  25. package/dist/cli/lib/validation.js +22 -0
  26. package/dist/core/adapter-compatibility.js +235 -0
  27. package/dist/core/change-classification.js +9 -0
  28. package/dist/core/change-verification.js +10 -3
  29. package/dist/core/check-issues.js +4 -0
  30. package/dist/core/command-contract-validation.js +14 -0
  31. package/dist/core/command-cwd.js +18 -6
  32. package/dist/core/command-env.js +91 -0
  33. package/dist/core/contract-lint.js +165 -3
  34. package/dist/core/contract-models.js +172 -0
  35. package/dist/core/dashboard-verification.js +2 -0
  36. package/dist/core/doc-review-triage.js +1 -0
  37. package/dist/core/handoff-record.js +376 -0
  38. package/dist/core/public-json-contracts.js +16 -0
  39. package/dist/core/run-receipt.js +46 -7
  40. package/dist/core/run-write-drift.js +180 -0
  41. package/dist/core/secret-redaction.js +39 -0
  42. package/dist/core/source-anchors.js +3 -5
  43. package/dist/core/verification-decision-graph.js +223 -0
  44. package/package.json +3 -1
  45. package/schemas/README.md +11 -4
  46. package/schemas/adapter-compatibility-report.schema.json +184 -0
  47. package/schemas/change-verification-report.schema.json +133 -1
  48. package/schemas/commands.schema.json +8 -1
  49. package/schemas/contract-lint-report.schema.json +48 -0
  50. package/schemas/explain-report.schema.json +265 -2
  51. package/schemas/handoff-validation-report.schema.json +68 -0
  52. package/schemas/run-receipt.schema.json +74 -1
  53. package/templates/default/common/.mustflow/config/commands.toml +2 -0
  54. package/templates/default/i18n.toml +78 -234
  55. package/templates/default/locales/en/.mustflow/skills/INDEX.md +7 -3
  56. package/templates/default/locales/en/.mustflow/skills/architecture-deepening-review/SKILL.md +154 -0
  57. package/templates/default/locales/en/.mustflow/skills/behavior-preserving-refactor/SKILL.md +8 -3
  58. package/templates/default/locales/en/.mustflow/skills/code-review/SKILL.md +9 -4
  59. package/templates/default/locales/en/.mustflow/skills/date-number-audit/SKILL.md +19 -4
  60. package/templates/default/locales/en/.mustflow/skills/diff-risk-review/SKILL.md +4 -2
  61. package/templates/default/locales/en/.mustflow/skills/external-skill-intake/SKILL.md +141 -0
  62. package/templates/default/locales/en/.mustflow/skills/release-notes-authoring/SKILL.md +143 -0
  63. package/templates/default/locales/en/.mustflow/skills/repro-first-debug/SKILL.md +22 -8
  64. package/templates/default/locales/en/.mustflow/skills/skill-authoring/SKILL.md +3 -3
  65. package/templates/default/locales/en/.mustflow/skills/source-freshness-check/SKILL.md +22 -9
  66. package/templates/default/locales/en/.mustflow/skills/ui-quality-gate/SKILL.md +21 -13
  67. package/templates/default/locales/en/.mustflow/skills/vertical-slice-tdd/SKILL.md +167 -0
  68. package/templates/default/manifest.toml +16 -1
  69. package/templates/default/locales/es/.mustflow/skills/INDEX.md +0 -75
  70. package/templates/default/locales/es/.mustflow/skills/adapter-boundary/SKILL.md +0 -193
  71. package/templates/default/locales/es/.mustflow/skills/artifact-integrity-check/SKILL.md +0 -114
  72. package/templates/default/locales/es/.mustflow/skills/behavior-preserving-refactor/SKILL.md +0 -182
  73. package/templates/default/locales/es/.mustflow/skills/code-review/SKILL.md +0 -115
  74. package/templates/default/locales/es/.mustflow/skills/codebase-orientation/SKILL.md +0 -115
  75. package/templates/default/locales/es/.mustflow/skills/command-pattern/SKILL.md +0 -247
  76. package/templates/default/locales/es/.mustflow/skills/composition-over-inheritance/SKILL.md +0 -176
  77. package/templates/default/locales/es/.mustflow/skills/contract-sync-check/SKILL.md +0 -116
  78. package/templates/default/locales/es/.mustflow/skills/database-change-safety/SKILL.md +0 -155
  79. package/templates/default/locales/es/.mustflow/skills/date-number-audit/SKILL.md +0 -116
  80. package/templates/default/locales/es/.mustflow/skills/dependency-injection/SKILL.md +0 -161
  81. package/templates/default/locales/es/.mustflow/skills/dependency-reality-check/SKILL.md +0 -115
  82. package/templates/default/locales/es/.mustflow/skills/diff-risk-review/SKILL.md +0 -136
  83. package/templates/default/locales/es/.mustflow/skills/docs-prose-review/SKILL.md +0 -119
  84. package/templates/default/locales/es/.mustflow/skills/docs-update/SKILL.md +0 -97
  85. package/templates/default/locales/es/.mustflow/skills/external-prompt-injection-defense/SKILL.md +0 -116
  86. package/templates/default/locales/es/.mustflow/skills/facade-pattern/SKILL.md +0 -210
  87. package/templates/default/locales/es/.mustflow/skills/failure-triage/SKILL.md +0 -97
  88. package/templates/default/locales/es/.mustflow/skills/instruction-conflict-scope-check/SKILL.md +0 -118
  89. package/templates/default/locales/es/.mustflow/skills/line-ending-hygiene/SKILL.md +0 -111
  90. package/templates/default/locales/es/.mustflow/skills/migration-safety-check/SKILL.md +0 -117
  91. package/templates/default/locales/es/.mustflow/skills/multi-agent-work-coordination/SKILL.md +0 -260
  92. package/templates/default/locales/es/.mustflow/skills/null-object-pattern/SKILL.md +0 -196
  93. package/templates/default/locales/es/.mustflow/skills/pattern-scout/SKILL.md +0 -110
  94. package/templates/default/locales/es/.mustflow/skills/performance-budget-check/SKILL.md +0 -121
  95. package/templates/default/locales/es/.mustflow/skills/project-context-authoring/SKILL.md +0 -107
  96. package/templates/default/locales/es/.mustflow/skills/pure-core-imperative-shell/SKILL.md +0 -212
  97. package/templates/default/locales/es/.mustflow/skills/readme-authoring/SKILL.md +0 -115
  98. package/templates/default/locales/es/.mustflow/skills/repo-improvement-loop/SKILL.md +0 -150
  99. package/templates/default/locales/es/.mustflow/skills/repro-first-debug/SKILL.md +0 -112
  100. package/templates/default/locales/es/.mustflow/skills/requirement-regression-guard/SKILL.md +0 -152
  101. package/templates/default/locales/es/.mustflow/skills/result-option/SKILL.md +0 -186
  102. package/templates/default/locales/es/.mustflow/skills/security-privacy-review/SKILL.md +0 -116
  103. package/templates/default/locales/es/.mustflow/skills/security-regression-tests/SKILL.md +0 -131
  104. package/templates/default/locales/es/.mustflow/skills/skill-authoring/SKILL.md +0 -110
  105. package/templates/default/locales/es/.mustflow/skills/source-freshness-check/SKILL.md +0 -111
  106. package/templates/default/locales/es/.mustflow/skills/state-machine-pattern/SKILL.md +0 -214
  107. package/templates/default/locales/es/.mustflow/skills/strategy-pattern/SKILL.md +0 -215
  108. package/templates/default/locales/es/.mustflow/skills/structure-discovery-gate/SKILL.md +0 -159
  109. package/templates/default/locales/es/.mustflow/skills/test-design-guard/SKILL.md +0 -162
  110. package/templates/default/locales/es/.mustflow/skills/test-maintenance/SKILL.md +0 -122
  111. package/templates/default/locales/es/.mustflow/skills/ui-quality-gate/SKILL.md +0 -117
  112. package/templates/default/locales/es/.mustflow/skills/visual-review-artifact/SKILL.md +0 -127
  113. package/templates/default/locales/es/.mustflow/skills/visual-review-artifact/assets/review-template.html +0 -286
  114. package/templates/default/locales/es/.mustflow/skills/visual-review-artifact/resources.toml +0 -7
  115. package/templates/default/locales/es/.mustflow/skills/web-asset-optimization/SKILL.md +0 -108
  116. package/templates/default/locales/fr/.mustflow/skills/INDEX.md +0 -75
  117. package/templates/default/locales/fr/.mustflow/skills/adapter-boundary/SKILL.md +0 -193
  118. package/templates/default/locales/fr/.mustflow/skills/artifact-integrity-check/SKILL.md +0 -114
  119. package/templates/default/locales/fr/.mustflow/skills/behavior-preserving-refactor/SKILL.md +0 -182
  120. package/templates/default/locales/fr/.mustflow/skills/code-review/SKILL.md +0 -115
  121. package/templates/default/locales/fr/.mustflow/skills/codebase-orientation/SKILL.md +0 -115
  122. package/templates/default/locales/fr/.mustflow/skills/command-pattern/SKILL.md +0 -247
  123. package/templates/default/locales/fr/.mustflow/skills/composition-over-inheritance/SKILL.md +0 -176
  124. package/templates/default/locales/fr/.mustflow/skills/contract-sync-check/SKILL.md +0 -116
  125. package/templates/default/locales/fr/.mustflow/skills/database-change-safety/SKILL.md +0 -155
  126. package/templates/default/locales/fr/.mustflow/skills/date-number-audit/SKILL.md +0 -116
  127. package/templates/default/locales/fr/.mustflow/skills/dependency-injection/SKILL.md +0 -161
  128. package/templates/default/locales/fr/.mustflow/skills/dependency-reality-check/SKILL.md +0 -115
  129. package/templates/default/locales/fr/.mustflow/skills/diff-risk-review/SKILL.md +0 -136
  130. package/templates/default/locales/fr/.mustflow/skills/docs-prose-review/SKILL.md +0 -119
  131. package/templates/default/locales/fr/.mustflow/skills/docs-update/SKILL.md +0 -97
  132. package/templates/default/locales/fr/.mustflow/skills/external-prompt-injection-defense/SKILL.md +0 -116
  133. package/templates/default/locales/fr/.mustflow/skills/facade-pattern/SKILL.md +0 -210
  134. package/templates/default/locales/fr/.mustflow/skills/failure-triage/SKILL.md +0 -97
  135. package/templates/default/locales/fr/.mustflow/skills/instruction-conflict-scope-check/SKILL.md +0 -118
  136. package/templates/default/locales/fr/.mustflow/skills/line-ending-hygiene/SKILL.md +0 -111
  137. package/templates/default/locales/fr/.mustflow/skills/migration-safety-check/SKILL.md +0 -117
  138. package/templates/default/locales/fr/.mustflow/skills/multi-agent-work-coordination/SKILL.md +0 -260
  139. package/templates/default/locales/fr/.mustflow/skills/null-object-pattern/SKILL.md +0 -196
  140. package/templates/default/locales/fr/.mustflow/skills/pattern-scout/SKILL.md +0 -110
  141. package/templates/default/locales/fr/.mustflow/skills/performance-budget-check/SKILL.md +0 -121
  142. package/templates/default/locales/fr/.mustflow/skills/project-context-authoring/SKILL.md +0 -107
  143. package/templates/default/locales/fr/.mustflow/skills/pure-core-imperative-shell/SKILL.md +0 -212
  144. package/templates/default/locales/fr/.mustflow/skills/readme-authoring/SKILL.md +0 -115
  145. package/templates/default/locales/fr/.mustflow/skills/repo-improvement-loop/SKILL.md +0 -150
  146. package/templates/default/locales/fr/.mustflow/skills/repro-first-debug/SKILL.md +0 -112
  147. package/templates/default/locales/fr/.mustflow/skills/requirement-regression-guard/SKILL.md +0 -152
  148. package/templates/default/locales/fr/.mustflow/skills/result-option/SKILL.md +0 -186
  149. package/templates/default/locales/fr/.mustflow/skills/security-privacy-review/SKILL.md +0 -116
  150. package/templates/default/locales/fr/.mustflow/skills/security-regression-tests/SKILL.md +0 -131
  151. package/templates/default/locales/fr/.mustflow/skills/skill-authoring/SKILL.md +0 -110
  152. package/templates/default/locales/fr/.mustflow/skills/source-freshness-check/SKILL.md +0 -111
  153. package/templates/default/locales/fr/.mustflow/skills/state-machine-pattern/SKILL.md +0 -214
  154. package/templates/default/locales/fr/.mustflow/skills/strategy-pattern/SKILL.md +0 -215
  155. package/templates/default/locales/fr/.mustflow/skills/structure-discovery-gate/SKILL.md +0 -159
  156. package/templates/default/locales/fr/.mustflow/skills/test-design-guard/SKILL.md +0 -162
  157. package/templates/default/locales/fr/.mustflow/skills/test-maintenance/SKILL.md +0 -122
  158. package/templates/default/locales/fr/.mustflow/skills/ui-quality-gate/SKILL.md +0 -117
  159. package/templates/default/locales/fr/.mustflow/skills/visual-review-artifact/SKILL.md +0 -127
  160. package/templates/default/locales/fr/.mustflow/skills/visual-review-artifact/assets/review-template.html +0 -286
  161. package/templates/default/locales/fr/.mustflow/skills/visual-review-artifact/resources.toml +0 -7
  162. package/templates/default/locales/fr/.mustflow/skills/web-asset-optimization/SKILL.md +0 -108
  163. package/templates/default/locales/hi/.mustflow/skills/INDEX.md +0 -75
  164. package/templates/default/locales/hi/.mustflow/skills/adapter-boundary/SKILL.md +0 -193
  165. package/templates/default/locales/hi/.mustflow/skills/artifact-integrity-check/SKILL.md +0 -114
  166. package/templates/default/locales/hi/.mustflow/skills/behavior-preserving-refactor/SKILL.md +0 -182
  167. package/templates/default/locales/hi/.mustflow/skills/code-review/SKILL.md +0 -115
  168. package/templates/default/locales/hi/.mustflow/skills/codebase-orientation/SKILL.md +0 -115
  169. package/templates/default/locales/hi/.mustflow/skills/command-pattern/SKILL.md +0 -247
  170. package/templates/default/locales/hi/.mustflow/skills/composition-over-inheritance/SKILL.md +0 -176
  171. package/templates/default/locales/hi/.mustflow/skills/contract-sync-check/SKILL.md +0 -116
  172. package/templates/default/locales/hi/.mustflow/skills/database-change-safety/SKILL.md +0 -155
  173. package/templates/default/locales/hi/.mustflow/skills/date-number-audit/SKILL.md +0 -116
  174. package/templates/default/locales/hi/.mustflow/skills/dependency-injection/SKILL.md +0 -161
  175. package/templates/default/locales/hi/.mustflow/skills/dependency-reality-check/SKILL.md +0 -115
  176. package/templates/default/locales/hi/.mustflow/skills/diff-risk-review/SKILL.md +0 -136
  177. package/templates/default/locales/hi/.mustflow/skills/docs-prose-review/SKILL.md +0 -119
  178. package/templates/default/locales/hi/.mustflow/skills/docs-update/SKILL.md +0 -97
  179. package/templates/default/locales/hi/.mustflow/skills/external-prompt-injection-defense/SKILL.md +0 -116
  180. package/templates/default/locales/hi/.mustflow/skills/facade-pattern/SKILL.md +0 -210
  181. package/templates/default/locales/hi/.mustflow/skills/failure-triage/SKILL.md +0 -97
  182. package/templates/default/locales/hi/.mustflow/skills/instruction-conflict-scope-check/SKILL.md +0 -118
  183. package/templates/default/locales/hi/.mustflow/skills/line-ending-hygiene/SKILL.md +0 -111
  184. package/templates/default/locales/hi/.mustflow/skills/migration-safety-check/SKILL.md +0 -117
  185. package/templates/default/locales/hi/.mustflow/skills/multi-agent-work-coordination/SKILL.md +0 -260
  186. package/templates/default/locales/hi/.mustflow/skills/null-object-pattern/SKILL.md +0 -196
  187. package/templates/default/locales/hi/.mustflow/skills/pattern-scout/SKILL.md +0 -110
  188. package/templates/default/locales/hi/.mustflow/skills/performance-budget-check/SKILL.md +0 -121
  189. package/templates/default/locales/hi/.mustflow/skills/project-context-authoring/SKILL.md +0 -107
  190. package/templates/default/locales/hi/.mustflow/skills/pure-core-imperative-shell/SKILL.md +0 -212
  191. package/templates/default/locales/hi/.mustflow/skills/readme-authoring/SKILL.md +0 -115
  192. package/templates/default/locales/hi/.mustflow/skills/repo-improvement-loop/SKILL.md +0 -150
  193. package/templates/default/locales/hi/.mustflow/skills/repro-first-debug/SKILL.md +0 -112
  194. package/templates/default/locales/hi/.mustflow/skills/requirement-regression-guard/SKILL.md +0 -152
  195. package/templates/default/locales/hi/.mustflow/skills/result-option/SKILL.md +0 -186
  196. package/templates/default/locales/hi/.mustflow/skills/security-privacy-review/SKILL.md +0 -116
  197. package/templates/default/locales/hi/.mustflow/skills/security-regression-tests/SKILL.md +0 -131
  198. package/templates/default/locales/hi/.mustflow/skills/skill-authoring/SKILL.md +0 -110
  199. package/templates/default/locales/hi/.mustflow/skills/source-freshness-check/SKILL.md +0 -111
  200. package/templates/default/locales/hi/.mustflow/skills/state-machine-pattern/SKILL.md +0 -214
  201. package/templates/default/locales/hi/.mustflow/skills/strategy-pattern/SKILL.md +0 -215
  202. package/templates/default/locales/hi/.mustflow/skills/structure-discovery-gate/SKILL.md +0 -159
  203. package/templates/default/locales/hi/.mustflow/skills/test-design-guard/SKILL.md +0 -162
  204. package/templates/default/locales/hi/.mustflow/skills/test-maintenance/SKILL.md +0 -122
  205. package/templates/default/locales/hi/.mustflow/skills/ui-quality-gate/SKILL.md +0 -117
  206. package/templates/default/locales/hi/.mustflow/skills/visual-review-artifact/SKILL.md +0 -127
  207. package/templates/default/locales/hi/.mustflow/skills/visual-review-artifact/assets/review-template.html +0 -286
  208. package/templates/default/locales/hi/.mustflow/skills/visual-review-artifact/resources.toml +0 -7
  209. package/templates/default/locales/hi/.mustflow/skills/web-asset-optimization/SKILL.md +0 -108
  210. package/templates/default/locales/ko/.mustflow/skills/INDEX.md +0 -80
  211. package/templates/default/locales/ko/.mustflow/skills/adapter-boundary/SKILL.md +0 -193
  212. package/templates/default/locales/ko/.mustflow/skills/artifact-integrity-check/SKILL.md +0 -114
  213. package/templates/default/locales/ko/.mustflow/skills/behavior-preserving-refactor/SKILL.md +0 -182
  214. package/templates/default/locales/ko/.mustflow/skills/code-review/SKILL.md +0 -118
  215. package/templates/default/locales/ko/.mustflow/skills/codebase-orientation/SKILL.md +0 -115
  216. package/templates/default/locales/ko/.mustflow/skills/command-pattern/SKILL.md +0 -247
  217. package/templates/default/locales/ko/.mustflow/skills/composition-over-inheritance/SKILL.md +0 -176
  218. package/templates/default/locales/ko/.mustflow/skills/contract-sync-check/SKILL.md +0 -116
  219. package/templates/default/locales/ko/.mustflow/skills/database-change-safety/SKILL.md +0 -155
  220. package/templates/default/locales/ko/.mustflow/skills/date-number-audit/SKILL.md +0 -116
  221. package/templates/default/locales/ko/.mustflow/skills/dependency-injection/SKILL.md +0 -161
  222. package/templates/default/locales/ko/.mustflow/skills/dependency-reality-check/SKILL.md +0 -115
  223. package/templates/default/locales/ko/.mustflow/skills/diff-risk-review/SKILL.md +0 -136
  224. package/templates/default/locales/ko/.mustflow/skills/docs-prose-review/SKILL.md +0 -119
  225. package/templates/default/locales/ko/.mustflow/skills/docs-update/SKILL.md +0 -107
  226. package/templates/default/locales/ko/.mustflow/skills/external-prompt-injection-defense/SKILL.md +0 -116
  227. package/templates/default/locales/ko/.mustflow/skills/facade-pattern/SKILL.md +0 -210
  228. package/templates/default/locales/ko/.mustflow/skills/failure-triage/SKILL.md +0 -119
  229. package/templates/default/locales/ko/.mustflow/skills/instruction-conflict-scope-check/SKILL.md +0 -118
  230. package/templates/default/locales/ko/.mustflow/skills/line-ending-hygiene/SKILL.md +0 -111
  231. package/templates/default/locales/ko/.mustflow/skills/migration-safety-check/SKILL.md +0 -117
  232. package/templates/default/locales/ko/.mustflow/skills/multi-agent-work-coordination/SKILL.md +0 -259
  233. package/templates/default/locales/ko/.mustflow/skills/null-object-pattern/SKILL.md +0 -196
  234. package/templates/default/locales/ko/.mustflow/skills/pattern-scout/SKILL.md +0 -110
  235. package/templates/default/locales/ko/.mustflow/skills/performance-budget-check/SKILL.md +0 -121
  236. package/templates/default/locales/ko/.mustflow/skills/project-context-authoring/SKILL.md +0 -107
  237. package/templates/default/locales/ko/.mustflow/skills/pure-core-imperative-shell/SKILL.md +0 -212
  238. package/templates/default/locales/ko/.mustflow/skills/readme-authoring/SKILL.md +0 -115
  239. package/templates/default/locales/ko/.mustflow/skills/repo-improvement-loop/SKILL.md +0 -150
  240. package/templates/default/locales/ko/.mustflow/skills/repro-first-debug/SKILL.md +0 -112
  241. package/templates/default/locales/ko/.mustflow/skills/requirement-regression-guard/SKILL.md +0 -152
  242. package/templates/default/locales/ko/.mustflow/skills/result-option/SKILL.md +0 -186
  243. package/templates/default/locales/ko/.mustflow/skills/security-privacy-review/SKILL.md +0 -116
  244. package/templates/default/locales/ko/.mustflow/skills/security-regression-tests/SKILL.md +0 -131
  245. package/templates/default/locales/ko/.mustflow/skills/skill-authoring/SKILL.md +0 -110
  246. package/templates/default/locales/ko/.mustflow/skills/source-freshness-check/SKILL.md +0 -111
  247. package/templates/default/locales/ko/.mustflow/skills/state-machine-pattern/SKILL.md +0 -214
  248. package/templates/default/locales/ko/.mustflow/skills/strategy-pattern/SKILL.md +0 -215
  249. package/templates/default/locales/ko/.mustflow/skills/structure-discovery-gate/SKILL.md +0 -159
  250. package/templates/default/locales/ko/.mustflow/skills/test-design-guard/SKILL.md +0 -162
  251. package/templates/default/locales/ko/.mustflow/skills/test-maintenance/SKILL.md +0 -130
  252. package/templates/default/locales/ko/.mustflow/skills/ui-quality-gate/SKILL.md +0 -117
  253. package/templates/default/locales/ko/.mustflow/skills/visual-review-artifact/SKILL.md +0 -127
  254. package/templates/default/locales/ko/.mustflow/skills/visual-review-artifact/assets/review-template.html +0 -286
  255. package/templates/default/locales/ko/.mustflow/skills/visual-review-artifact/resources.toml +0 -7
  256. package/templates/default/locales/ko/.mustflow/skills/web-asset-optimization/SKILL.md +0 -108
  257. package/templates/default/locales/zh/.mustflow/skills/INDEX.md +0 -74
  258. package/templates/default/locales/zh/.mustflow/skills/adapter-boundary/SKILL.md +0 -193
  259. package/templates/default/locales/zh/.mustflow/skills/artifact-integrity-check/SKILL.md +0 -114
  260. package/templates/default/locales/zh/.mustflow/skills/behavior-preserving-refactor/SKILL.md +0 -182
  261. package/templates/default/locales/zh/.mustflow/skills/code-review/SKILL.md +0 -115
  262. package/templates/default/locales/zh/.mustflow/skills/codebase-orientation/SKILL.md +0 -115
  263. package/templates/default/locales/zh/.mustflow/skills/command-pattern/SKILL.md +0 -247
  264. package/templates/default/locales/zh/.mustflow/skills/composition-over-inheritance/SKILL.md +0 -176
  265. package/templates/default/locales/zh/.mustflow/skills/contract-sync-check/SKILL.md +0 -116
  266. package/templates/default/locales/zh/.mustflow/skills/database-change-safety/SKILL.md +0 -155
  267. package/templates/default/locales/zh/.mustflow/skills/date-number-audit/SKILL.md +0 -116
  268. package/templates/default/locales/zh/.mustflow/skills/dependency-injection/SKILL.md +0 -161
  269. package/templates/default/locales/zh/.mustflow/skills/dependency-reality-check/SKILL.md +0 -115
  270. package/templates/default/locales/zh/.mustflow/skills/diff-risk-review/SKILL.md +0 -136
  271. package/templates/default/locales/zh/.mustflow/skills/docs-prose-review/SKILL.md +0 -119
  272. package/templates/default/locales/zh/.mustflow/skills/docs-update/SKILL.md +0 -97
  273. package/templates/default/locales/zh/.mustflow/skills/external-prompt-injection-defense/SKILL.md +0 -116
  274. package/templates/default/locales/zh/.mustflow/skills/facade-pattern/SKILL.md +0 -210
  275. package/templates/default/locales/zh/.mustflow/skills/failure-triage/SKILL.md +0 -96
  276. package/templates/default/locales/zh/.mustflow/skills/instruction-conflict-scope-check/SKILL.md +0 -118
  277. package/templates/default/locales/zh/.mustflow/skills/line-ending-hygiene/SKILL.md +0 -111
  278. package/templates/default/locales/zh/.mustflow/skills/migration-safety-check/SKILL.md +0 -117
  279. package/templates/default/locales/zh/.mustflow/skills/multi-agent-work-coordination/SKILL.md +0 -260
  280. package/templates/default/locales/zh/.mustflow/skills/null-object-pattern/SKILL.md +0 -196
  281. package/templates/default/locales/zh/.mustflow/skills/pattern-scout/SKILL.md +0 -110
  282. package/templates/default/locales/zh/.mustflow/skills/performance-budget-check/SKILL.md +0 -121
  283. package/templates/default/locales/zh/.mustflow/skills/project-context-authoring/SKILL.md +0 -107
  284. package/templates/default/locales/zh/.mustflow/skills/pure-core-imperative-shell/SKILL.md +0 -212
  285. package/templates/default/locales/zh/.mustflow/skills/readme-authoring/SKILL.md +0 -115
  286. package/templates/default/locales/zh/.mustflow/skills/repo-improvement-loop/SKILL.md +0 -150
  287. package/templates/default/locales/zh/.mustflow/skills/repro-first-debug/SKILL.md +0 -112
  288. package/templates/default/locales/zh/.mustflow/skills/requirement-regression-guard/SKILL.md +0 -152
  289. package/templates/default/locales/zh/.mustflow/skills/result-option/SKILL.md +0 -186
  290. package/templates/default/locales/zh/.mustflow/skills/security-privacy-review/SKILL.md +0 -116
  291. package/templates/default/locales/zh/.mustflow/skills/security-regression-tests/SKILL.md +0 -131
  292. package/templates/default/locales/zh/.mustflow/skills/skill-authoring/SKILL.md +0 -110
  293. package/templates/default/locales/zh/.mustflow/skills/source-freshness-check/SKILL.md +0 -111
  294. package/templates/default/locales/zh/.mustflow/skills/state-machine-pattern/SKILL.md +0 -214
  295. package/templates/default/locales/zh/.mustflow/skills/strategy-pattern/SKILL.md +0 -215
  296. package/templates/default/locales/zh/.mustflow/skills/structure-discovery-gate/SKILL.md +0 -159
  297. package/templates/default/locales/zh/.mustflow/skills/test-design-guard/SKILL.md +0 -162
  298. package/templates/default/locales/zh/.mustflow/skills/test-maintenance/SKILL.md +0 -122
  299. package/templates/default/locales/zh/.mustflow/skills/ui-quality-gate/SKILL.md +0 -117
  300. package/templates/default/locales/zh/.mustflow/skills/visual-review-artifact/SKILL.md +0 -127
  301. package/templates/default/locales/zh/.mustflow/skills/visual-review-artifact/assets/review-template.html +0 -286
  302. package/templates/default/locales/zh/.mustflow/skills/visual-review-artifact/resources.toml +0 -7
  303. package/templates/default/locales/zh/.mustflow/skills/web-asset-optimization/SKILL.md +0 -108
@@ -12,7 +12,8 @@
12
12
  "requirements",
13
13
  "candidates",
14
14
  "gaps",
15
- "schedule"
15
+ "schedule",
16
+ "decision_graph"
16
17
  ],
17
18
  "properties": {
18
19
  "schema_version": {
@@ -47,6 +48,9 @@
47
48
  },
48
49
  "schedule": {
49
50
  "$ref": "#/$defs/verificationSchedule"
51
+ },
52
+ "decision_graph": {
53
+ "$ref": "#/$defs/verificationDecisionGraph"
50
54
  }
51
55
  },
52
56
  "$defs": {
@@ -373,6 +377,9 @@
373
377
  "additionalProperties": false,
374
378
  "required": [
375
379
  "source",
380
+ "authority",
381
+ "commandAuthority",
382
+ "grantsCommandAuthority",
376
383
  "status",
377
384
  "databasePath",
378
385
  "indexFresh",
@@ -383,6 +390,9 @@
383
390
  ],
384
391
  "properties": {
385
392
  "source": { "const": "local_index" },
393
+ "authority": { "const": "explanation_only" },
394
+ "commandAuthority": { "const": ".mustflow/config/commands.toml" },
395
+ "grantsCommandAuthority": { "const": false },
386
396
  "status": { "enum": ["fresh", "missing", "stale", "unreadable"] },
387
397
  "databasePath": { "type": "string" },
388
398
  "indexFresh": { "type": "boolean" },
@@ -508,6 +518,128 @@
508
518
  "$ref": "#/$defs/stringArray"
509
519
  }
510
520
  }
521
+ },
522
+ "verificationDecisionGraph": {
523
+ "type": "object",
524
+ "additionalProperties": false,
525
+ "required": ["schema_version", "root", "summary", "nodes", "edges"],
526
+ "properties": {
527
+ "schema_version": {
528
+ "const": "1"
529
+ },
530
+ "root": {
531
+ "const": "verification_decision"
532
+ },
533
+ "summary": {
534
+ "$ref": "#/$defs/verificationDecisionGraphSummary"
535
+ },
536
+ "nodes": {
537
+ "type": "array",
538
+ "items": {
539
+ "$ref": "#/$defs/verificationDecisionGraphNode"
540
+ }
541
+ },
542
+ "edges": {
543
+ "type": "array",
544
+ "items": {
545
+ "$ref": "#/$defs/verificationDecisionGraphEdge"
546
+ }
547
+ }
548
+ }
549
+ },
550
+ "verificationDecisionGraphSummary": {
551
+ "type": "object",
552
+ "additionalProperties": false,
553
+ "required": [
554
+ "nodeCount",
555
+ "edgeCount",
556
+ "runnable",
557
+ "skipped",
558
+ "blocked",
559
+ "manual_only",
560
+ "unknown",
561
+ "gapCount"
562
+ ],
563
+ "properties": {
564
+ "nodeCount": {
565
+ "type": "integer"
566
+ },
567
+ "edgeCount": {
568
+ "type": "integer"
569
+ },
570
+ "runnable": {
571
+ "type": "integer"
572
+ },
573
+ "skipped": {
574
+ "type": "integer"
575
+ },
576
+ "blocked": {
577
+ "type": "integer"
578
+ },
579
+ "manual_only": {
580
+ "type": "integer"
581
+ },
582
+ "unknown": {
583
+ "type": "integer"
584
+ },
585
+ "gapCount": {
586
+ "type": "integer"
587
+ }
588
+ }
589
+ },
590
+ "verificationDecisionGraphNode": {
591
+ "type": "object",
592
+ "additionalProperties": false,
593
+ "required": ["id", "kind", "label", "status", "reason", "intent", "data"],
594
+ "properties": {
595
+ "id": {
596
+ "type": "string"
597
+ },
598
+ "kind": {
599
+ "enum": [
600
+ "changed_surface",
601
+ "classification_reason",
602
+ "command_candidate",
603
+ "eligibility",
604
+ "effect",
605
+ "gap",
606
+ "receipt"
607
+ ]
608
+ },
609
+ "label": {
610
+ "type": "string"
611
+ },
612
+ "status": {
613
+ "type": ["string", "null"],
614
+ "enum": ["runnable", "skipped", "blocked", "manual_only", "unknown", "not_applicable", null]
615
+ },
616
+ "reason": {
617
+ "type": ["string", "null"]
618
+ },
619
+ "intent": {
620
+ "type": ["string", "null"]
621
+ },
622
+ "data": {
623
+ "type": "object",
624
+ "additionalProperties": true
625
+ }
626
+ }
627
+ },
628
+ "verificationDecisionGraphEdge": {
629
+ "type": "object",
630
+ "additionalProperties": false,
631
+ "required": ["from", "to", "kind"],
632
+ "properties": {
633
+ "from": {
634
+ "type": "string"
635
+ },
636
+ "to": {
637
+ "type": "string"
638
+ },
639
+ "kind": {
640
+ "enum": ["supports", "requires", "evaluates", "has_effect", "has_gap"]
641
+ }
642
+ }
511
643
  }
512
644
  }
513
645
  }
@@ -34,7 +34,9 @@
34
34
  "stdin": { "enum": ["closed"] },
35
35
  "max_output_bytes": { "type": "integer" },
36
36
  "on_timeout": { "type": "string" },
37
- "kill_after_seconds": { "type": "integer" }
37
+ "kill_after_seconds": { "type": "integer" },
38
+ "env_policy": { "$ref": "#/$defs/envPolicy" },
39
+ "env_allowlist": { "$ref": "#/$defs/stringArray" }
38
40
  }
39
41
  },
40
42
  "intents": {
@@ -51,6 +53,9 @@
51
53
  "type": "array",
52
54
  "items": { "type": "string" }
53
55
  },
56
+ "envPolicy": {
57
+ "enum": ["inherit", "minimal", "allowlist"]
58
+ },
54
59
  "resource": {
55
60
  "type": "object",
56
61
  "additionalProperties": false,
@@ -98,6 +103,8 @@
98
103
  "writes": {
99
104
  "$ref": "#/$defs/stringArray"
100
105
  },
106
+ "env_policy": { "$ref": "#/$defs/envPolicy" },
107
+ "env_allowlist": { "$ref": "#/$defs/stringArray" },
101
108
  "effects": {
102
109
  "type": "array",
103
110
  "items": { "$ref": "#/$defs/effect" }
@@ -54,6 +54,54 @@
54
54
  "sourceFiles": {
55
55
  "type": "array",
56
56
  "items": { "type": "string" }
57
+ },
58
+ "coverage": {
59
+ "type": "object",
60
+ "additionalProperties": false,
61
+ "required": [
62
+ "knownClassificationReasons",
63
+ "documentedVerificationReasons",
64
+ "requiredAfterReasons",
65
+ "runnableReasons",
66
+ "findings"
67
+ ],
68
+ "properties": {
69
+ "knownClassificationReasons": {
70
+ "type": "array",
71
+ "items": { "type": "string" }
72
+ },
73
+ "documentedVerificationReasons": {
74
+ "type": "array",
75
+ "items": { "type": "string" }
76
+ },
77
+ "requiredAfterReasons": {
78
+ "type": "array",
79
+ "items": { "type": "string" }
80
+ },
81
+ "runnableReasons": {
82
+ "type": "array",
83
+ "items": { "type": "string" }
84
+ },
85
+ "findings": {
86
+ "type": "array",
87
+ "items": {
88
+ "type": "object",
89
+ "additionalProperties": false,
90
+ "required": ["severity", "code", "reason", "intent", "intents", "message"],
91
+ "properties": {
92
+ "severity": { "enum": ["error", "warning"] },
93
+ "code": { "type": "string" },
94
+ "reason": { "type": ["string", "null"] },
95
+ "intent": { "type": ["string", "null"] },
96
+ "intents": {
97
+ "type": "array",
98
+ "items": { "type": "string" }
99
+ },
100
+ "message": { "type": "string" }
101
+ }
102
+ }
103
+ }
104
+ }
57
105
  }
58
106
  }
59
107
  }
@@ -14,7 +14,7 @@
14
14
  "properties": {
15
15
  "schema_version": { "const": "1" },
16
16
  "command": { "const": "explain" },
17
- "topic": { "enum": ["anchor", "asset-optimization", "authority", "command", "retention", "skill", "skills", "surface"] },
17
+ "topic": { "enum": ["anchor", "asset-optimization", "authority", "command", "retention", "skill", "skills", "surface", "verify"] },
18
18
  "mustflow_root": { "type": "string" },
19
19
  "decision": {
20
20
  "oneOf": [
@@ -24,7 +24,8 @@
24
24
  { "$ref": "#/$defs/skillRouteDecision" },
25
25
  { "$ref": "#/$defs/skillRouteAlignmentDecision" },
26
26
  { "$ref": "#/$defs/publicSurfaceDecision" },
27
- { "$ref": "#/$defs/sourceAnchorDecision" }
27
+ { "$ref": "#/$defs/sourceAnchorDecision" },
28
+ { "$ref": "#/$defs/verificationDecision" }
28
29
  ]
29
30
  }
30
31
  },
@@ -362,6 +363,9 @@
362
363
  "additionalProperties": false,
363
364
  "required": [
364
365
  "source",
366
+ "authority",
367
+ "commandAuthority",
368
+ "grantsCommandAuthority",
365
369
  "status",
366
370
  "databasePath",
367
371
  "indexFresh",
@@ -372,6 +376,9 @@
372
376
  ],
373
377
  "properties": {
374
378
  "source": { "const": "local_index" },
379
+ "authority": { "const": "explanation_only" },
380
+ "commandAuthority": { "const": ".mustflow/config/commands.toml" },
381
+ "grantsCommandAuthority": { "const": false },
375
382
  "status": { "enum": ["fresh", "missing", "stale", "unreadable"] },
376
383
  "databasePath": { "type": "string" },
377
384
  "indexFresh": { "type": "boolean" },
@@ -457,6 +464,262 @@
457
464
  }
458
465
  }
459
466
  },
467
+ "verificationDecision": {
468
+ "type": "object",
469
+ "additionalProperties": false,
470
+ "required": [
471
+ "kind",
472
+ "input",
473
+ "decision",
474
+ "reason",
475
+ "effectiveAction",
476
+ "countsAsMustflowVerification",
477
+ "sourceFiles",
478
+ "verification"
479
+ ],
480
+ "properties": {
481
+ "kind": { "const": "verify" },
482
+ "input": {
483
+ "type": "object",
484
+ "additionalProperties": false,
485
+ "required": ["reason", "planSource"],
486
+ "properties": {
487
+ "reason": { "type": ["string", "null"] },
488
+ "planSource": { "type": ["string", "null"] }
489
+ }
490
+ },
491
+ "decision": { "type": "string" },
492
+ "reason": { "type": "string" },
493
+ "effectiveAction": { "type": "string" },
494
+ "countsAsMustflowVerification": { "const": false },
495
+ "sourceFiles": {
496
+ "type": "array",
497
+ "items": { "type": "string" }
498
+ },
499
+ "verification": {
500
+ "type": "object",
501
+ "additionalProperties": false,
502
+ "required": [
503
+ "planSource",
504
+ "reasons",
505
+ "candidateCount",
506
+ "runnableCount",
507
+ "skippedCount",
508
+ "requirements",
509
+ "decisionGraph"
510
+ ],
511
+ "properties": {
512
+ "planSource": { "type": ["string", "null"] },
513
+ "reasons": {
514
+ "type": "array",
515
+ "items": { "type": "string" }
516
+ },
517
+ "candidateCount": { "type": "integer" },
518
+ "runnableCount": { "type": "integer" },
519
+ "skippedCount": { "type": "integer" },
520
+ "requirements": {
521
+ "type": "array",
522
+ "items": { "$ref": "#/$defs/verificationRequirement" }
523
+ },
524
+ "decisionGraph": {
525
+ "$ref": "#/$defs/verificationDecisionGraph"
526
+ }
527
+ }
528
+ }
529
+ }
530
+ },
531
+ "verificationDecisionGraph": {
532
+ "type": "object",
533
+ "additionalProperties": false,
534
+ "required": ["schema_version", "root", "summary", "nodes", "edges"],
535
+ "properties": {
536
+ "schema_version": { "const": "1" },
537
+ "root": { "const": "verification_decision" },
538
+ "summary": { "$ref": "#/$defs/verificationDecisionGraphSummary" },
539
+ "nodes": {
540
+ "type": "array",
541
+ "items": { "$ref": "#/$defs/verificationDecisionGraphNode" }
542
+ },
543
+ "edges": {
544
+ "type": "array",
545
+ "items": { "$ref": "#/$defs/verificationDecisionGraphEdge" }
546
+ }
547
+ }
548
+ },
549
+ "verificationDecisionGraphSummary": {
550
+ "type": "object",
551
+ "additionalProperties": false,
552
+ "required": [
553
+ "nodeCount",
554
+ "edgeCount",
555
+ "runnable",
556
+ "skipped",
557
+ "blocked",
558
+ "manual_only",
559
+ "unknown",
560
+ "gapCount"
561
+ ],
562
+ "properties": {
563
+ "nodeCount": { "type": "integer" },
564
+ "edgeCount": { "type": "integer" },
565
+ "runnable": { "type": "integer" },
566
+ "skipped": { "type": "integer" },
567
+ "blocked": { "type": "integer" },
568
+ "manual_only": { "type": "integer" },
569
+ "unknown": { "type": "integer" },
570
+ "gapCount": { "type": "integer" }
571
+ }
572
+ },
573
+ "verificationDecisionGraphNode": {
574
+ "type": "object",
575
+ "additionalProperties": false,
576
+ "required": ["id", "kind", "label", "status", "reason", "intent", "data"],
577
+ "properties": {
578
+ "id": { "type": "string" },
579
+ "kind": {
580
+ "enum": [
581
+ "changed_surface",
582
+ "classification_reason",
583
+ "command_candidate",
584
+ "eligibility",
585
+ "effect",
586
+ "gap",
587
+ "receipt"
588
+ ]
589
+ },
590
+ "label": { "type": "string" },
591
+ "status": {
592
+ "type": ["string", "null"],
593
+ "enum": ["runnable", "skipped", "blocked", "manual_only", "unknown", "not_applicable", null]
594
+ },
595
+ "reason": { "type": ["string", "null"] },
596
+ "intent": { "type": ["string", "null"] },
597
+ "data": {
598
+ "type": "object",
599
+ "additionalProperties": true
600
+ }
601
+ }
602
+ },
603
+ "verificationDecisionGraphEdge": {
604
+ "type": "object",
605
+ "additionalProperties": false,
606
+ "required": ["from", "to", "kind"],
607
+ "properties": {
608
+ "from": { "type": "string" },
609
+ "to": { "type": "string" },
610
+ "kind": { "enum": ["supports", "requires", "evaluates", "has_effect", "has_gap"] }
611
+ }
612
+ },
613
+ "verificationRequirement": {
614
+ "type": "object",
615
+ "additionalProperties": false,
616
+ "required": ["reason", "matchingIntents", "candidates", "gap"],
617
+ "properties": {
618
+ "reason": { "type": "string" },
619
+ "matchingIntents": {
620
+ "type": "array",
621
+ "items": { "type": "string" }
622
+ },
623
+ "candidates": {
624
+ "type": "array",
625
+ "items": { "$ref": "#/$defs/verificationCandidate" }
626
+ },
627
+ "gap": { "type": ["string", "null"] }
628
+ }
629
+ },
630
+ "verificationCandidate": {
631
+ "type": "object",
632
+ "additionalProperties": false,
633
+ "required": [
634
+ "intent",
635
+ "status",
636
+ "skipReason",
637
+ "detail",
638
+ "requiredAfter",
639
+ "command",
640
+ "effectGraph"
641
+ ],
642
+ "properties": {
643
+ "intent": { "type": ["string", "null"] },
644
+ "status": { "enum": ["runnable", "skipped"] },
645
+ "skipReason": {
646
+ "type": ["string", "null"],
647
+ "enum": [
648
+ "no_matching_intents",
649
+ "intent_not_table",
650
+ "status_not_configured",
651
+ "lifecycle_not_oneshot",
652
+ "run_policy_not_agent_allowed",
653
+ "stdin_not_closed",
654
+ "missing_timeout",
655
+ "missing_command_source",
656
+ "unsafe_intent_name",
657
+ "blocked_shell_background_pattern",
658
+ null
659
+ ]
660
+ },
661
+ "detail": { "type": ["string", "null"] },
662
+ "requiredAfter": {
663
+ "type": "array",
664
+ "items": { "type": "string" }
665
+ },
666
+ "command": {
667
+ "anyOf": [
668
+ { "type": "null" },
669
+ { "$ref": "#/$defs/verificationCommandSummary" }
670
+ ]
671
+ },
672
+ "effectGraph": {
673
+ "anyOf": [
674
+ { "type": "null" },
675
+ { "$ref": "#/$defs/commandEffectGraph" }
676
+ ]
677
+ }
678
+ }
679
+ },
680
+ "verificationCommandSummary": {
681
+ "type": "object",
682
+ "additionalProperties": false,
683
+ "required": [
684
+ "name",
685
+ "status",
686
+ "lifecycle",
687
+ "runPolicy",
688
+ "stdin",
689
+ "timeoutSeconds",
690
+ "mode",
691
+ "cwd",
692
+ "writes",
693
+ "network",
694
+ "destructive",
695
+ "successExitCodes",
696
+ "requiredAfter"
697
+ ],
698
+ "properties": {
699
+ "name": { "type": "string" },
700
+ "status": { "type": ["string", "null"] },
701
+ "lifecycle": { "type": ["string", "null"] },
702
+ "runPolicy": { "type": ["string", "null"] },
703
+ "stdin": { "type": ["string", "null"] },
704
+ "timeoutSeconds": { "type": ["integer", "null"] },
705
+ "mode": { "enum": ["argv", "shell", "missing"] },
706
+ "cwd": { "type": ["string", "null"] },
707
+ "writes": {
708
+ "type": "array",
709
+ "items": { "type": "string" }
710
+ },
711
+ "network": { "type": ["boolean", "null"] },
712
+ "destructive": { "type": ["boolean", "null"] },
713
+ "successExitCodes": {
714
+ "type": "array",
715
+ "items": { "type": "integer" }
716
+ },
717
+ "requiredAfter": {
718
+ "type": "array",
719
+ "items": { "type": "string" }
720
+ }
721
+ }
722
+ },
460
723
  "retentionDecision": {
461
724
  "type": "object",
462
725
  "additionalProperties": false,
@@ -0,0 +1,68 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://mustflow.github.io/schemas/handoff-validation-report.schema.json",
4
+ "title": "mustflow handoff validation report",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schema_version",
9
+ "command",
10
+ "ok",
11
+ "mustflow_root",
12
+ "path",
13
+ "record_kind",
14
+ "task_id",
15
+ "summary",
16
+ "issues"
17
+ ],
18
+ "properties": {
19
+ "schema_version": { "const": "1" },
20
+ "command": { "const": "handoff_validate" },
21
+ "ok": { "type": "boolean" },
22
+ "mustflow_root": { "type": "string" },
23
+ "path": { "type": "string" },
24
+ "record_kind": {
25
+ "type": ["string", "null"],
26
+ "enum": ["work_item", "handoff", null]
27
+ },
28
+ "task_id": { "type": ["string", "null"] },
29
+ "summary": { "$ref": "#/$defs/summary" },
30
+ "issues": {
31
+ "type": "array",
32
+ "items": { "$ref": "#/$defs/issue" }
33
+ }
34
+ },
35
+ "$defs": {
36
+ "summary": {
37
+ "type": "object",
38
+ "additionalProperties": false,
39
+ "required": [
40
+ "scope_count",
41
+ "acceptance_criteria_count",
42
+ "source_ref_count",
43
+ "verification_plan_count",
44
+ "coverage_count",
45
+ "remaining_risk_count"
46
+ ],
47
+ "properties": {
48
+ "scope_count": { "type": "integer", "minimum": 0 },
49
+ "acceptance_criteria_count": { "type": "integer", "minimum": 0 },
50
+ "source_ref_count": { "type": "integer", "minimum": 0 },
51
+ "verification_plan_count": { "type": "integer", "minimum": 0 },
52
+ "coverage_count": { "type": "integer", "minimum": 0 },
53
+ "remaining_risk_count": { "type": "integer", "minimum": 0 }
54
+ }
55
+ },
56
+ "issue": {
57
+ "type": "object",
58
+ "additionalProperties": false,
59
+ "required": ["severity", "code", "path", "message"],
60
+ "properties": {
61
+ "severity": { "enum": ["error", "warning"] },
62
+ "code": { "type": "string" },
63
+ "path": { "type": "string" },
64
+ "message": { "type": "string" }
65
+ }
66
+ }
67
+ }
68
+ }