workflow-ai 1.0.62 → 1.0.64

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 (505) hide show
  1. package/README.md +61 -0
  2. package/agent-templates/CLAUDE.md.tpl +2 -0
  3. package/agent-templates/QWEN.md.tpl +2 -0
  4. package/configs/config.yaml +134 -0
  5. package/configs/pipeline.yaml +884 -0
  6. package/configs/ticket-movement-rules.yaml +80 -0
  7. package/package.json +2 -1
  8. package/src/global-dir.mjs +25 -1
  9. package/src/init.mjs +5 -4
  10. package/src/lib/agent-spawner.mjs +338 -0
  11. package/src/runner.mjs +15 -14
  12. package/src/scripts/get-next-test-id.js +94 -0
  13. package/src/scripts/migrate-backlog-to-tests.js +406 -0
  14. package/src/scripts/run-skill-tests.js +1703 -0
  15. package/src/scripts/scan-fixtures-for-secrets.js +248 -0
  16. package/src/scripts/tests/timeout-cascade.test.js +28 -0
  17. package/src/skills/analyze-report/README.md +44 -0
  18. package/src/skills/analyze-report/SKILL.md +121 -0
  19. package/src/skills/analyze-report/algorithms/progress-assessment.md +108 -0
  20. package/src/skills/analyze-report/knowledge/analysis-frameworks.md +66 -0
  21. package/src/skills/analyze-report/knowledge/report-structure.md +61 -0
  22. package/src/skills/analyze-report/scripts/calc-plan-metrics.js +234 -0
  23. package/src/skills/analyze-report/templates/analysis-report.md +80 -0
  24. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/claude-sonnet/trial-1.md +69 -0
  25. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/claude-sonnet/trial-2.md +103 -0
  26. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/claude-sonnet/trial-3.md +99 -0
  27. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/judge.json +163 -0
  28. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-deepseek/trial-1.md +89 -0
  29. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-deepseek/trial-2.md +88 -0
  30. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-deepseek/trial-3.md +100 -0
  31. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-glm/trial-1.md +77 -0
  32. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-glm/trial-2.md +64 -0
  33. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-glm/trial-3.md +110 -0
  34. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-minimax/trial-1.md +74 -0
  35. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-minimax/trial-2.md +38 -0
  36. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-minimax/trial-3.md +61 -0
  37. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/meta.json +115 -0
  38. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001-evidence-from-log.yaml +60 -0
  39. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/claude-sonnet/trial-1.md +90 -0
  40. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/claude-sonnet/trial-2.md +89 -0
  41. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/claude-sonnet/trial-3.md +77 -0
  42. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/judge.json +163 -0
  43. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-deepseek/trial-1.md +84 -0
  44. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-deepseek/trial-2.md +77 -0
  45. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-deepseek/trial-3.md +89 -0
  46. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-glm/trial-1.md +103 -0
  47. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-glm/trial-2.md +103 -0
  48. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-glm/trial-3.md +103 -0
  49. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-minimax/trial-1.md +93 -0
  50. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-minimax/trial-2.md +93 -0
  51. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-minimax/trial-3.md +86 -0
  52. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/meta.json +115 -0
  53. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002-result-block-format.yaml +44 -0
  54. package/src/skills/analyze-report/tests/fixtures/REPORT-002-incorrect-attribution.md +27 -0
  55. package/src/skills/analyze-report/tests/fixtures/pipeline-2026-04-06_qa-001-skip.log +32 -0
  56. package/src/skills/analyze-report/tests/index.yaml +25 -0
  57. package/src/skills/analyze-report/tests/rubrics/evidence-from-log.md +22 -0
  58. package/src/skills/analyze-report/tests/rubrics/result-block-format.md +22 -0
  59. package/src/skills/analyze-report/workflows/progress.md +158 -0
  60. package/src/skills/analyze-report/workflows/retrospective.md +143 -0
  61. package/src/skills/coach/README.md +43 -0
  62. package/src/skills/coach/SKILL.md +166 -0
  63. package/src/skills/coach/SKILL.md.legacy +157 -0
  64. package/src/skills/coach/algorithms/gap-analysis.md +69 -0
  65. package/src/skills/coach/algorithms/improvement-prioritization.md +62 -0
  66. package/src/skills/coach/algorithms/skill-scoring.md +80 -0
  67. package/src/skills/coach/knowledge/audit-applied-changes-clean.txt +11 -0
  68. package/src/skills/coach/knowledge/backlog-management.md +67 -0
  69. package/src/skills/coach/knowledge/backlog-management.md.legacy +90 -0
  70. package/src/skills/coach/knowledge/common-antipatterns.md +76 -0
  71. package/src/skills/coach/knowledge/prompt-engineering.md +45 -0
  72. package/src/skills/coach/knowledge/shared-knowledge-guide.md +44 -0
  73. package/src/skills/coach/knowledge/skill-anatomy.md +49 -0
  74. package/src/skills/coach/knowledge/test-authorship.md +141 -0
  75. package/src/skills/coach/templates/audit-report.md +39 -0
  76. package/src/skills/coach/templates/coach-backlog-init.yaml +14 -0
  77. package/src/skills/coach/templates/coach-backlog-init.yaml.legacy +10 -0
  78. package/src/skills/coach/templates/improvement-plan.md +42 -0
  79. package/src/skills/coach/templates/new-skill.md +95 -0
  80. package/src/skills/coach/tests/cases/TC-COACH-001/current/claude-sonnet/trial-1.md +58 -0
  81. package/src/skills/coach/tests/cases/TC-COACH-001/current/claude-sonnet/trial-2.md +65 -0
  82. package/src/skills/coach/tests/cases/TC-COACH-001/current/claude-sonnet/trial-3.md +58 -0
  83. package/src/skills/coach/tests/cases/TC-COACH-001/current/judge.json +151 -0
  84. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-deepseek/trial-1.md +46 -0
  85. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-deepseek/trial-2.md +0 -0
  86. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-deepseek/trial-3.md +75 -0
  87. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-glm/trial-1.md +81 -0
  88. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-glm/trial-2.md +101 -0
  89. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-glm/trial-3.md +91 -0
  90. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-minimax/trial-1.md +48 -0
  91. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-minimax/trial-2.md +30 -0
  92. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-minimax/trial-3.md +55 -0
  93. package/src/skills/coach/tests/cases/TC-COACH-001/current/meta.json +95 -0
  94. package/src/skills/coach/tests/cases/TC-COACH-001-evidence-based-temporal-diagram.yaml +53 -0
  95. package/src/skills/coach/tests/cases/TC-COACH-002/current/claude-sonnet/trial-1.md +46 -0
  96. package/src/skills/coach/tests/cases/TC-COACH-002/current/claude-sonnet/trial-2.md +50 -0
  97. package/src/skills/coach/tests/cases/TC-COACH-002/current/claude-sonnet/trial-3.md +48 -0
  98. package/src/skills/coach/tests/cases/TC-COACH-002/current/judge.json +151 -0
  99. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-deepseek/trial-1.md +0 -0
  100. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-deepseek/trial-2.md +37 -0
  101. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-deepseek/trial-3.md +30 -0
  102. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-glm/trial-1.md +23 -0
  103. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-glm/trial-2.md +29 -0
  104. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-glm/trial-3.md +35 -0
  105. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-minimax/trial-1.md +13 -0
  106. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-minimax/trial-2.md +19 -0
  107. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-minimax/trial-3.md +33 -0
  108. package/src/skills/coach/tests/cases/TC-COACH-002/current/meta.json +95 -0
  109. package/src/skills/coach/tests/cases/TC-COACH-002-root-cause-first.yaml +57 -0
  110. package/src/skills/coach/tests/fixtures/pipeline-2026-04-06_id-collision.log +77 -0
  111. package/src/skills/coach/tests/index.yaml +29 -0
  112. package/src/skills/coach/tests/rubrics/calibration/evidence-based-bad.md +13 -0
  113. package/src/skills/coach/tests/rubrics/calibration/evidence-based-good.md +29 -0
  114. package/src/skills/coach/tests/rubrics/evidence-based.md +26 -0
  115. package/src/skills/coach/tests/rubrics/root-cause-first.md +21 -0
  116. package/src/skills/coach/workflows/analyze.md +79 -0
  117. package/src/skills/coach/workflows/analyze.md.legacy +64 -0
  118. package/src/skills/coach/workflows/audit.md +74 -0
  119. package/src/skills/coach/workflows/audit.md.legacy +59 -0
  120. package/src/skills/coach/workflows/create.md +80 -0
  121. package/src/skills/coach/workflows/create.md.legacy +67 -0
  122. package/src/skills/coach/workflows/improve.md +71 -0
  123. package/src/skills/coach/workflows/improve.md.legacy +60 -0
  124. package/src/skills/coach/workflows/research.md +55 -0
  125. package/src/skills/coach/workflows/review.md +52 -0
  126. package/src/skills/coach/workflows/review.md.legacy +48 -0
  127. package/src/skills/coach/workflows/test.md +97 -0
  128. package/src/skills/create-plan/README.md +39 -0
  129. package/src/skills/create-plan/SKILL.md +104 -0
  130. package/src/skills/create-plan/algorithms/risk-assessment.md +73 -0
  131. package/src/skills/create-plan/knowledge/plan-completeness.md +67 -0
  132. package/src/skills/create-plan/knowledge/plan-lifecycle.md +33 -0
  133. package/src/skills/create-plan/knowledge/task-verification-pairs.md +151 -0
  134. package/src/skills/create-plan/scripts/validate-completeness.js +182 -0
  135. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/claude-sonnet/trial-1.md +5 -0
  136. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/claude-sonnet/trial-2.md +39 -0
  137. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/claude-sonnet/trial-3.md +35 -0
  138. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/judge.json +167 -0
  139. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-deepseek/trial-1.md +5 -0
  140. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-deepseek/trial-2.md +10 -0
  141. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-deepseek/trial-3.md +5 -0
  142. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-glm/trial-1.md +26 -0
  143. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-glm/trial-2.md +86 -0
  144. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-glm/trial-3.md +5 -0
  145. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-minimax/trial-1.md +11 -0
  146. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-minimax/trial-2.md +15 -0
  147. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-minimax/trial-3.md +14 -0
  148. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/meta.json +119 -0
  149. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001-validate-completeness.yaml +41 -0
  150. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/claude-sonnet/trial-1.md +25 -0
  151. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/claude-sonnet/trial-2.md +30 -0
  152. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/claude-sonnet/trial-3.md +37 -0
  153. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/judge.json +164 -0
  154. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-deepseek/trial-1.md +3 -0
  155. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-deepseek/trial-2.md +11 -0
  156. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-deepseek/trial-3.md +13 -0
  157. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-glm/trial-1.md +44 -0
  158. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-glm/trial-2.md +5 -0
  159. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-glm/trial-3.md +49 -0
  160. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-minimax/trial-1.md +6 -0
  161. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-minimax/trial-2.md +11 -0
  162. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-minimax/trial-3.md +16 -0
  163. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/meta.json +116 -0
  164. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002-task-granularity.yaml +39 -0
  165. package/src/skills/create-plan/tests/index.yaml +25 -0
  166. package/src/skills/create-plan/tests/rubrics/task-granularity.md +21 -0
  167. package/src/skills/create-plan/tests/rubrics/validate-completeness.md +21 -0
  168. package/src/skills/create-plan/workflows/create.md +136 -0
  169. package/src/skills/create-report/README.md +40 -0
  170. package/src/skills/create-report/SKILL.md +73 -0
  171. package/src/skills/create-report/algorithms/metric-calculation.md +93 -0
  172. package/src/skills/create-report/knowledge/report-metrics.md +82 -0
  173. package/src/skills/create-report/scripts/calc-metrics.js +383 -0
  174. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/claude-sonnet/trial-1.md +25 -0
  175. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/claude-sonnet/trial-2.md +26 -0
  176. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/claude-sonnet/trial-3.md +28 -0
  177. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/judge.json +163 -0
  178. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-deepseek/trial-1.md +4 -0
  179. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-deepseek/trial-2.md +3 -0
  180. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-deepseek/trial-3.md +6 -0
  181. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-glm/trial-1.md +8 -0
  182. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-glm/trial-2.md +12 -0
  183. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-glm/trial-3.md +7 -0
  184. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-minimax/trial-1.md +12 -0
  185. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-minimax/trial-2.md +22 -0
  186. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-minimax/trial-3.md +13 -0
  187. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/meta.json +115 -0
  188. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001-root-cause-attribution.yaml +57 -0
  189. package/src/skills/create-report/tests/index.yaml +20 -0
  190. package/src/skills/create-report/tests/rubrics/root-cause-attribution.md +21 -0
  191. package/src/skills/create-report/workflows/standard.md +175 -0
  192. package/src/skills/decompose-gaps/README.md +39 -0
  193. package/src/skills/decompose-gaps/SKILL.md +78 -0
  194. package/src/skills/decompose-gaps/algorithms/scope-check.md +110 -0
  195. package/src/skills/decompose-gaps/knowledge/scope-validation.md +65 -0
  196. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/claude-sonnet/trial-1.md +49 -0
  197. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/claude-sonnet/trial-2.md +56 -0
  198. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/claude-sonnet/trial-3.md +39 -0
  199. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/judge.json +164 -0
  200. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-deepseek/trial-1.md +25 -0
  201. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-deepseek/trial-2.md +11 -0
  202. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-deepseek/trial-3.md +26 -0
  203. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-glm/trial-1.md +19 -0
  204. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-glm/trial-2.md +5 -0
  205. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-glm/trial-3.md +28 -0
  206. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-minimax/trial-1.md +23 -0
  207. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-minimax/trial-2.md +27 -0
  208. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-minimax/trial-3.md +25 -0
  209. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/meta.json +116 -0
  210. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001-scope-exclusion.yaml +46 -0
  211. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/claude-sonnet/trial-1.md +32 -0
  212. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/claude-sonnet/trial-2.md +20 -0
  213. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/claude-sonnet/trial-3.md +26 -0
  214. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/judge.json +164 -0
  215. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-deepseek/trial-1.md +7 -0
  216. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-deepseek/trial-2.md +16 -0
  217. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-deepseek/trial-3.md +7 -0
  218. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-glm/trial-1.md +5 -0
  219. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-glm/trial-2.md +11 -0
  220. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-glm/trial-3.md +13 -0
  221. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-minimax/trial-1.md +13 -0
  222. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-minimax/trial-2.md +12 -0
  223. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-minimax/trial-3.md +5 -0
  224. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/meta.json +116 -0
  225. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002-glob-before-write.yaml +36 -0
  226. package/src/skills/decompose-gaps/tests/index.yaml +25 -0
  227. package/src/skills/decompose-gaps/tests/rubrics/glob-before-write.md +21 -0
  228. package/src/skills/decompose-gaps/tests/rubrics/scope-exclusion.md +21 -0
  229. package/src/skills/decompose-gaps/workflows/decompose.md +120 -0
  230. package/src/skills/decompose-plan/README.md +43 -0
  231. package/src/skills/decompose-plan/SKILL.md +87 -0
  232. package/src/skills/decompose-plan/algorithms/deduplication.md +101 -0
  233. package/src/skills/decompose-plan/knowledge/atomicity-checklist.md +113 -0
  234. package/src/skills/decompose-plan/knowledge/capabilities.md +44 -0
  235. package/src/skills/decompose-plan/knowledge/human-task-rules.md +67 -0
  236. package/src/skills/decompose-plan/knowledge/scope-guard-checklist.md +73 -0
  237. package/src/skills/decompose-plan/scripts/check-atomicity-limit.js +47 -0
  238. package/src/skills/decompose-plan/scripts/check-duplicates.js +323 -0
  239. package/src/skills/decompose-plan/scripts/verify-atomicity.js +408 -0
  240. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/claude-sonnet/trial-1.md +30 -0
  241. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/claude-sonnet/trial-2.md +36 -0
  242. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/claude-sonnet/trial-3.md +37 -0
  243. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/judge.json +163 -0
  244. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-deepseek/trial-1.md +20 -0
  245. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-deepseek/trial-2.md +17 -0
  246. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-deepseek/trial-3.md +28 -0
  247. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-glm/trial-1.md +114 -0
  248. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-glm/trial-2.md +137 -0
  249. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-glm/trial-3.md +188 -0
  250. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-minimax/trial-1.md +0 -0
  251. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-minimax/trial-2.md +32 -0
  252. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-minimax/trial-3.md +110 -0
  253. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/meta.json +115 -0
  254. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001-atomicity-no-1to1.yaml +56 -0
  255. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/claude-sonnet/trial-1.md +47 -0
  256. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/claude-sonnet/trial-2.md +54 -0
  257. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/claude-sonnet/trial-3.md +43 -0
  258. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/judge.json +163 -0
  259. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-deepseek/trial-1.md +15 -0
  260. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-deepseek/trial-2.md +5 -0
  261. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-deepseek/trial-3.md +12 -0
  262. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-glm/trial-1.md +34 -0
  263. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-glm/trial-2.md +30 -0
  264. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-glm/trial-3.md +35 -0
  265. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-minimax/trial-1.md +0 -0
  266. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-minimax/trial-2.md +31 -0
  267. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-minimax/trial-3.md +0 -0
  268. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/meta.json +115 -0
  269. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002-get-next-id-mandatory.yaml +44 -0
  270. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/claude-sonnet/trial-1.md +21 -0
  271. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/claude-sonnet/trial-2.md +38 -0
  272. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/claude-sonnet/trial-3.md +30 -0
  273. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/judge.json +163 -0
  274. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-deepseek/trial-1.md +31 -0
  275. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-deepseek/trial-2.md +35 -0
  276. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-deepseek/trial-3.md +48 -0
  277. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-glm/trial-1.md +167 -0
  278. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-glm/trial-2.md +62 -0
  279. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-glm/trial-3.md +174 -0
  280. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-minimax/trial-1.md +0 -0
  281. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-minimax/trial-2.md +0 -0
  282. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-minimax/trial-3.md +0 -0
  283. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/meta.json +115 -0
  284. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003-verbatim-dod-transfer.yaml +42 -0
  285. package/src/skills/decompose-plan/tests/index.yaml +30 -0
  286. package/src/skills/decompose-plan/tests/rubrics/atomicity-no-1to1.md +21 -0
  287. package/src/skills/decompose-plan/tests/rubrics/get-next-id-mandatory.md +21 -0
  288. package/src/skills/decompose-plan/tests/rubrics/verbatim-dod-transfer.md +21 -0
  289. package/src/skills/decompose-plan/workflows/decompose.md +272 -0
  290. package/src/skills/deep-research/README.md +36 -0
  291. package/src/skills/deep-research/SKILL.md +106 -0
  292. package/src/skills/deep-research/algorithms/source-scoring.md +63 -0
  293. package/src/skills/deep-research/algorithms/synthesis.md +67 -0
  294. package/src/skills/deep-research/knowledge/data-validation.md +44 -0
  295. package/src/skills/deep-research/knowledge/perplexity-config.md +30 -0
  296. package/src/skills/deep-research/knowledge/research-methodology.md +54 -0
  297. package/src/skills/deep-research/knowledge/source-evaluation.md +33 -0
  298. package/src/skills/deep-research/scripts/perplexity-research.js +315 -0
  299. package/src/skills/deep-research/templates/brief-summary.md +25 -0
  300. package/src/skills/deep-research/templates/research-report.md +76 -0
  301. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/claude-haiku/trial-1.md +48 -0
  302. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/claude-haiku/trial-2.md +88 -0
  303. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/claude-haiku/trial-3.md +56 -0
  304. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/judge.json +163 -0
  305. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-free/trial-1.md +58 -0
  306. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-free/trial-2.md +249 -0
  307. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-free/trial-3.md +44 -0
  308. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm/trial-1.md +96 -0
  309. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm/trial-2.md +56 -0
  310. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm/trial-3.md +94 -0
  311. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm-air/trial-1.md +11 -0
  312. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm-air/trial-2.md +1 -0
  313. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm-air/trial-3.md +1 -0
  314. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/meta.json +115 -0
  315. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001-self-check-url.yaml +58 -0
  316. package/src/skills/deep-research/tests/index.yaml +20 -0
  317. package/src/skills/deep-research/tests/rubrics/self-check-url.md +34 -0
  318. package/src/skills/deep-research/workflows/base-checklist.md +19 -0
  319. package/src/skills/deep-research/workflows/benchmark.md +38 -0
  320. package/src/skills/deep-research/workflows/competitor.md +44 -0
  321. package/src/skills/deep-research/workflows/custom.md +32 -0
  322. package/src/skills/deep-research/workflows/market.md +44 -0
  323. package/src/skills/deep-research/workflows/technology.md +40 -0
  324. package/src/skills/deep-research/workflows/trend.md +40 -0
  325. package/src/skills/execute-task/README.md +44 -0
  326. package/src/skills/execute-task/SKILL.md +292 -0
  327. package/src/skills/execute-task/algorithms/execution-strategy.md +136 -0
  328. package/src/skills/execute-task/knowledge/context-checkpoints.md +75 -0
  329. package/src/skills/execute-task/knowledge/ticket-structure.md +70 -0
  330. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/claude-haiku/trial-1.md +5 -0
  331. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/claude-haiku/trial-2.md +5 -0
  332. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/claude-haiku/trial-3.md +5 -0
  333. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/judge.json +124 -0
  334. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-free/trial-1.md +4 -0
  335. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-free/trial-2.md +4 -0
  336. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-free/trial-3.md +4 -0
  337. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-glm-air/trial-1.md +4 -0
  338. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-glm-air/trial-2.md +4 -0
  339. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-glm-air/trial-3.md +11 -0
  340. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/meta.json +89 -0
  341. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001-no-ticket-creation.yaml +48 -0
  342. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/claude-haiku/trial-1.md +5 -0
  343. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/claude-haiku/trial-2.md +6 -0
  344. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/claude-haiku/trial-3.md +5 -0
  345. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/judge.json +124 -0
  346. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-free/trial-1.md +4 -0
  347. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-free/trial-2.md +4 -0
  348. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-free/trial-3.md +8 -0
  349. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-glm-air/trial-1.md +9 -0
  350. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-glm-air/trial-2.md +26 -0
  351. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-glm-air/trial-3.md +4 -0
  352. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/meta.json +89 -0
  353. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002-no-duplicate-dod.yaml +44 -0
  354. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/claude-haiku/trial-1.md +5 -0
  355. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/claude-haiku/trial-2.md +5 -0
  356. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/claude-haiku/trial-3.md +5 -0
  357. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/judge.json +46 -0
  358. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/meta.json +37 -0
  359. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003-verification-proportionality.yaml +46 -0
  360. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/claude-haiku/trial-1.md +18 -0
  361. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/claude-haiku/trial-2.md +16 -0
  362. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/claude-haiku/trial-3.md +14 -0
  363. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/judge.json +124 -0
  364. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-free/trial-1.md +5 -0
  365. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-free/trial-2.md +5 -0
  366. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-free/trial-3.md +1 -0
  367. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-glm-air/trial-1.md +8 -0
  368. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-glm-air/trial-2.md +5 -0
  369. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-glm-air/trial-3.md +4 -0
  370. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/meta.json +89 -0
  371. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004-no-foreign-ticket-edit.yaml +50 -0
  372. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/claude-haiku/trial-1.md +5 -0
  373. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/claude-haiku/trial-2.md +5 -0
  374. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/claude-haiku/trial-3.md +5 -0
  375. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/judge.json +124 -0
  376. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-free/trial-1.md +15 -0
  377. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-free/trial-2.md +4 -0
  378. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-free/trial-3.md +5 -0
  379. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-glm-air/trial-1.md +11 -0
  380. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-glm-air/trial-2.md +11 -0
  381. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-glm-air/trial-3.md +4 -0
  382. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/meta.json +89 -0
  383. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005-ticket-fields-updated.yaml +39 -0
  384. package/src/skills/execute-task/tests/fixtures/IMPL-902-create-file.md +41 -0
  385. package/src/skills/execute-task/tests/fixtures/IMPL-904-current-task.md +40 -0
  386. package/src/skills/execute-task/tests/fixtures/IMPL-906-fill-ticket.md +42 -0
  387. package/src/skills/execute-task/tests/fixtures/QA-901-button-click.md +41 -0
  388. package/src/skills/execute-task/tests/fixtures/QA-903-visual-figma.md +40 -0
  389. package/src/skills/execute-task/tests/fixtures/TASK-905-done-with-typo.md +36 -0
  390. package/src/skills/execute-task/tests/index.yaml +39 -0
  391. package/src/skills/execute-task/tests/rubrics/no-duplicate-dod.md +22 -0
  392. package/src/skills/execute-task/tests/rubrics/no-foreign-ticket-edit.md +20 -0
  393. package/src/skills/execute-task/tests/rubrics/no-ticket-creation.md +21 -0
  394. package/src/skills/execute-task/tests/rubrics/ticket-fields-updated.md +23 -0
  395. package/src/skills/execute-task/tests/rubrics/verification-proportionality.md +22 -0
  396. package/src/skills/execute-task/workflows/execute.md +104 -0
  397. package/src/skills/manual-testing/README.md +63 -0
  398. package/src/skills/manual-testing/SKILL.md +174 -0
  399. package/src/skills/manual-testing/algorithms/blocked-tool-strategy.md +74 -0
  400. package/src/skills/manual-testing/algorithms/bug-severity.md +73 -0
  401. package/src/skills/manual-testing/algorithms/mcp-budget.md +97 -0
  402. package/src/skills/manual-testing/algorithms/test-prioritization.md +69 -0
  403. package/src/skills/manual-testing/knowledge/browser-extension-testing.md +102 -0
  404. package/src/skills/manual-testing/knowledge/browser-tools.md +114 -0
  405. package/src/skills/manual-testing/knowledge/desktop-tools-advanced.md +92 -0
  406. package/src/skills/manual-testing/knowledge/desktop-tools-core.md +76 -0
  407. package/src/skills/manual-testing/knowledge/sandbox-advanced.md +83 -0
  408. package/src/skills/manual-testing/knowledge/sandbox-core.md +67 -0
  409. package/src/skills/manual-testing/knowledge/stateful-edge-cases.md +69 -0
  410. package/src/skills/manual-testing/knowledge/test-case-design.md +107 -0
  411. package/src/skills/manual-testing/knowledge/testing-types.md +45 -0
  412. package/src/skills/manual-testing/templates/bug-report.md +52 -0
  413. package/src/skills/manual-testing/templates/test-case.md +34 -0
  414. package/src/skills/manual-testing/templates/test-plan.md +97 -0
  415. package/src/skills/manual-testing/templates/test-session-report.md +56 -0
  416. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/claude-sonnet/trial-1.md +21 -0
  417. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/claude-sonnet/trial-2.md +65 -0
  418. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/claude-sonnet/trial-3.md +35 -0
  419. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/judge.json +163 -0
  420. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-deepseek/trial-1.md +0 -0
  421. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-deepseek/trial-2.md +7 -0
  422. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-deepseek/trial-3.md +0 -0
  423. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-glm/trial-1.md +4 -0
  424. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-glm/trial-2.md +15 -0
  425. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-glm/trial-3.md +8 -0
  426. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-minimax/trial-1.md +5 -0
  427. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-minimax/trial-2.md +7 -0
  428. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-minimax/trial-3.md +7 -0
  429. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/meta.json +114 -0
  430. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001-sandbox-mandatory.yaml +38 -0
  431. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/claude-sonnet/trial-1.md +47 -0
  432. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/claude-sonnet/trial-2.md +39 -0
  433. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/claude-sonnet/trial-3.md +40 -0
  434. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/judge.json +163 -0
  435. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-deepseek/trial-1.md +19 -0
  436. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-deepseek/trial-2.md +15 -0
  437. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-deepseek/trial-3.md +24 -0
  438. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-glm/trial-1.md +19 -0
  439. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-glm/trial-2.md +13 -0
  440. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-glm/trial-3.md +18 -0
  441. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-minimax/trial-1.md +21 -0
  442. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-minimax/trial-2.md +15 -0
  443. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-minimax/trial-3.md +14 -0
  444. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/meta.json +114 -0
  445. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002-visual-tc-screenshot.yaml +37 -0
  446. package/src/skills/manual-testing/tests/index.yaml +25 -0
  447. package/src/skills/manual-testing/tests/last-run-tc001-sonnet.log +140 -0
  448. package/src/skills/manual-testing/tests/last-run-tc002.log +1 -0
  449. package/src/skills/manual-testing/tests/last-run.log +1469 -0
  450. package/src/skills/manual-testing/tests/rubrics/sandbox-mandatory.md +20 -0
  451. package/src/skills/manual-testing/tests/rubrics/visual-tc-screenshot.md +21 -0
  452. package/src/skills/manual-testing/workflows/acceptance.md +80 -0
  453. package/src/skills/manual-testing/workflows/exploratory.md +84 -0
  454. package/src/skills/manual-testing/workflows/regression.md +76 -0
  455. package/src/skills/manual-testing/workflows/smoke.md +109 -0
  456. package/src/skills/manual-testing/workflows/test-plan.md +75 -0
  457. package/src/skills/review-result/README.md +59 -0
  458. package/src/skills/review-result/SKILL.md +138 -0
  459. package/src/skills/review-result/algorithms/verification.md +112 -0
  460. package/src/skills/review-result/knowledge/dod-patterns.md +115 -0
  461. package/src/skills/review-result/scripts/verify-artifacts.js +354 -0
  462. package/src/skills/review-result/templates/verdict.md +153 -0
  463. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-haiku/trial-1.md +22 -0
  464. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-haiku/trial-2.md +7 -0
  465. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-haiku/trial-3.md +21 -0
  466. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-sonnet/trial-1.md +6 -0
  467. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-sonnet/trial-2.md +6 -0
  468. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-sonnet/trial-3.md +18 -0
  469. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/judge.json +164 -0
  470. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-deepseek/trial-1.md +5 -0
  471. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-deepseek/trial-2.md +7 -0
  472. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-deepseek/trial-3.md +6 -0
  473. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-glm/trial-1.md +49 -0
  474. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-glm/trial-2.md +28 -0
  475. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-glm/trial-3.md +37 -0
  476. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-minimax/trial-1.md +22 -0
  477. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-minimax/trial-2.md +13 -0
  478. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-minimax/trial-3.md +21 -0
  479. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/meta.json +116 -0
  480. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001-visual-tc-trigger.yaml +51 -0
  481. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-haiku/trial-1.md +23 -0
  482. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-haiku/trial-2.md +22 -0
  483. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-haiku/trial-3.md +28 -0
  484. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-sonnet/trial-1.md +4 -0
  485. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-sonnet/trial-2.md +36 -0
  486. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-sonnet/trial-3.md +4 -0
  487. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/judge.json +163 -0
  488. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-deepseek/trial-1.md +4 -0
  489. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-deepseek/trial-2.md +0 -0
  490. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-deepseek/trial-3.md +4 -0
  491. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-glm/trial-1.md +39 -0
  492. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-glm/trial-2.md +25 -0
  493. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-glm/trial-3.md +32 -0
  494. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-minimax/trial-1.md +34 -0
  495. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-minimax/trial-2.md +8 -0
  496. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-minimax/trial-3.md +23 -0
  497. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/meta.json +115 -0
  498. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002-path-line-suffix.yaml +39 -0
  499. package/src/skills/review-result/tests/fixtures/IMPL-902-path-with-line.md +43 -0
  500. package/src/skills/review-result/tests/fixtures/QA-901-visual-button.md +46 -0
  501. package/src/skills/review-result/tests/index.yaml +25 -0
  502. package/src/skills/review-result/tests/rubrics/path-line-suffix.md +19 -0
  503. package/src/skills/review-result/tests/rubrics/visual-tc-trigger.md +19 -0
  504. package/src/skills/review-result/workflows/review.md +209 -0
  505. package/templates/plan-template.md +1 -0
@@ -0,0 +1,163 @@
1
+ {
2
+ "per_model": {
3
+ "claude-sonnet": {
4
+ "pass_count": 3,
5
+ "total": 3,
6
+ "trials": [
7
+ {
8
+ "trial": 1,
9
+ "score": 5,
10
+ "passed": true
11
+ },
12
+ {
13
+ "trial": 2,
14
+ "score": 5,
15
+ "passed": true
16
+ },
17
+ {
18
+ "trial": 3,
19
+ "score": 5,
20
+ "passed": true
21
+ }
22
+ ]
23
+ },
24
+ "kilo-glm": {
25
+ "pass_count": 3,
26
+ "total": 3,
27
+ "trials": [
28
+ {
29
+ "trial": 1,
30
+ "score": 5,
31
+ "passed": true
32
+ },
33
+ {
34
+ "trial": 2,
35
+ "score": 5,
36
+ "passed": true
37
+ },
38
+ {
39
+ "trial": 3,
40
+ "score": 5,
41
+ "passed": true
42
+ }
43
+ ]
44
+ },
45
+ "kilo-minimax": {
46
+ "pass_count": 3,
47
+ "total": 3,
48
+ "trials": [
49
+ {
50
+ "trial": 1,
51
+ "score": 5,
52
+ "passed": true
53
+ },
54
+ {
55
+ "trial": 2,
56
+ "score": 4,
57
+ "passed": true
58
+ },
59
+ {
60
+ "trial": 3,
61
+ "score": 5,
62
+ "passed": true
63
+ }
64
+ ]
65
+ },
66
+ "kilo-deepseek": {
67
+ "pass_count": 3,
68
+ "total": 3,
69
+ "trials": [
70
+ {
71
+ "trial": 1,
72
+ "score": 5,
73
+ "passed": true
74
+ },
75
+ {
76
+ "trial": 2,
77
+ "score": 5,
78
+ "passed": true
79
+ },
80
+ {
81
+ "trial": 3,
82
+ "score": 5,
83
+ "passed": true
84
+ }
85
+ ]
86
+ }
87
+ },
88
+ "rubric_scores": [
89
+ {
90
+ "agentId": "claude-sonnet",
91
+ "trial": 1,
92
+ "score": 5,
93
+ "errored": false
94
+ },
95
+ {
96
+ "agentId": "claude-sonnet",
97
+ "trial": 2,
98
+ "score": 5,
99
+ "errored": false
100
+ },
101
+ {
102
+ "agentId": "claude-sonnet",
103
+ "trial": 3,
104
+ "score": 5,
105
+ "errored": false
106
+ },
107
+ {
108
+ "agentId": "kilo-deepseek",
109
+ "trial": 1,
110
+ "score": 5,
111
+ "errored": false
112
+ },
113
+ {
114
+ "agentId": "kilo-deepseek",
115
+ "trial": 2,
116
+ "score": 5,
117
+ "errored": false
118
+ },
119
+ {
120
+ "agentId": "kilo-deepseek",
121
+ "trial": 3,
122
+ "score": 5,
123
+ "errored": false
124
+ },
125
+ {
126
+ "agentId": "kilo-glm",
127
+ "trial": 1,
128
+ "score": 5,
129
+ "errored": false
130
+ },
131
+ {
132
+ "agentId": "kilo-glm",
133
+ "trial": 2,
134
+ "score": 5,
135
+ "errored": false
136
+ },
137
+ {
138
+ "agentId": "kilo-glm",
139
+ "trial": 3,
140
+ "score": 5,
141
+ "errored": false
142
+ },
143
+ {
144
+ "agentId": "kilo-minimax",
145
+ "trial": 1,
146
+ "score": 5,
147
+ "errored": false
148
+ },
149
+ {
150
+ "agentId": "kilo-minimax",
151
+ "trial": 2,
152
+ "score": 4,
153
+ "errored": false
154
+ },
155
+ {
156
+ "agentId": "kilo-minimax",
157
+ "trial": 3,
158
+ "score": 5,
159
+ "errored": false
160
+ }
161
+ ],
162
+ "timestamp": "2026-04-20T12:18:36.988Z"
163
+ }
@@ -0,0 +1,89 @@
1
+ # Анализ: прогресс плана PLAN-001
2
+
3
+ **Дата анализа:** 2026-04-20
4
+ **Анализируемый план:** PLAN-001
5
+ **Анализируемый отчёт:** REPORT-002
6
+ **Тип анализа:** PROGRESS
7
+
8
+ ---
9
+
10
+ ## Executive Summary
11
+
12
+ За итерацию обработано 5 тикетов. Прогресс плана формально соответствует целевым показателям (Completion Rate 80%, Block Rate 0%), однако один тикет (QA-001) был ошибочно пропущен пайплайном. В предыдущем отчёте root cause проблемы неверно атрибутирован скрипту `check-conditions.js`. Верификация по логу пайплайна показывает, что корректный root cause — скрипт `check-relevance.js`, который принял решение о неактуальности тикета из-за статуса зависимостей. Требуется исправление логики определения актуальности для предотвращения подобных пропусков.
13
+
14
+ ---
15
+
16
+ ## Метрики
17
+
18
+ | Метрика | Значение | Статус |
19
+ |---------|----------|--------|
20
+ | Completion Rate | 80% | 🟢 |
21
+ | Weighted Completion | N/A (нет данных о сложности) | — |
22
+ | First-Pass Rate | N/A (нет данных о ревью) | — |
23
+ | Block Rate | 0% | 🟢 |
24
+ | Тренд | ➡️ (данных за предыдущие периоды нет) | — |
25
+
26
+ ## Распределение задач
27
+
28
+ | Статус | Количество | % |
29
+ |--------|-----------|---|
30
+ | Done | 4 | 80% |
31
+ | In Progress | 0 | 0% |
32
+ | Ready | 0 | 0% |
33
+ | Blocked | 0 | 0% |
34
+ | Backlog | 0 | 0% |
35
+ | Skipped | 1 | 20% |
36
+
37
+ *Примечание: распределение восстановлено на основе утверждения «обработано 5 тикетов» из REPORT-002 и факта пропуска QA-001.*
38
+
39
+ ---
40
+
41
+ ## Ключевые находки
42
+
43
+ ### 1. Неверная атрибуция root cause в предыдущем отчёте
44
+ **Уверенность:** [HIGH]
45
+ **Данные:** В отчёте REPORT-002 root cause проблемы пропуска QA-001 указан как `check-conditions.js` (стр. 16–18). Лог пайплайна (стр. 12–17) показывает, что `check-conditions.js` корректно определил условия как выполненные (`dependencies.resolved: true`, `prerequisites.met: true`, `blocking_tickets: []`). Решение о пропуске принял стейдж `check-relevance` (стр. 23–26 лога: `decision: irrelevant (dependencies inactive)`).
46
+
47
+ ### 2. Ошибочное определение актуальности тикета
48
+ **Уверенность:** [HIGH]
49
+ **Данные:** Стейдж `check-relevance` вернул статус `irrelevant` с причиной `dependencies_inactive` (стр. 24–25 лога). Это привело к переходу на стейдж `skip-ticket` и перемещению тикета в `skipped/` (стр. 31). При этом тикет был отобран для обработки (`status=ready`), а его зависимости разрешены согласно `check-conditions`. Противоречие между «разрешены» и «неактивны» указывает на ошибку логики в `check-relevance.js`.
50
+
51
+ ---
52
+
53
+ ## Проблемы и риски
54
+
55
+ | # | Проблема | Серьёзность | Данные | Рекомендация |
56
+ |---|---------|-------------|--------|-------------|
57
+ | 1 | Ошибочный пропуск тикета из-за некорректной работы `check-relevance.js` | HIGH | Лог пайплайна (стр. 23–26): `decision: irrelevant (dependencies inactive)` при разрешённых зависимостях. | Исправить логику определения актуальности зависимостей в `check-relevance.js`. |
58
+ | 2 | Неверная атрибуция root cause в отчёте REPORT-002 | MEDIUM | REPORT-002, стр. 16–18 vs лог пайплайна. | Обновить отчёт с корректной атрибуцией для точного отслеживания проблем. |
59
+
60
+ ---
61
+
62
+ ## Рекомендации
63
+
64
+ | # | Действие | Приоритет | Почему | Ожидаемый результат |
65
+ |---|---------|-----------|--------|-------------------|
66
+ | 1 | Исправить логику определения актуальности в `check-relevance.js` | HIGH | Скрипт ошибочно помечает тикеты с разрешёнными зависимостями как неактуальные, приводя к пропуску. | Тикеты с выполненными условиями не будут пропускаться на этапе проверки актуальности. |
67
+ | 2 | Обновить отчёт REPORT-002 с корректной атрибуцией root cause | MEDIUM | Неверная атрибуция мешает точному анализу и исправлению проблем пайплайна. | История инцидентов будет отражать реальные причины, упрощая диагностику. |
68
+ | 3 | Добавить валидацию согласованности статусов зависимостей между `check-conditions` и `check-relevance` | MEDIUM | Противоречие между «разрешены» и «неактивны» должно обнаруживаться автоматически. | Раннее выявление конфликтующих статусов предотвратит ошибочные пропуски. |
69
+
70
+ ---
71
+
72
+ ## За пределами скоупа
73
+
74
+ *Данных о других тикетах плана, их сложности и результатах ревью недостаточно для расчёта взвешенного Completion Rate и First-Pass Rate. Для полной оценки прогресса необходимы исходные файлы плана и детальные отчёты по каждому тикету.*
75
+
76
+ ---
77
+
78
+ ## Решение
79
+
80
+ **Статус плана:** 🟢 ON_TRACK (формальные метрики в норме, но есть проблема качества пайплайна)
81
+ **Рекомендуемое действие:** Исправить `check-relevance.js` и обновить отчётность.
82
+
83
+ ---
84
+
85
+ ---RESULT---
86
+ status: has_gaps
87
+ report_id: REPORT-002
88
+ gaps: "Ошибочный пропуск тикета QA-001 из-за некорректной логики в check-relevance.js требует исправления скрипта и обновления атрибуции в отчёте."
89
+ ---RESULT---
@@ -0,0 +1,88 @@
1
+ # Анализ: прогресс
2
+
3
+ **Дата анализа:** 2026-04-20
4
+ **Анализируемый план:** PLAN-001
5
+ **Анализируемый отчёт:** REPORT-002
6
+ **Тип анализа:** PROGRESS
7
+
8
+ ---
9
+
10
+ ## Executive Summary
11
+
12
+ Анализ лога пайплайна итерации от 2026-04-06 выявил ошибку атрибуции root cause в отчёте REPORT-002. Тикет QA-001 был пропущен из-за решения стейджа `check-relevance` (неактивные зависимости), а не `check-conditions`. Прогресс плана PLAN-001 затруднён из-за некорректной логики определения актуальности, что требует корректировки скрипта `check-relevance.js`.
13
+
14
+ ---
15
+
16
+ ## Метрики
17
+
18
+ Данных для расчёта метрик недостаточно (отсутствует общее количество тикетов плана, распределение по статусам). Из отчёта известно: обработано 5 тикетов, 1 пропущен (QA-001).
19
+
20
+ | Метрика | Значение | Статус |
21
+ |---------|----------|--------|
22
+ | Completion Rate | Данных нет | — |
23
+ | Weighted Completion | Данных нет | — |
24
+ | First-Pass Rate | Данных нет | — |
25
+ | Block Rate | Данных нет | — |
26
+ | Тренд | Данных нет | — |
27
+
28
+ ## Распределение задач
29
+
30
+ | Статус | Количество | % |
31
+ |--------|-----------|---|
32
+ | Done | Нет данных | — |
33
+ | In Progress | Нет данных | — |
34
+ | Ready | Нет данных | — |
35
+ | Blocked | Нет данных | — |
36
+ | Backlog | Нет данных | — |
37
+
38
+ ---
39
+
40
+ ## Ключевые находки
41
+
42
+ ### 1. Ошибка атрибуции root cause в отчёте REPORT-002
43
+ **Уверенность:** [HIGH]
44
+ **Данные:** В отчёте root cause для QA-001 атрибутирован `check-conditions.js`. Лог пайплайна (строка 29) показывает, что решение о skip принял стейдж `check-relevance` с reason=`dependencies_inactive`. Стейдж `check-conditions` завершился со статусом `conditions_ok`.
45
+
46
+ ### 2. Некорректная логика определения актуальности в check-relevance
47
+ **Уверенность:** [MEDIUM]
48
+ **Данные:** `check-conditions` определил `dependencies.resolved: true`, тогда как `check-relevance` сообщил `dependencies.status: inactive`. Противоречие указывает на разные критерии оценки зависимостей либо на ошибку в `check-relevance`.
49
+
50
+ ---
51
+
52
+ ## Проблемы и риски
53
+
54
+ | # | Проблема | Серьёзность | Данные | Рекомендация |
55
+ |---|---------|-------------|--------|-------------|
56
+ | 1 | Ошибочная атрибуция root cause в отчёте | HIGH | Отчёт REPORT-002 указывает на `check-conditions.js`, лог доказывает, что решение принял `check-relevance`. | Исправить отчёт и пересмотреть методологию атрибуции root cause. |
57
+ | 2 | Логика стейджа `check-relevance` приводит к неправильному пропуску тикетов | HIGH | Тикет QA-001 пропущен из-за `dependencies_inactive`, хотя `check-conditions` показал resolved. | Пересмотреть алгоритм проверки зависимостей в `check-relevance.js`. |
58
+
59
+ ---
60
+
61
+ ## Рекомендации
62
+
63
+ | # | Действие | Приоритет | Почему | Ожидаемый результат |
64
+ |---|---------|-----------|--------|-------------------|
65
+ | 1 | Исправить root cause в отчёте REPORT-002 на `check-relevance.js` | HIGH | Ошибка атрибуции ведёт к неправильным корректирующим действиям. | Корректное определение причины пропуска тикета для последующих исправлений. |
66
+ | 2 | Пересмотреть логику `check-relevance.js` — согласовать с `check-conditions` по критериям зависимостей | HIGH | Противоречивые критерии приводят к некорректным пропускам. | Устранение ложных пропусков тикетов. |
67
+ | 3 | Добавить верификацию атрибуции root cause в процесс анализа отчётов | MEDIUM | Предотвращение аналогичных ошибок в будущем. | Повышение точности анализа. |
68
+
69
+ ---
70
+
71
+ ## За пределами скоупа
72
+
73
+ Нет данных о других тикетах плана, их статусах и сложности. Для полной оценки прогресса необходимо получить актуальный список тикетов PLAN-001.
74
+
75
+ ---
76
+
77
+ ## Решение
78
+
79
+ **Статус плана:** AT_RISK (обнаружена HIGH проблема, влияющая на корректность обработки задач)
80
+ **Рекомендуемое действие:** скорректировать (исправить `check-relevance.js` и обновить отчёт)
81
+
82
+ ---
83
+
84
+ ---RESULT---
85
+ status: has_gaps
86
+ report_id: REPORT-002
87
+ gaps: "Некорректная атрибуция root cause и ошибка логики check-relevance приводят к пропуску тикетов, требуют исправления отчёта и скрипта."
88
+ ---RESULT---
@@ -0,0 +1,100 @@
1
+ # Анализ: прогресс
2
+
3
+ **Дата анализа:** 2026-04-20
4
+ **Анализируемый план:** PLAN-001
5
+ **Анализируемый отчёт:** REPORT-002
6
+ **Тип анализа:** PROGRESS
7
+
8
+ ---
9
+
10
+ ## Executive Summary
11
+
12
+ Прогресс плана PLAN-001 составляет 80% по количеству выполненных тикетов (4 из 5). Обнаружена критическая ошибка атрибуции root cause в отчёте REPORT-002: причиной пропуска тикета QA-001 является стейдж `check-relevance`, а не `check-conditions`. Данные из лога пайплайна опровергают вывод предыдущего отчёта. Рекомендуется немедленно исправить логику проверки релевантности и обновить отчёт.
13
+
14
+ ---
15
+
16
+ ## Метрики
17
+
18
+ | Метрика | Значение | Статус |
19
+ |---------|----------|--------|
20
+ | Completion Rate | 80% | 🟢 |
21
+ | Weighted Completion | Данных недостаточно | — |
22
+ | First-Pass Rate | Данных недостаточно | — |
23
+ | Block Rate | 0% | 🟢 |
24
+ | Тренд | Данных недостаточно | — |
25
+
26
+ ## Распределение задач
27
+
28
+ | Статус | Количество | % |
29
+ |--------|-----------|---|
30
+ | Done | 4 | 80% |
31
+ | In Progress | 0 | 0% |
32
+ | Ready | 0 | 0% |
33
+ | Blocked | 0 | 0% |
34
+ | Backlog | 0 | 0% |
35
+ | Skipped | 1 | 20% |
36
+
37
+ ---
38
+
39
+ ## Ключевые находки
40
+
41
+ ### 1. Неверная атрибуция root cause в отчёте REPORT-002
42
+ **Уверенность:** [HIGH]
43
+ **Данные:**
44
+ - В отчёте REPORT-002 указан root cause: `check-conditions.js` (строка 17-18).
45
+ - Лог пайплайна (строки 9-17) показывает, что стейдж `check-conditions` завершился со статусом `conditions_ok` (`dependencies.resolved: true`, `prerequisites.met: true`).
46
+ - Решение о пропуске принял стейдж `check-relevance` (строка 24-26: `decision: irrelevant (dependencies inactive)`).
47
+
48
+ ### 2. Ошибка логики стейджа check-relevance
49
+ **Уверенность:** [HIGH]
50
+ **Данные:**
51
+ - `check-conditions` подтвердил разрешённые зависимости (`dependencies.resolved: true`).
52
+ - `check-relevance` оценил те же зависимости как неактивные (`dependencies.status: inactive`).
53
+ - Это противоречие привело к ошибочному решению `irrelevant` и пропуску тикета QA-001.
54
+
55
+ ---
56
+
57
+ ## Проблемы и риски
58
+
59
+ | # | Проблема | Серьёзность | Данные | Рекомендация |
60
+ |---|---------|-------------|--------|-------------|
61
+ | 1 | Некорректная атрибуция root cause в отчёте | HIGH | Отчёт указывает на `check-conditions`, лог показывает `check-relevance` | Обновить отчёт REPORT-002 с корректной атрибуцией |
62
+ | 2 | Ошибочная логика проверки релевантности | HIGH | Противоречие между `dependencies.resolved: true` и `dependencies.status: inactive` | Исправить алгоритм в `check-relevance.js` |
63
+
64
+ ---
65
+
66
+ ## Рекомендации
67
+
68
+ | # | Действие | Приоритет | Почему | Ожидаемый результат |
69
+ |---|---------|-----------|--------|-------------------|
70
+ | 1 | Исправить алгоритм определения статуса зависимостей в `check-relevance.js` | HIGH | Логика стейджа противоречит данным из `check-conditions` | Стейдж будет принимать корректные решения о релевантности |
71
+ | 2 | Обновить отчёт REPORT-002 с корректным root cause (`check-relevance.js`) | HIGH | Отчёт содержит неверные данные, что вводит в заблуждение | Отчёт будет отражать реальную причину пропуска тикета |
72
+
73
+ ---
74
+
75
+ ## За пределами скоупа
76
+
77
+ - Нет данных о сложности тикетов и результатах ревью для расчёта взвешенных метрик и First-Pass Rate.
78
+ - Неизвестен общий состав тикетов плана PLAN-001 (только факт обработки 5 тикетов в итерации).
79
+
80
+ ---
81
+
82
+ ## Решение
83
+
84
+ **Статус плана:** ATTENTION (обнаружена HIGH проблема, влияющая на корректность обработки тикетов)
85
+ **Рекомендуемое действие:** скорректировать (исправить логику стейджа и обновить отчёт)
86
+
87
+ ---
88
+
89
+ **DoD проверка:**
90
+ - [x] Секция Result заполнена
91
+ - [x] Каждый вывод подкреплён конкретными данными из отчёта/лога
92
+ - [x] Рекомендации actionable (содержат конкретное действие)
93
+ - [x] Указан уровень уверенности для ключевых выводов
94
+ - [x] Использован требуемый формат вывода
95
+
96
+ ---RESULT---
97
+ status: has_gaps
98
+ report_id: REPORT-002
99
+ gaps: "Ошибка атрибуции root cause в отчёте REPORT-002; некорректная логика стейджа check-relevance приводит к пропуску тикетов."
100
+ ---RESULT---
@@ -0,0 +1,77 @@
1
+ Now I have all the context. Let me produce the analysis.
2
+
3
+ ---
4
+
5
+ # Анализ: Прогресс PLAN-001
6
+
7
+ **Дата анализа:** 2026-04-20
8
+ **Анализируемый план:** PLAN-001
9
+ **Анализируемый отчёт:** REPORT-002
10
+ **Тип анализа:** PROGRESS
11
+
12
+ ---
13
+
14
+ ## Executive Summary
15
+
16
+ При верификации REPORT-002 по логу пайплайна обнаружена **некорректная атрибуция** root cause пропуска тикета QA-001. Предыдущий отчёт возложил вину на стейдж проверки условий, однако лог однозначно показывает, что решение о пропуске принял стейдж `check-relevance` (строка 26 лога: `status="irrelevant"`, `reason="dependencies_inactive"`). Требуется исправление логики релевантности и корректировка отчёта.
17
+
18
+ ---
19
+
20
+ ## Ключевые находки
21
+
22
+ ### 1. Некорректная атрибуция root cause в REPORT-002
23
+ **Уверенность:** [HIGH]
24
+ **Данные из лога:**
25
+
26
+ | Шаг | Стейдж | Скрипт | Результат | Строка лога |
27
+ |-----|--------|--------|-----------|-------------|
28
+ | 313 | `check-conditions` | `check-conditions.js` | `conditions_ok` (dependencies.resolved=true, prerequisites.met=true, blocking_tickets=[]) | 16–17 |
29
+ | **314** | **`check-relevance`** | **`check-relevance.js`** | **`irrelevant` (dependencies.status=inactive, reason=dependencies_inactive)** | **26** |
30
+ | 315 | `skip-ticket` | `script-skip` | `skipped` (reason from check-relevance: dependencies_inactive) | 31 |
31
+
32
+ Стейдж проверки условий **успешно пропустил** тикет дальше (result=`conditions_ok`). Итоговое решение `irrelevant` принял стейдж `check-relevance`. Атрибуция в REPORT-002 ошибочна.
33
+
34
+ ### 2. Противоречие между стейджами
35
+ **Уверенность:** [HIGH]
36
+ **Данные:** `check-conditions` зафиксировал `dependencies.resolved: true` (строка 13), а `check-relevance` — `dependencies.status: inactive` (строка 24). Оба стейджа проверяют зависимости, но получают разные результаты. Вероятно, стейджи используют разные источники данных или разные критерии оценки зависимостей.
37
+
38
+ ---
39
+
40
+ ## Проблемы и риски
41
+
42
+ | # | Проблема | Серьёзность | Данные из лога | Рекомендация |
43
+ |---|---------|-------------|----------------|-------------|
44
+ | 1 | `check-relevance.js` ошибочно признал QA-001 нерелевантным при разрешённых зависимостях | HIGH | Стр. 24: `dependencies.status: inactive` при `dependencies.resolved: true` (стр. 13) | Исправить логику `check-relevance.js`: синхронизировать проверку статуса зависимостей с `check-conditions` |
45
+ | 2 | Расхождение данных о зависимостях между стейджами | HIGH | `resolved: true` vs `status: inactive` для одних и тех же зависимостей | Унифицировать источник данных о зависимостях между стейджами |
46
+ | 3 | Некорректная атрибуция в предыдущем отчёте | MEDIUM | REPORT-002 называет неверный root cause | Исправить REPORT-002: указать `check-relevance.js` как источник решения о skip |
47
+
48
+ ---
49
+
50
+ ## Рекомендации
51
+
52
+ | # | Действие | Приоритет | Почему | Ожидаемый результат |
53
+ |---|---------|-----------|--------|-------------------|
54
+ | 1 | Исправить логику оценки зависимостей в `check-relevance.js` — сверять `dependencies.resolved` с результатом `check-conditions` | CRITICAL | Стейдж проигнорировал `resolved=true` и принял решение по `status=inactive` | QA-001 и аналогичные тикеты не пропускаются ошибочно |
55
+ | 2 | Унифицировать источник данных о зависимостях между стейджами `check-conditions` и `check-relevance` | HIGH | Противоречивые данные для одного тикета (стр. 13 vs стр. 24) | Единая картина состояния зависимостей |
56
+ | 3 | Добавить кросс-валидацию: если `check-conditions` вернул `conditions_ok`, `check-relevance` не должен пропускать по тем же зависимостям | HIGH | Предотвращение противоречивых решений в рамках одного пайплайна | Исключение ситуации, когда один стейдж одобряет, а следующий — отклоняет по тому же критерию |
57
+
58
+ ---
59
+
60
+ ## За пределами скоупа
61
+
62
+ - Причины, по которым `dependencies.status` стал `inactive` — требуется анализ данных тикета QA-001 и его зависимостей, что выходит за рамки анализа лога.
63
+
64
+ ---
65
+
66
+ ## Решение
67
+
68
+ **Статус плана:** AT_RISK — тикет QA-001 ошибочно пропущен из-за бага в `check-relevance.js`, требуется исправление до следующей итерации.
69
+ **Рекомендуемое действие:** скорректировать — исправить `check-relevance.js` и перезапустить QA-001.
70
+
71
+ ---
72
+
73
+ ---RESULT---
74
+ status: has_gaps
75
+ report_id: REPORT-002
76
+ gaps: "Тикет QA-001 ошибочно пропущен стейджем check-relevance (атрибут dependencies.status=inactive при dependencies.resolved=true). Некорректная атрибуция в предыдущем отчёте исправлена: root cause — check-relevance.js, а не check-conditions.js."
77
+ ---RESULT---
@@ -0,0 +1,64 @@
1
+ # REPORT-002 (исправленный) — Верификация атрибуции root cause для QA-001
2
+
3
+ **Дата:** 2026-04-06
4
+ **План:** PLAN-001
5
+ **Источник:** верификация REPORT-002 по логу `pipeline-2026-04-06_qa-001-skip.log`
6
+
7
+ ## Executive Summary
8
+
9
+ Предыдущий отчёт REPORT-002 неверно атрибутировал root cause пропуска QA-001 стейджу `check-conditions.js`. Верификация по логу пайплайна однозначно показывает: стейдж `check-conditions` отработал корректно (`conditions_ok`), а решение о skip принято стейджем `check-relevance` на основании признака `dependencies.status: inactive`. Корректный root cause — `check-relevance.js`.
10
+
11
+ ## Верификация по логу (пошаговая)
12
+
13
+ | Step | Стейдж | Результат | Вклад в skip |
14
+ |------|--------|-----------|-------------|
15
+ | 313 | `check-conditions` | `conditions_ok` (deps resolved: true, prerequisites met: true) | **Нет** — пропустил тикет дальше |
16
+ | 314 | `check-relevance` | `irrelevant` (reason: `dependencies_inactive`) | **Да** — принял решение о нерелевантности |
17
+ | 315 | `skip-ticket` | `skipped` (reason from check-relevance: `dependencies_inactive`) | Исполнитель решения step 314 |
18
+
19
+ ### Ключевое противоречие в отчёте
20
+
21
+ REPORT-002 утверждает: _«`check-conditions.js` — стейдж неверно определил, что условия запуска не выполнены»_. Лог показывает обратное: `check-conditions` определил условия **выполненными** и передал тикет дальше. Стейдж `check-relevance` — это совершенно отдельный стейдж, который проверяет **актуальность** (relevance), а не условия запуска.
22
+
23
+ **Природа ошибки в REPORT-002:** смешение двух разных стейджей — `check-conditions` (условия запуска) и `check-relevance` (актуальность тикета). Решение принял `check-relevance`.
24
+
25
+ ## Исправленные находки
26
+
27
+ ### QA-001 — тикет ошибочно пропущен
28
+
29
+ | Поле | Было в REPORT-002 | Исправлено по логу |
30
+ |------|-------------------|--------------------|
31
+ | **Root cause** | `check-conditions.js` | **`check-relevance.js`** `[HIGH]` |
32
+ | **Механизм** | Неверно определены условия запуска | Стейдж `check-relevance` определил `dependencies.status: inactive`, хотя `check-conditions` зафиксировал `dependencies.resolved: true` |
33
+ | **Затронутые компоненты** | `check-conditions.js` | **`check-relevance.js`**, источник данных о статусе зависимостей |
34
+ | **Приоритет** | HIGH | HIGH |
35
+
36
+ ### Дополнительная находка: рассогласование данных
37
+
38
+ Между стейджами `check-conditions` и `check-relevance` зафиксировано **противоречивое состояние зависимостей**:
39
+
40
+ - `check-conditions` (step 313): `dependencies.resolved: true`
41
+ - `check-relevance` (step 314): `dependencies.status: inactive`
42
+
43
+ Оба стейджа запрашивают статус зависимостей, но получают **разные результаты**. Возможные причины: разные источники данных, кэширование, race condition. Уровень уверенности: `[MEDIUM]` — требуется дополнительное расследование.
44
+
45
+ ## Исправленные рекомендации
46
+
47
+ | # | Действие | Приоритет | Обоснование |
48
+ |---|----------|-----------|-------------|
49
+ | 1 | Пересмотреть логику проверки `dependencies.status` в **`check-relevance.js`** — почему статус `inactive` при `resolved: true` | **CRITICAL** | Именно этот стейдж принял ошибочное решение о skip |
50
+ | 2 | Унифицировать источник данных о зависимостях между `check-conditions` и `check-relevance` | **HIGH** | Рассогласование данных между стейджами — системная проблема |
51
+ | 3 | Добавить cross-check: если `check-conditions` дал `conditions_ok`, а `check-relevance` — `irrelevant` по зависимостям, логировать warning | **MEDIUM** | Раннее обнаружение рассогласований |
52
+
53
+ ## За пределами скоупа
54
+
55
+ - Почему `dependencies.status` вернул `inactive` в `check-relevance` — требует доступа к состоянию зависимостей тикета на момент итерации.
56
+ - Были ли другие тикеты с аналогичной проблемой в этой итерации — требует полного лога.
57
+
58
+ ---
59
+
60
+ ---RESULT---
61
+ status: has_gaps
62
+ report_id: REPORT-002
63
+ gaps: "Root cause пропуска QA-001 неверно атрибутирован в REPORT-002: виновен check-relevance.js, а не check-conditions.js. Обнаружено рассогласование данных о зависимостях между стейджами. Требуется исправление логики check-relevance.js и унификация источника данных."
64
+ ---RESULT---