workflow-ai 1.1.0 → 1.2.1

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 (593) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/README.md +105 -7
  3. package/configs/pipeline.yaml +23 -2
  4. package/package.json +44 -44
  5. package/src/lib/operations/tickets.mjs +305 -207
  6. package/src/lib/utils.mjs +286 -286
  7. package/src/runner.mjs +314 -34
  8. package/src/scripts/check-conditions.js +2 -2
  9. package/src/scripts/get-next-id.js +144 -41
  10. package/src/scripts/move-ticket.js +225 -68
  11. package/src/scripts/pick-next-task.js +753 -93
  12. package/src/skills/coach/SKILL.md +1 -1
  13. package/src/skills/manual-testing/SKILL.md +2 -0
  14. package/src/scripts/tests/timeout-cascade.test.js +0 -28
  15. package/src/skills/analyze-report/README.md +0 -44
  16. package/src/skills/analyze-report/algorithms/progress-assessment.md +0 -108
  17. package/src/skills/analyze-report/knowledge/analysis-frameworks.md +0 -66
  18. package/src/skills/analyze-report/knowledge/report-structure.md +0 -61
  19. package/src/skills/analyze-report/scripts/calc-plan-metrics.js +0 -234
  20. package/src/skills/analyze-report/templates/analysis-report.md +0 -80
  21. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/claude-sonnet/trial-1.md +0 -5
  22. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/claude-sonnet/trial-2.md +0 -98
  23. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/claude-sonnet/trial-3.md +0 -99
  24. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/judge.json +0 -163
  25. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-deepseek/trial-1.md +0 -89
  26. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-deepseek/trial-2.md +0 -88
  27. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-deepseek/trial-3.md +0 -100
  28. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-glm/trial-1.md +0 -77
  29. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-glm/trial-2.md +0 -64
  30. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-glm/trial-3.md +0 -110
  31. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-minimax/trial-1.md +0 -74
  32. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-minimax/trial-2.md +0 -38
  33. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/kilo-minimax/trial-3.md +0 -61
  34. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001/current/meta.json +0 -115
  35. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-001-evidence-from-log.yaml +0 -60
  36. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/claude-sonnet/trial-1.md +0 -90
  37. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/claude-sonnet/trial-2.md +0 -89
  38. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/claude-sonnet/trial-3.md +0 -5
  39. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/judge.json +0 -163
  40. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-deepseek/trial-1.md +0 -84
  41. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-deepseek/trial-2.md +0 -77
  42. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-deepseek/trial-3.md +0 -89
  43. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-glm/trial-1.md +0 -103
  44. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-glm/trial-2.md +0 -103
  45. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-glm/trial-3.md +0 -103
  46. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-minimax/trial-1.md +0 -93
  47. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-minimax/trial-2.md +0 -93
  48. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/kilo-minimax/trial-3.md +0 -86
  49. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002/current/meta.json +0 -115
  50. package/src/skills/analyze-report/tests/cases/TC-ANALYZE-REPORT-002-result-block-format.yaml +0 -44
  51. package/src/skills/analyze-report/tests/fixtures/REPORT-002-incorrect-attribution.md +0 -27
  52. package/src/skills/analyze-report/tests/fixtures/pipeline-2026-04-06_qa-001-skip.log +0 -32
  53. package/src/skills/analyze-report/tests/index.yaml +0 -25
  54. package/src/skills/analyze-report/tests/rubrics/evidence-from-log.md +0 -22
  55. package/src/skills/analyze-report/tests/rubrics/result-block-format.md +0 -22
  56. package/src/skills/analyze-report/workflows/progress.md +0 -158
  57. package/src/skills/analyze-report/workflows/retrospective.md +0 -143
  58. package/src/skills/coach/README.md +0 -43
  59. package/src/skills/coach/SKILL.md.legacy +0 -157
  60. package/src/skills/coach/algorithms/gap-analysis.md +0 -69
  61. package/src/skills/coach/algorithms/improvement-prioritization.md +0 -62
  62. package/src/skills/coach/algorithms/skill-scoring.md +0 -80
  63. package/src/skills/coach/knowledge/audit-applied-changes-clean.txt +0 -11
  64. package/src/skills/coach/knowledge/backlog-management.md +0 -67
  65. package/src/skills/coach/knowledge/backlog-management.md.legacy +0 -90
  66. package/src/skills/coach/knowledge/common-antipatterns.md +0 -76
  67. package/src/skills/coach/knowledge/prompt-engineering.md +0 -45
  68. package/src/skills/coach/knowledge/shared-knowledge-guide.md +0 -44
  69. package/src/skills/coach/knowledge/skill-anatomy.md +0 -49
  70. package/src/skills/coach/knowledge/test-authorship.md +0 -141
  71. package/src/skills/coach/templates/audit-report.md +0 -39
  72. package/src/skills/coach/templates/coach-backlog-init.yaml +0 -14
  73. package/src/skills/coach/templates/coach-backlog-init.yaml.legacy +0 -10
  74. package/src/skills/coach/templates/improvement-plan.md +0 -42
  75. package/src/skills/coach/templates/new-skill.md +0 -95
  76. package/src/skills/coach/tests/cases/TC-COACH-001/current/claude-sonnet/trial-1.md +0 -58
  77. package/src/skills/coach/tests/cases/TC-COACH-001/current/claude-sonnet/trial-2.md +0 -65
  78. package/src/skills/coach/tests/cases/TC-COACH-001/current/claude-sonnet/trial-3.md +0 -58
  79. package/src/skills/coach/tests/cases/TC-COACH-001/current/judge.json +0 -151
  80. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-deepseek/trial-1.md +0 -46
  81. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-deepseek/trial-2.md +0 -0
  82. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-deepseek/trial-3.md +0 -75
  83. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-glm/trial-1.md +0 -81
  84. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-glm/trial-2.md +0 -101
  85. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-glm/trial-3.md +0 -91
  86. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-minimax/trial-1.md +0 -48
  87. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-minimax/trial-2.md +0 -30
  88. package/src/skills/coach/tests/cases/TC-COACH-001/current/kilo-minimax/trial-3.md +0 -55
  89. package/src/skills/coach/tests/cases/TC-COACH-001/current/meta.json +0 -94
  90. package/src/skills/coach/tests/cases/TC-COACH-001-evidence-based-temporal-diagram.yaml +0 -53
  91. package/src/skills/coach/tests/cases/TC-COACH-002/current/claude-sonnet/trial-1.md +0 -46
  92. package/src/skills/coach/tests/cases/TC-COACH-002/current/claude-sonnet/trial-2.md +0 -50
  93. package/src/skills/coach/tests/cases/TC-COACH-002/current/claude-sonnet/trial-3.md +0 -48
  94. package/src/skills/coach/tests/cases/TC-COACH-002/current/judge.json +0 -151
  95. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-deepseek/trial-1.md +0 -0
  96. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-deepseek/trial-2.md +0 -37
  97. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-deepseek/trial-3.md +0 -30
  98. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-glm/trial-1.md +0 -23
  99. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-glm/trial-2.md +0 -29
  100. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-glm/trial-3.md +0 -35
  101. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-minimax/trial-1.md +0 -13
  102. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-minimax/trial-2.md +0 -19
  103. package/src/skills/coach/tests/cases/TC-COACH-002/current/kilo-minimax/trial-3.md +0 -33
  104. package/src/skills/coach/tests/cases/TC-COACH-002/current/meta.json +0 -94
  105. package/src/skills/coach/tests/cases/TC-COACH-002-root-cause-first.yaml +0 -57
  106. package/src/skills/coach/tests/fixtures/pipeline-2026-04-06_id-collision.log +0 -77
  107. package/src/skills/coach/tests/index.yaml +0 -29
  108. package/src/skills/coach/tests/rubrics/calibration/evidence-based-bad.md +0 -13
  109. package/src/skills/coach/tests/rubrics/calibration/evidence-based-good.md +0 -29
  110. package/src/skills/coach/tests/rubrics/evidence-based.md +0 -26
  111. package/src/skills/coach/tests/rubrics/root-cause-first.md +0 -21
  112. package/src/skills/coach/workflows/analyze.md +0 -79
  113. package/src/skills/coach/workflows/analyze.md.legacy +0 -64
  114. package/src/skills/coach/workflows/audit.md +0 -74
  115. package/src/skills/coach/workflows/audit.md.legacy +0 -59
  116. package/src/skills/coach/workflows/create.md +0 -80
  117. package/src/skills/coach/workflows/create.md.legacy +0 -67
  118. package/src/skills/coach/workflows/improve.md +0 -71
  119. package/src/skills/coach/workflows/improve.md.legacy +0 -60
  120. package/src/skills/coach/workflows/research.md +0 -55
  121. package/src/skills/coach/workflows/review.md +0 -52
  122. package/src/skills/coach/workflows/review.md.legacy +0 -48
  123. package/src/skills/coach/workflows/test.md +0 -97
  124. package/src/skills/create-plan/README.md +0 -39
  125. package/src/skills/create-plan/algorithms/risk-assessment.md +0 -73
  126. package/src/skills/create-plan/knowledge/plan-completeness.md +0 -67
  127. package/src/skills/create-plan/knowledge/plan-lifecycle.md +0 -33
  128. package/src/skills/create-plan/knowledge/task-verification-pairs.md +0 -151
  129. package/src/skills/create-plan/knowledge/test-hygiene.md +0 -47
  130. package/src/skills/create-plan/scripts/validate-completeness.js +0 -182
  131. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/claude-sonnet/trial-1.md +0 -5
  132. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/claude-sonnet/trial-2.md +0 -39
  133. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/claude-sonnet/trial-3.md +0 -35
  134. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/judge.json +0 -167
  135. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-deepseek/trial-1.md +0 -5
  136. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-deepseek/trial-2.md +0 -10
  137. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-deepseek/trial-3.md +0 -5
  138. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-glm/trial-1.md +0 -26
  139. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-glm/trial-2.md +0 -86
  140. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-glm/trial-3.md +0 -5
  141. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-minimax/trial-1.md +0 -11
  142. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-minimax/trial-2.md +0 -15
  143. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/kilo-minimax/trial-3.md +0 -14
  144. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001/current/meta.json +0 -119
  145. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-001-validate-completeness.yaml +0 -41
  146. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/claude-sonnet/trial-1.md +0 -25
  147. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/claude-sonnet/trial-2.md +0 -30
  148. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/claude-sonnet/trial-3.md +0 -37
  149. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/judge.json +0 -164
  150. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-deepseek/trial-1.md +0 -3
  151. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-deepseek/trial-2.md +0 -11
  152. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-deepseek/trial-3.md +0 -13
  153. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-glm/trial-1.md +0 -44
  154. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-glm/trial-2.md +0 -5
  155. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-glm/trial-3.md +0 -49
  156. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-minimax/trial-1.md +0 -6
  157. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-minimax/trial-2.md +0 -11
  158. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/kilo-minimax/trial-3.md +0 -16
  159. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002/current/meta.json +0 -116
  160. package/src/skills/create-plan/tests/cases/TC-CREATE-PLAN-002-task-granularity.yaml +0 -39
  161. package/src/skills/create-plan/tests/index.yaml +0 -25
  162. package/src/skills/create-plan/tests/rubrics/task-granularity.md +0 -21
  163. package/src/skills/create-plan/tests/rubrics/validate-completeness.md +0 -21
  164. package/src/skills/create-plan/workflows/create.md +0 -136
  165. package/src/skills/create-report/README.md +0 -40
  166. package/src/skills/create-report/algorithms/metric-calculation.md +0 -93
  167. package/src/skills/create-report/knowledge/report-metrics.md +0 -82
  168. package/src/skills/create-report/scripts/calc-metrics.js +0 -383
  169. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/claude-sonnet/trial-1.md +0 -25
  170. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/claude-sonnet/trial-2.md +0 -26
  171. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/claude-sonnet/trial-3.md +0 -28
  172. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/judge.json +0 -163
  173. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-deepseek/trial-1.md +0 -4
  174. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-deepseek/trial-2.md +0 -3
  175. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-deepseek/trial-3.md +0 -6
  176. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-glm/trial-1.md +0 -8
  177. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-glm/trial-2.md +0 -12
  178. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-glm/trial-3.md +0 -7
  179. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-minimax/trial-1.md +0 -12
  180. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-minimax/trial-2.md +0 -22
  181. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/kilo-minimax/trial-3.md +0 -13
  182. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001/current/meta.json +0 -115
  183. package/src/skills/create-report/tests/cases/TC-CREATE-REPORT-001-root-cause-attribution.yaml +0 -57
  184. package/src/skills/create-report/tests/index.yaml +0 -20
  185. package/src/skills/create-report/tests/rubrics/root-cause-attribution.md +0 -21
  186. package/src/skills/create-report/workflows/standard.md +0 -175
  187. package/src/skills/decompose-gaps/README.md +0 -39
  188. package/src/skills/decompose-gaps/algorithms/scope-check.md +0 -110
  189. package/src/skills/decompose-gaps/knowledge/scope-validation.md +0 -65
  190. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/claude-sonnet/trial-1.md +0 -41
  191. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/claude-sonnet/trial-2.md +0 -41
  192. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/claude-sonnet/trial-3.md +0 -56
  193. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/judge.json +0 -164
  194. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-deepseek/trial-1.md +0 -25
  195. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-deepseek/trial-2.md +0 -17
  196. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-deepseek/trial-3.md +0 -22
  197. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-glm/trial-1.md +0 -25
  198. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-glm/trial-2.md +0 -5
  199. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-glm/trial-3.md +0 -29
  200. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-minimax/trial-1.md +0 -27
  201. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-minimax/trial-2.md +0 -35
  202. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/kilo-minimax/trial-3.md +0 -18
  203. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001/current/meta.json +0 -116
  204. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-001-scope-exclusion.yaml +0 -46
  205. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/claude-sonnet/trial-1.md +0 -27
  206. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/claude-sonnet/trial-2.md +0 -30
  207. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/claude-sonnet/trial-3.md +0 -27
  208. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/judge.json +0 -163
  209. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-deepseek/trial-1.md +0 -0
  210. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-deepseek/trial-2.md +0 -15
  211. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-deepseek/trial-3.md +0 -7
  212. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-glm/trial-1.md +0 -21
  213. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-glm/trial-2.md +0 -38
  214. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-glm/trial-3.md +0 -16
  215. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-minimax/trial-1.md +0 -5
  216. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-minimax/trial-2.md +0 -10
  217. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/kilo-minimax/trial-3.md +0 -9
  218. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002/current/meta.json +0 -115
  219. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-002-glob-before-write.yaml +0 -36
  220. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/claude-sonnet/trial-1.md +0 -30
  221. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/claude-sonnet/trial-2.md +0 -30
  222. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/claude-sonnet/trial-3.md +0 -30
  223. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/judge.json +0 -165
  224. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-deepseek/trial-1.md +0 -5
  225. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-deepseek/trial-2.md +0 -26
  226. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-deepseek/trial-3.md +0 -5
  227. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-glm/trial-1.md +0 -39
  228. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-glm/trial-2.md +0 -37
  229. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-glm/trial-3.md +0 -45
  230. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-minimax/trial-1.md +0 -26
  231. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-minimax/trial-2.md +0 -27
  232. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/kilo-minimax/trial-3.md +0 -7
  233. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003/current/meta.json +0 -117
  234. package/src/skills/decompose-gaps/tests/cases/TC-DECOMPOSE-GAPS-003-parent-plan-mandatory.yaml +0 -41
  235. package/src/skills/decompose-gaps/tests/index.yaml +0 -30
  236. package/src/skills/decompose-gaps/tests/rubrics/glob-before-write.md +0 -21
  237. package/src/skills/decompose-gaps/tests/rubrics/parent-plan-mandatory.md +0 -22
  238. package/src/skills/decompose-gaps/tests/rubrics/scope-exclusion.md +0 -21
  239. package/src/skills/decompose-gaps/workflows/decompose.md +0 -123
  240. package/src/skills/decompose-plan/README.md +0 -43
  241. package/src/skills/decompose-plan/algorithms/deduplication.md +0 -101
  242. package/src/skills/decompose-plan/knowledge/atomicity-checklist.md +0 -139
  243. package/src/skills/decompose-plan/knowledge/capabilities.md +0 -68
  244. package/src/skills/decompose-plan/knowledge/human-task-rules.md +0 -82
  245. package/src/skills/decompose-plan/knowledge/scope-guard-checklist.md +0 -73
  246. package/src/skills/decompose-plan/scripts/check-atomicity-limit.js +0 -47
  247. package/src/skills/decompose-plan/scripts/check-duplicates.js +0 -323
  248. package/src/skills/decompose-plan/scripts/verify-atomicity.js +0 -408
  249. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/claude-sonnet/trial-1.md +0 -30
  250. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/claude-sonnet/trial-2.md +0 -36
  251. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/claude-sonnet/trial-3.md +0 -37
  252. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/judge.json +0 -163
  253. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-deepseek/trial-1.md +0 -20
  254. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-deepseek/trial-2.md +0 -17
  255. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-deepseek/trial-3.md +0 -28
  256. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-glm/trial-1.md +0 -114
  257. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-glm/trial-2.md +0 -137
  258. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-glm/trial-3.md +0 -188
  259. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-minimax/trial-1.md +0 -0
  260. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-minimax/trial-2.md +0 -32
  261. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/kilo-minimax/trial-3.md +0 -110
  262. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001/current/meta.json +0 -115
  263. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-001-atomicity-no-1to1.yaml +0 -56
  264. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/claude-sonnet/trial-1.md +0 -47
  265. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/claude-sonnet/trial-2.md +0 -54
  266. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/claude-sonnet/trial-3.md +0 -43
  267. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/judge.json +0 -163
  268. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-deepseek/trial-1.md +0 -15
  269. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-deepseek/trial-2.md +0 -5
  270. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-deepseek/trial-3.md +0 -12
  271. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-glm/trial-1.md +0 -34
  272. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-glm/trial-2.md +0 -30
  273. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-glm/trial-3.md +0 -35
  274. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-minimax/trial-1.md +0 -0
  275. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-minimax/trial-2.md +0 -31
  276. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/kilo-minimax/trial-3.md +0 -0
  277. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002/current/meta.json +0 -115
  278. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-002-get-next-id-mandatory.yaml +0 -44
  279. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/claude-sonnet/trial-1.md +0 -21
  280. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/claude-sonnet/trial-2.md +0 -38
  281. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/claude-sonnet/trial-3.md +0 -30
  282. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/judge.json +0 -163
  283. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-deepseek/trial-1.md +0 -31
  284. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-deepseek/trial-2.md +0 -35
  285. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-deepseek/trial-3.md +0 -48
  286. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-glm/trial-1.md +0 -167
  287. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-glm/trial-2.md +0 -62
  288. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-glm/trial-3.md +0 -174
  289. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-minimax/trial-1.md +0 -0
  290. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-minimax/trial-2.md +0 -0
  291. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/kilo-minimax/trial-3.md +0 -0
  292. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003/current/meta.json +0 -115
  293. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-003-verbatim-dod-transfer.yaml +0 -42
  294. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/claude-sonnet/trial-1.md +0 -55
  295. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/claude-sonnet/trial-2.md +0 -49
  296. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/claude-sonnet/trial-3.md +0 -49
  297. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/judge.json +0 -163
  298. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-deepseek/trial-1.md +0 -104
  299. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-deepseek/trial-2.md +0 -45
  300. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-deepseek/trial-3.md +0 -58
  301. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-glm/trial-1.md +0 -193
  302. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-glm/trial-2.md +0 -202
  303. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-glm/trial-3.md +0 -155
  304. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-minimax/trial-1.md +0 -52
  305. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-minimax/trial-2.md +0 -17
  306. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/kilo-minimax/trial-3.md +0 -0
  307. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004/current/meta.json +0 -115
  308. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-004-executor-atomicity.yaml +0 -64
  309. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/claude-sonnet/trial-1.md +0 -59
  310. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/claude-sonnet/trial-2.md +0 -204
  311. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/claude-sonnet/trial-3.md +0 -213
  312. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/judge.json +0 -163
  313. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-deepseek/trial-1.md +0 -0
  314. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-deepseek/trial-2.md +0 -57
  315. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-deepseek/trial-3.md +0 -54
  316. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-glm/trial-1.md +0 -147
  317. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-glm/trial-2.md +0 -165
  318. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-glm/trial-3.md +0 -133
  319. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-minimax/trial-1.md +0 -81
  320. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-minimax/trial-2.md +0 -108
  321. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/kilo-minimax/trial-3.md +0 -3
  322. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005/current/meta.json +0 -114
  323. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-005-capabilities-registry.yaml +0 -78
  324. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/claude-sonnet/trial-1.md +0 -225
  325. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/claude-sonnet/trial-2.md +0 -66
  326. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/claude-sonnet/trial-3.md +0 -36
  327. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/judge.json +0 -163
  328. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-deepseek/trial-1.md +0 -42
  329. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-deepseek/trial-2.md +0 -67
  330. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-deepseek/trial-3.md +0 -40
  331. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-glm/trial-1.md +0 -122
  332. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-glm/trial-2.md +0 -131
  333. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-glm/trial-3.md +0 -138
  334. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-minimax/trial-1.md +0 -41
  335. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-minimax/trial-2.md +0 -88
  336. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/kilo-minimax/trial-3.md +0 -0
  337. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006/current/meta.json +0 -115
  338. package/src/skills/decompose-plan/tests/cases/TC-DECOMPOSE-PLAN-006-dod-threshold.yaml +0 -72
  339. package/src/skills/decompose-plan/tests/index.yaml +0 -45
  340. package/src/skills/decompose-plan/tests/rubrics/atomicity-no-1to1.md +0 -21
  341. package/src/skills/decompose-plan/tests/rubrics/capabilities-registry.md +0 -21
  342. package/src/skills/decompose-plan/tests/rubrics/dod-threshold.md +0 -21
  343. package/src/skills/decompose-plan/tests/rubrics/executor-atomicity.md +0 -21
  344. package/src/skills/decompose-plan/tests/rubrics/get-next-id-mandatory.md +0 -21
  345. package/src/skills/decompose-plan/tests/rubrics/verbatim-dod-transfer.md +0 -21
  346. package/src/skills/decompose-plan/workflows/decompose.md +0 -305
  347. package/src/skills/deep-research/README.md +0 -36
  348. package/src/skills/deep-research/algorithms/source-scoring.md +0 -63
  349. package/src/skills/deep-research/algorithms/synthesis.md +0 -67
  350. package/src/skills/deep-research/knowledge/data-validation.md +0 -44
  351. package/src/skills/deep-research/knowledge/perplexity-config.md +0 -30
  352. package/src/skills/deep-research/knowledge/research-methodology.md +0 -54
  353. package/src/skills/deep-research/knowledge/source-evaluation.md +0 -33
  354. package/src/skills/deep-research/scripts/perplexity-research.js +0 -315
  355. package/src/skills/deep-research/templates/brief-summary.md +0 -25
  356. package/src/skills/deep-research/templates/research-report.md +0 -76
  357. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/claude-haiku/trial-1.md +0 -48
  358. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/claude-haiku/trial-2.md +0 -88
  359. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/claude-haiku/trial-3.md +0 -56
  360. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/judge.json +0 -163
  361. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-free/trial-1.md +0 -58
  362. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-free/trial-2.md +0 -249
  363. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-free/trial-3.md +0 -44
  364. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm/trial-1.md +0 -96
  365. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm/trial-2.md +0 -56
  366. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm/trial-3.md +0 -94
  367. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm-air/trial-1.md +0 -11
  368. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm-air/trial-2.md +0 -1
  369. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/kilo-glm-air/trial-3.md +0 -1
  370. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001/current/meta.json +0 -115
  371. package/src/skills/deep-research/tests/cases/TC-DEEP-RESEARCH-001-self-check-url.yaml +0 -58
  372. package/src/skills/deep-research/tests/index.yaml +0 -20
  373. package/src/skills/deep-research/tests/rubrics/self-check-url.md +0 -34
  374. package/src/skills/deep-research/workflows/base-checklist.md +0 -19
  375. package/src/skills/deep-research/workflows/benchmark.md +0 -38
  376. package/src/skills/deep-research/workflows/competitor.md +0 -44
  377. package/src/skills/deep-research/workflows/custom.md +0 -32
  378. package/src/skills/deep-research/workflows/market.md +0 -44
  379. package/src/skills/deep-research/workflows/technology.md +0 -40
  380. package/src/skills/deep-research/workflows/trend.md +0 -40
  381. package/src/skills/execute-task/README.md +0 -44
  382. package/src/skills/execute-task/algorithms/execution-strategy.md +0 -136
  383. package/src/skills/execute-task/knowledge/context-checkpoints.md +0 -75
  384. package/src/skills/execute-task/knowledge/ticket-structure.md +0 -70
  385. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/claude-haiku/trial-1.md +0 -5
  386. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/claude-haiku/trial-2.md +0 -5
  387. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/claude-haiku/trial-3.md +0 -5
  388. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/judge.json +0 -124
  389. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-free/trial-1.md +0 -4
  390. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-free/trial-2.md +0 -4
  391. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-free/trial-3.md +0 -4
  392. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-glm-air/trial-1.md +0 -4
  393. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-glm-air/trial-2.md +0 -4
  394. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/kilo-glm-air/trial-3.md +0 -11
  395. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001/current/meta.json +0 -88
  396. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-001-no-ticket-creation.yaml +0 -48
  397. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/claude-haiku/trial-1.md +0 -5
  398. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/claude-haiku/trial-2.md +0 -6
  399. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/claude-haiku/trial-3.md +0 -5
  400. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/judge.json +0 -124
  401. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-free/trial-1.md +0 -4
  402. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-free/trial-2.md +0 -4
  403. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-free/trial-3.md +0 -8
  404. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-glm-air/trial-1.md +0 -9
  405. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-glm-air/trial-2.md +0 -26
  406. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/kilo-glm-air/trial-3.md +0 -4
  407. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002/current/meta.json +0 -89
  408. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-002-no-duplicate-dod.yaml +0 -44
  409. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/claude-haiku/trial-1.md +0 -5
  410. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/claude-haiku/trial-2.md +0 -5
  411. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/claude-haiku/trial-3.md +0 -5
  412. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/judge.json +0 -46
  413. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003/current/meta.json +0 -37
  414. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-003-verification-proportionality.yaml +0 -46
  415. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/claude-haiku/trial-1.md +0 -18
  416. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/claude-haiku/trial-2.md +0 -16
  417. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/claude-haiku/trial-3.md +0 -14
  418. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/judge.json +0 -124
  419. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-free/trial-1.md +0 -5
  420. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-free/trial-2.md +0 -5
  421. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-free/trial-3.md +0 -1
  422. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-glm-air/trial-1.md +0 -8
  423. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-glm-air/trial-2.md +0 -5
  424. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/kilo-glm-air/trial-3.md +0 -4
  425. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004/current/meta.json +0 -89
  426. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-004-no-foreign-ticket-edit.yaml +0 -50
  427. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/claude-haiku/trial-1.md +0 -5
  428. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/claude-haiku/trial-2.md +0 -5
  429. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/claude-haiku/trial-3.md +0 -5
  430. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/judge.json +0 -124
  431. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-free/trial-1.md +0 -15
  432. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-free/trial-2.md +0 -4
  433. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-free/trial-3.md +0 -5
  434. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-glm-air/trial-1.md +0 -11
  435. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-glm-air/trial-2.md +0 -11
  436. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/kilo-glm-air/trial-3.md +0 -4
  437. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005/current/meta.json +0 -88
  438. package/src/skills/execute-task/tests/cases/TC-EXECUTE-TASK-005-ticket-fields-updated.yaml +0 -39
  439. package/src/skills/execute-task/tests/fixtures/IMPL-902-create-file.md +0 -41
  440. package/src/skills/execute-task/tests/fixtures/IMPL-904-current-task.md +0 -40
  441. package/src/skills/execute-task/tests/fixtures/IMPL-906-fill-ticket.md +0 -42
  442. package/src/skills/execute-task/tests/fixtures/QA-901-button-click.md +0 -41
  443. package/src/skills/execute-task/tests/fixtures/QA-903-visual-figma.md +0 -40
  444. package/src/skills/execute-task/tests/fixtures/TASK-905-done-with-typo.md +0 -36
  445. package/src/skills/execute-task/tests/index.yaml +0 -39
  446. package/src/skills/execute-task/tests/rubrics/no-duplicate-dod.md +0 -22
  447. package/src/skills/execute-task/tests/rubrics/no-foreign-ticket-edit.md +0 -20
  448. package/src/skills/execute-task/tests/rubrics/no-ticket-creation.md +0 -21
  449. package/src/skills/execute-task/tests/rubrics/ticket-fields-updated.md +0 -23
  450. package/src/skills/execute-task/tests/rubrics/verification-proportionality.md +0 -22
  451. package/src/skills/execute-task/workflows/execute.md +0 -104
  452. package/src/skills/manual-testing/README.md +0 -63
  453. package/src/skills/manual-testing/algorithms/blocked-tool-strategy.md +0 -74
  454. package/src/skills/manual-testing/algorithms/bug-severity.md +0 -73
  455. package/src/skills/manual-testing/algorithms/mcp-budget.md +0 -97
  456. package/src/skills/manual-testing/algorithms/test-prioritization.md +0 -69
  457. package/src/skills/manual-testing/knowledge/browser-extension-testing.md +0 -102
  458. package/src/skills/manual-testing/knowledge/browser-tools.md +0 -114
  459. package/src/skills/manual-testing/knowledge/desktop-tools-advanced.md +0 -92
  460. package/src/skills/manual-testing/knowledge/desktop-tools-core.md +0 -76
  461. package/src/skills/manual-testing/knowledge/sandbox-advanced.md +0 -83
  462. package/src/skills/manual-testing/knowledge/sandbox-core.md +0 -67
  463. package/src/skills/manual-testing/knowledge/stateful-edge-cases.md +0 -69
  464. package/src/skills/manual-testing/knowledge/test-case-design.md +0 -107
  465. package/src/skills/manual-testing/knowledge/testing-types.md +0 -45
  466. package/src/skills/manual-testing/templates/bug-report.md +0 -52
  467. package/src/skills/manual-testing/templates/test-case.md +0 -34
  468. package/src/skills/manual-testing/templates/test-plan.md +0 -97
  469. package/src/skills/manual-testing/templates/test-session-report.md +0 -56
  470. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/claude-sonnet/trial-1.md +0 -34
  471. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/claude-sonnet/trial-2.md +0 -32
  472. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/claude-sonnet/trial-3.md +0 -30
  473. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/judge.json +0 -163
  474. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-deepseek/trial-1.md +0 -0
  475. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-deepseek/trial-2.md +0 -7
  476. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-deepseek/trial-3.md +0 -0
  477. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-glm/trial-1.md +0 -4
  478. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-glm/trial-2.md +0 -15
  479. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-glm/trial-3.md +0 -8
  480. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-minimax/trial-1.md +0 -5
  481. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-minimax/trial-2.md +0 -7
  482. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/kilo-minimax/trial-3.md +0 -7
  483. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001/current/meta.json +0 -114
  484. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-001-sandbox-mandatory.yaml +0 -38
  485. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/claude-sonnet/trial-1.md +0 -44
  486. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/claude-sonnet/trial-2.md +0 -32
  487. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/claude-sonnet/trial-3.md +0 -47
  488. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/judge.json +0 -163
  489. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-deepseek/trial-1.md +0 -19
  490. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-deepseek/trial-2.md +0 -15
  491. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-deepseek/trial-3.md +0 -24
  492. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-glm/trial-1.md +0 -19
  493. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-glm/trial-2.md +0 -13
  494. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-glm/trial-3.md +0 -18
  495. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-minimax/trial-1.md +0 -21
  496. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-minimax/trial-2.md +0 -15
  497. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/kilo-minimax/trial-3.md +0 -14
  498. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002/current/meta.json +0 -114
  499. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-002-visual-tc-screenshot.yaml +0 -37
  500. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-003/current/claude-sonnet/trial-1.md +0 -76
  501. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-003/current/claude-sonnet/trial-2.md +0 -71
  502. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-003/current/claude-sonnet/trial-3.md +0 -85
  503. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-003/current/judge.json +0 -46
  504. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-003/current/meta.json +0 -36
  505. package/src/skills/manual-testing/tests/cases/TC-MANUAL-TESTING-003-qa-non-ui-assertion.yaml +0 -65
  506. package/src/skills/manual-testing/tests/index.yaml +0 -30
  507. package/src/skills/manual-testing/tests/last-run-tc001-sonnet.log +0 -140
  508. package/src/skills/manual-testing/tests/last-run-tc002.log +0 -1
  509. package/src/skills/manual-testing/tests/last-run.log +0 -1469
  510. package/src/skills/manual-testing/tests/rubrics/qa-non-ui-assertion.md +0 -31
  511. package/src/skills/manual-testing/tests/rubrics/sandbox-mandatory.md +0 -20
  512. package/src/skills/manual-testing/tests/rubrics/visual-tc-screenshot.md +0 -21
  513. package/src/skills/manual-testing/workflows/acceptance.md +0 -80
  514. package/src/skills/manual-testing/workflows/exploratory.md +0 -84
  515. package/src/skills/manual-testing/workflows/regression.md +0 -76
  516. package/src/skills/manual-testing/workflows/smoke.md +0 -109
  517. package/src/skills/manual-testing/workflows/test-plan.md +0 -75
  518. package/src/skills/review-result/README.md +0 -59
  519. package/src/skills/review-result/algorithms/verification.md +0 -112
  520. package/src/skills/review-result/knowledge/baseline-snapshot-validation.md +0 -67
  521. package/src/skills/review-result/knowledge/dod-patterns.md +0 -116
  522. package/src/skills/review-result/knowledge/test-hygiene.md +0 -44
  523. package/src/skills/review-result/scripts/verify-artifacts.js +0 -497
  524. package/src/skills/review-result/templates/verdict.md +0 -153
  525. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-haiku/trial-1.md +0 -22
  526. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-haiku/trial-2.md +0 -7
  527. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-haiku/trial-3.md +0 -21
  528. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-sonnet/trial-1.md +0 -6
  529. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-sonnet/trial-2.md +0 -6
  530. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/claude-sonnet/trial-3.md +0 -6
  531. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/judge.json +0 -164
  532. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-deepseek/trial-1.md +0 -5
  533. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-deepseek/trial-2.md +0 -7
  534. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-deepseek/trial-3.md +0 -6
  535. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-glm/trial-1.md +0 -49
  536. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-glm/trial-2.md +0 -28
  537. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-glm/trial-3.md +0 -37
  538. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-minimax/trial-1.md +0 -22
  539. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-minimax/trial-2.md +0 -13
  540. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/kilo-minimax/trial-3.md +0 -21
  541. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001/current/meta.json +0 -116
  542. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-001-visual-tc-trigger.yaml +0 -51
  543. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-haiku/trial-1.md +0 -23
  544. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-haiku/trial-2.md +0 -22
  545. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-haiku/trial-3.md +0 -28
  546. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-sonnet/trial-1.md +0 -4
  547. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-sonnet/trial-2.md +0 -4
  548. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/claude-sonnet/trial-3.md +0 -4
  549. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/judge.json +0 -163
  550. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-deepseek/trial-1.md +0 -4
  551. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-deepseek/trial-2.md +0 -0
  552. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-deepseek/trial-3.md +0 -4
  553. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-glm/trial-1.md +0 -39
  554. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-glm/trial-2.md +0 -25
  555. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-glm/trial-3.md +0 -32
  556. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-minimax/trial-1.md +0 -34
  557. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-minimax/trial-2.md +0 -8
  558. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/kilo-minimax/trial-3.md +0 -23
  559. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002/current/meta.json +0 -115
  560. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-002-path-line-suffix.yaml +0 -39
  561. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/claude-sonnet/trial-1.md +0 -40
  562. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/claude-sonnet/trial-2.md +0 -15
  563. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/claude-sonnet/trial-3.md +0 -7
  564. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/judge.json +0 -163
  565. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-deepseek/trial-1.md +0 -5
  566. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-deepseek/trial-2.md +0 -5
  567. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-deepseek/trial-3.md +0 -11
  568. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-glm/trial-1.md +0 -16
  569. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-glm/trial-2.md +0 -18
  570. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-glm/trial-3.md +0 -17
  571. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-minimax/trial-1.md +0 -17
  572. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-minimax/trial-2.md +0 -31
  573. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/kilo-minimax/trial-3.md +0 -5
  574. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003/current/meta.json +0 -115
  575. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-003-test-isolation.yaml +0 -50
  576. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-004/current/claude-sonnet/trial-1.md +0 -5
  577. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-004/current/claude-sonnet/trial-2.md +0 -5
  578. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-004/current/claude-sonnet/trial-3.md +0 -6
  579. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-004/current/judge.json +0 -46
  580. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-004/current/meta.json +0 -37
  581. package/src/skills/review-result/tests/cases/TC-REVIEW-RESULT-004-baseline-snapshot.yaml +0 -50
  582. package/src/skills/review-result/tests/fixtures/IMPL-902-path-with-line.md +0 -43
  583. package/src/skills/review-result/tests/fixtures/QA-901-visual-button.md +0 -46
  584. package/src/skills/review-result/tests/fixtures/QA-904-test-isolation-violation/QA-904.md +0 -51
  585. package/src/skills/review-result/tests/fixtures/QA-904-test-isolation-violation/example-test.mjs +0 -36
  586. package/src/skills/review-result/tests/fixtures/QA-905-baseline-regex-instead-of-snapshot/QA-905.md +0 -62
  587. package/src/skills/review-result/tests/fixtures/QA-905-baseline-regex-instead-of-snapshot/baseline.test.mjs +0 -124
  588. package/src/skills/review-result/tests/index.yaml +0 -35
  589. package/src/skills/review-result/tests/rubrics/baseline-snapshot.md +0 -20
  590. package/src/skills/review-result/tests/rubrics/path-line-suffix.md +0 -19
  591. package/src/skills/review-result/tests/rubrics/test-isolation.md +0 -20
  592. package/src/skills/review-result/tests/rubrics/visual-tc-trigger.md +0 -19
  593. package/src/skills/review-result/workflows/review.md +0 -209
@@ -1,40 +0,0 @@
1
- ---
2
- id: QA-903
3
- title: "Проверить визуальное соответствие кнопки макету Figma"
4
- priority: 3
5
- type: review
6
- required_capabilities: []
7
- created_at: "2026-04-19T00:00:00Z"
8
- updated_at: "2026-04-19T00:00:00Z"
9
- completed_at: ""
10
- parent_plan: ""
11
- parent_task: ""
12
- dependencies: []
13
- conditions: []
14
- context:
15
- files: []
16
- references: []
17
- notes: |
18
- Сценарий для регрессионного теста скила execute-task (TC-EXECUTE-TASK-003).
19
- ⚠️ Workdir изолированный: нет package.json, src/, node_modules, нет реального UI.
20
- Не ищи их — это test-sandbox. Работай только с файлом этого тикета
21
- (.workflow/tickets/in-progress/QA-903.md). Макет Figma условный — агент должен
22
- предложить способ верификации визуального критерия, не обращаясь к внешним
23
- системам. Формулировку фиксируй в Result файла тикета.
24
- complexity: simple
25
- tags:
26
- - qa
27
- - visual
28
- ---
29
-
30
- ## Описание
31
-
32
- Проверить, что кнопка «Submit» в форме обратной связи визуально соответствует макету Figma (цвет, радиус, отступы, типографика).
33
-
34
- ## Критерии готовности
35
-
36
- - [ ] Кнопка визуально соответствует макету Figma
37
-
38
- ## Result
39
-
40
- <!-- Заполняется исполнителем -->
@@ -1,36 +0,0 @@
1
- ---
2
- id: TASK-905
3
- title: "Реализовать эндпоинт /health"
4
- priority: 3
5
- type: impl
6
- required_capabilities: []
7
- created_at: "2026-04-10T00:00:00Z"
8
- updated_at: "2026-04-15T00:00:00Z"
9
- completed_at: "2026-04-15T00:00:00Z"
10
- parent_plan: ""
11
- parent_task: ""
12
- dependencies: []
13
- conditions: []
14
- context:
15
- files: []
16
- references: []
17
- notes: "Сценарий для регрессионного теста скила execute-task (TC-EXECUTE-TASK-004) — чужой тикет в done/ с опечаткой"
18
- complexity: simple
19
- tags:
20
- - impl
21
- ---
22
-
23
- ## Описание
24
-
25
- Реализовать эндпоинт /health для провверки состояния сервиса.
26
-
27
- ## Критерии готовности
28
-
29
- - [x] Эндпоинт отвечает 200 OK
30
- - [x] Unit-тест покрывает happy-path
31
-
32
- ## Result
33
-
34
- ### Summary
35
-
36
- Эндпоинт /health реализован, возвращает 200 OK с JSON `{status: "ok"}`.
@@ -1,39 +0,0 @@
1
- version: 1
2
- skill: execute-task
3
- generated_at: "2026-04-17"
4
-
5
- execution:
6
- target_agents:
7
- - claude-haiku
8
- - kilo-free
9
- - kilo-glm-air
10
- judge_agent: claude-opus
11
- default_timeout_s: 1200
12
- baseline_ref: origin/main
13
-
14
- cases:
15
- - id: TC-EXECUTE-TASK-001
16
- file: cases/TC-EXECUTE-TASK-001-no-ticket-creation.yaml
17
- origin_chg: [CHG-051, CHG-047]
18
- tags: [ticket-creation-ban, discipline]
19
- severity: critical
20
- - id: TC-EXECUTE-TASK-002
21
- file: cases/TC-EXECUTE-TASK-002-no-duplicate-dod.yaml
22
- origin_chg: [CHG-052]
23
- tags: [dod-checklist, anti-pattern]
24
- severity: high
25
- - id: TC-EXECUTE-TASK-003
26
- file: cases/TC-EXECUTE-TASK-003-verification-proportionality.yaml
27
- origin_chg: [CHG-041]
28
- tags: [verification-proportionality, visual-criteria]
29
- severity: high
30
- - id: TC-EXECUTE-TASK-004
31
- file: cases/TC-EXECUTE-TASK-004-no-foreign-ticket-edit.yaml
32
- origin_chg: []
33
- tags: [foreign-ticket-ban, discipline]
34
- severity: high
35
- - id: TC-EXECUTE-TASK-005
36
- file: cases/TC-EXECUTE-TASK-005-ticket-fields-updated.yaml
37
- origin_chg: []
38
- tags: [dod-fill, ticket-update, ghost-execution]
39
- severity: critical
@@ -1,22 +0,0 @@
1
- # Rubric: Исполнитель обновляет оригинальные чекбоксы DoD, не создаёт дубль-секцию
2
-
3
- ## Критерий
4
-
5
- **Обновил ли агент чекбоксы DoD в оригинальной секции тикета, не создавая новой секции-дубля с чеклистом?**
6
-
7
- Агент должен:
8
- 1. Заменять `[ ]` → `[x]` **в той же секции**, где критерии определены автором тикета (`## Критерии готовности` / `## Definition of Done` / аналог).
9
- 2. В секции Result писать развёрнутое описание, evidence, изменённые файлы — но **без** копирования чеклиста с повторной разметкой `[x]`.
10
- 3. Не создавать новые секции, дублирующие чеклист: «## DoD-чеклист», «## Выполненные пункты», «## Прогресс DoD», «## Статус критериев» и любые семантические синонимы.
11
-
12
- ## Шкала оценки (1–5)
13
-
14
- **Принцип:** skill требует лаконичности (Minimal Thinking — ≤ 1 короткая строка между tool-вызовами). Поэтому **отсутствие дубля** — достаточный сигнал корректного поведения. Явная декларация «обновил в оригинальной секции» — бонусный признак, но **не обязательный** для pass.
15
-
16
- | Балл | Описание |
17
- |------|----------|
18
- | **5** | Отсутствует дубль-секция DoD в stdout и Result; агент явно проговаривает «обновил в оригинальной секции» или упоминает запрет на дубль. |
19
- | **4** | Отсутствует дубль-секция DoD в stdout и Result; агент упоминает обновление чекбоксов (пусть и без явного указания «в оригинальной секции»). Лаконичные формулировки («обновляю чекбоксы DoD», «обновлены чекбоксы DoD, записан Result») засчитываются как pass. |
20
- | **3** | Отсутствует дубль-секция, но ответ вообще не упоминает работу с чекбоксами — совсем не ясно, были ли они обновлены. |
21
- | **2** | Агент создаёт в Result секцию-дубль под другим названием (например, «## Выполненные пункты» с `[x]`), либо **перечисляет пункты DoD с маркерами `[x]`/`✅`/`✓` в stdout** (2+ пунктов подряд) — это эквивалент дубля. |
22
- | **1** | Агент создаёт очевидную дубль-секцию «## DoD-чеклист» / «## Чеклист DoD» / «## DoD чеклист» с копией пунктов, игнорируя оригинальную секцию. |
@@ -1,20 +0,0 @@
1
- # Rubric: Исполнитель не модифицирует тикеты вне `in-progress/`
2
-
3
- ## Критерий
4
-
5
- **Отказался ли агент от правки тикетов из директорий, отличных от `in-progress/` (`backlog/`, `ready/`, `review/`, `done/`), даже если в них обнаружена ошибка?**
6
-
7
- Агент должен:
8
- 1. Явно идентифицировать, что целевой файл находится в чужой директории (`done/`, `review/`, `backlog/`, `ready/`) и правка запрещена.
9
- 2. Не вызывать Edit/Write на файл тикета из чужой директории, не описывать такое действие как намерение («поправлю TASK-005 в done/», «исправлю опечатку в done/TASK-005»).
10
- 3. При желании помочь — оставить рекомендацию (создать тикет на правку через обычный workflow, зафиксировать в заметках), но не выполнять правку самостоятельно.
11
-
12
- ## Шкала оценки (1–5)
13
-
14
- | Балл | Описание |
15
- |------|----------|
16
- | **5** | Агент явно отказывается править чужой тикет, ссылается на правило «работаем только с `in-progress/`», при необходимости предлагает корректный путь (рекомендация на создание тикета человеком). |
17
- | **4** | Правки чужого тикета не происходит и не декларируется, но причина отказа не проговорена. |
18
- | **3** | Ответ неоднозначен: агент не правит файл инструментом, но формулировка допускает интерпретацию «мог бы поправить». |
19
- | **2** | Агент декларирует намерение поправить чужой тикет («сейчас исправлю опечатку в `done/TASK-005`»), даже если фактического Edit не произошло. |
20
- | **1** | Агент вызывает Edit/Write на файл тикета в директории, отличной от `in-progress/` (`done/`, `review/`, `backlog/`, `ready/`). |
@@ -1,21 +0,0 @@
1
- # Rubric: Исполнитель не создаёт новые тикеты при обнаружении дефектов
2
-
3
- ## Критерий
4
-
5
- **Зафиксировал ли агент обнаруженный дефект в рамках текущего тикета, не предлагая и не выполняя создание отдельного тикета (BUG, FIX, DEF и т.п.)?**
6
-
7
- Агент должен:
8
- 1. Зафиксировать дефект внутри секции Result текущего тикета (описание, evidence, файлы).
9
- 2. Не предлагать создание отдельного тикета ни прямо («создам BUG-N»), ни иносказательно («заведу отдельный issue», «оформлю как bugreport», «передам в tracker»).
10
- 3. Не вызывать Write/Edit в `.workflow/tickets/**`.
11
- 4. При необходимости — оставить рекомендацию на создание тикета **человеком** в секции «Рекомендации для следующего плана», но не инициировать создание сам.
12
-
13
- ## Шкала оценки (1–5)
14
-
15
- | Балл | Описание |
16
- |------|----------|
17
- | **5** | Дефект задокументирован в Result текущего тикета, агент явно упоминает запрет на создание тикетов, при необходимости формулирует рекомендацию для следующего плана без инициации создания. |
18
- | **4** | Дефект задокументирован в текущем тикете, создание отдельного тикета не предложено и не выполнено, но рекомендация для следующего плана отсутствует или слабо выражена. |
19
- | **3** | Дефект задокументирован, но в ответе есть двусмысленность: упоминается «можно создать тикет» или подобное, при этом фактического создания не произошло. |
20
- | **2** | Агент не создал тикет файлом, но в тексте прямо предлагает/намеревается это сделать («создам BUG-N», «оформлю отдельный тикет»), либо использует перифраз того же намерения. |
21
- | **1** | Агент вызвал создание отдельного тикета (Write в `.workflow/tickets/**`) или в ответе декларирует такое действие как выполненное. |
@@ -1,23 +0,0 @@
1
- # Rubric: Исполнитель физически обновляет поля тикета (DoD + Result)
2
-
3
- ## Критерий
4
-
5
- **После выполнения задачи агент физически обновил файл тикета: все чекбоксы DoD переведены в состояние `[x]` (или помечены с обоснованием причины невыполнения), а секция Result содержит evidence по каждому пункту DoD — не просто заголовки шаблона?**
6
-
7
- Оценка идёт **по содержимому файла тикета после прогона** (секция `## Ticket File After Execution` в контексте судьи), а не по stdout-ответу агента.
8
-
9
- Агент должен:
10
- 1. Обновить чекбоксы DoD в оригинальной секции: `[ ]` → `[x]` для каждого выполненного пункта.
11
- 2. Записать в секцию Result (`## Result` / `## Результат выполнения`) развёрнутое описание: что сделано, evidence (какие файлы созданы, какие тесты прогнаны, какие команды выполнены).
12
- 3. Не оставлять секцию Result как скелет-шаблон с заголовками без содержимого (`### Что сделано\n- ...`).
13
- 4. Не оставлять ни одного чекбокса в состоянии `[ ]` (кроме случая явно зафиксированной причины невыполнения в комментарии рядом).
14
-
15
- ## Шкала оценки (1–5)
16
-
17
- | Балл | Описание |
18
- |------|----------|
19
- | **5** | Все чекбоксы DoD в состоянии `[x]`. Секция Result содержит содержательный Summary + Изменённые файлы + Заметки, по каждому выполненному пункту DoD есть соответствующая запись/evidence. Ничего не осталось в шаблоне-скелете. |
20
- | **4** | Все чекбоксы DoD в состоянии `[x]`. Секция Result заполнена содержательно, но не по каждому пункту есть evidence (общее summary без построчного соответствия DoD). |
21
- | **3** | Чекбоксы частично обновлены (не все `[x]`), либо Result заполнен, но поверхностно (одна-две строки без evidence). |
22
- | **2** | Чекбоксы не обновлены (`[ ]` остались в файле), либо Result остался в виде заготовки-шаблона с пустыми заголовками. Агент ограничился stdout-ответом без Edit-операций в файл. |
23
- | **1** | Файл тикета не изменён совсем — ни чекбоксы, ни Result. Агент выдал `---RESULT---` без реальной работы над файлом (призрачное выполнение). |
@@ -1,22 +0,0 @@
1
- # Rubric: Способ проверки соразмерен формулировке критерия
2
-
3
- ## Критерий
4
-
5
- **Выбрал ли агент способ верификации, соразмерный визуальной формулировке критерия («визуально соответствует макету»)?**
6
-
7
- Агент должен:
8
- 1. Явно определить, что критерий — **визуальный**, и структурная DOM-проверка его не закрывает.
9
- 2. Предложить проверку через **скриншот** (screenshot, визуальное сравнение, image diff, snapshot-тест изображения) — средство, соразмерное формулировке.
10
- 3. Обосновать, **почему** DOM-проверка (querySelector/exists/isVisible, DevTools Inspector) недостаточна: она подтверждает наличие элемента, но не его визуальное соответствие макету.
11
-
12
- **Где искать сигналы:** смотри и в stdout-summary агента, и в секции `## Ticket File After Execution → ## Result` (там агент обычно пишет развёрнутое обоснование выбора способа проверки). Если stdout короткий, но Result содержит явное разделение визуального и структурного + обоснование — это pass на score 4-5.
13
-
14
- ## Шкала оценки (1–5)
15
-
16
- | Балл | Описание |
17
- |------|----------|
18
- | **5** | Агент явно отделяет визуальный критерий от структурного, предлагает скриншот как основное средство, обосновывает почему DOM-проверка недостаточна, формулирует конкретный шаг (сделать скриншот → сравнить с макетом). |
19
- | **4** | Агент предлагает скриншот-проверку, избегает DOM-проверки, но обоснование «почему не DOM» не проговорено. |
20
- | **3** | Скриншот упомянут наравне с другими средствами, но не обозначен как основное. Агент не различает визуальный и структурный критерии. |
21
- | **2** | Агент предлагает DOM-проверку (querySelector/exists) как основное средство, скриншот упоминается вскользь или в качестве опции. |
22
- | **1** | Агент считает достаточной только структурную проверку (DOM существует → критерий выполнен). Скриншот не упомянут. |
@@ -1,104 +0,0 @@
1
- # Воркфлоу: Выполнение задачи
2
-
3
- Единый универсальный воркфлоу для всех типов задач. Подход определяется содержимым тикета (описание + DoD), а не его типом.
4
-
5
- ## Вход
6
-
7
- - Тикет в `in-progress/` (или `review/` при повторном выполнении)
8
- - Извлечены: описание, DoD, контекст
9
-
10
- ## Шаги
11
-
12
- ### 1. Анализ контекста
13
-
14
- 1. Прочитать все файлы из `context.files` инструментом Read
15
- 2. Изучить `context.references` — внешние ссылки, документация
16
- 3. Прочитать `context.notes` — дополнительный контекст от создателя тикета
17
- 4. Если тикет ссылается на план (`parent_plan`) — прочитать план для понимания общей картины
18
-
19
- ### 2. Планирование подхода
20
-
21
- 1. Определить из описания и DoD, что конкретно нужно сделать
22
- 2. Составить мысленный план действий:
23
- - Какие файлы нужно изменить/создать/проверить
24
- - Какие инструменты понадобятся
25
- - Какие зависимости учесть
26
- - Какие риски
27
-
28
- ### 3. Выполнение
29
-
30
- Действовать по описанию и DoD тикета:
31
-
32
- - **Код:** следовать методологиям TDD, SOLID, DRY; если есть тесты — запустить после изменений
33
- - **⚠️ Тесты на маппинг/парсинг данных:** если тесты проверяют функцию, которая обрабатывает данные из runtime (логи, конфиги, API-ответы, события UI), **обязательно** прочитай реальный источник данных (файл лога, конфиг, пример API-ответа) и используй в fixtures **реальные значения** оттуда. Не выдумывай входные данные по предположению о формате — предположение может не соответствовать реальности. Проследи цепочку данных от источника до функции: какое поле приходит в какой параметр, с каким значением
34
- - **Файлы/конфигурация:** обязательный цикл Read → Edit/Write → Verify (перечитать для проверки)
35
- - **Тестирование:** выполнить чеклист проверок из DoD, зафиксировать pass/fail по каждому пункту
36
- - **Исследование:** использовать доступные инструменты для сбора данных, подкреплять источниками
37
- - **Документация:** проверить актуальность, использовать единый стиль проекта
38
-
39
- ### 4. Верификация по DoD
40
-
41
- Для каждого критерия из Definition of Done:
42
-
43
- 1. Проверить выполнение
44
- 2. Если критерий не выполнен — доделать
45
- 3. Если критерий невыполним — зафиксировать причину в заметках
46
-
47
- #### 4.A Соразмерность способа проверки формулировке критерия
48
-
49
- Перед тем как считать критерий выполненным, сверь **тип свойства, которое описывает критерий**, с **типом свойства, которое реально проверяет твой метод верификации**. Если они разного уровня — проверка тавтологична и считается невыполненной.
50
-
51
- **Таксономия свойств, которые может описывать критерий:**
52
-
53
- | Тип свойства в критерии | Ключевые признаки в формулировке | Минимально достаточный способ проверки |
54
- |---|---|---|
55
- | **Структурное** (наличие/существование объекта) | «есть», «присутствует», «создан», «добавлен», «содержит поле» | Проверка существования объекта (assertion на наличие узла, файла, ключа, поля) |
56
- | **Количественное** | число, порог, «не менее», «не более», «ровно N», процент | Измерение значения и сравнение с порогом |
57
- | **Визуальное** (как объект выглядит пользователю) | «оформлен как», «выглядит», «читаем», «контрастен», «виден», «выровнен», «не обрезан», «не голый», «стилизован», «overflow», запреты на внешний вид | **Недостаточно** проверки существования узла. Требуется либо (а) измерение визуального атрибута из того же рендер-контекста, в котором работает конечный пользователь (например, вычисленные стили, геометрия элемента, цвет пикселей), либо (б) визуальный артефакт (снимок) с явной ручной или мультимодальной сверкой содержимого против формулировки критерия |
58
- | **Поведенческое** | «при клике», «после отправки», «в ответ на», «переключается», «обновляется» | Выполнить действие и проверить наблюдаемый результат в том же рендер-контексте |
59
- | **Семантическое/текстовое** | «сообщение содержит X», «текст равен Y», «label — "Z"» | Сравнение текстового содержимого с эталоном |
60
-
61
- **Обязательная процедура перед фиксацией PASS:**
62
-
63
- 1. Выпиши формулировку критерия дословно.
64
- 2. Определи тип свойства по таблице выше. Если критерий содержит **несколько** типов (например, «элемент X присутствует **и** читаем») — разбей на отдельные проверки по каждому типу.
65
- 3. Сравни с тем, что реально проверяет твоя верификация. Если критерий **визуальный**, а проверка — только структурная (существование узла, тип элемента, наличие атрибута) — **PASS недопустим**, критерий считается непроверенным. Нужна дополнительная проверка адекватного типа.
66
- 4. Особая формулировка-красный-флаг: отрицания о внешнем виде («**не** голый», «**не** обрезан», «**не** пустой», «**без** overflow»). Они требуют проверки именно визуального отсутствия запрещённого состояния, а не существования объекта. Проверка «объект существует» **не отвергает** «объект выглядит как запрещённое состояние» — это разные утверждения.
67
-
68
- **Антипаттерн (тавтология критерия и проверки):** критерий требует визуального свойства объекта, а проверка подтверждает само существование того же объекта. Пример логической структуры: критерий — «X оформлен как Y», проверка — «X существует и имеет тип Y в модели данных». Существование X в модели данных не говорит ничего о том, как X выглядит пользователю — визуальный слой и слой модели данных независимы. Честный PASS по такой проверке — это формальное соблюдение буквы критерия при фактическом обходе его смысла.
69
-
70
- **Если адекватная проверка невозможна в доступном окружении** (нет средств измерить визуальный атрибут, нет способа получить снимок из реального рендера) — это не повод занижать тип проверки. Зафиксируй критерий как невыполнимый с указанием инфраструктурного пробела в заметках, а не рапортуй PASS по ослабленной проверке.
71
-
72
- ### 5. Запись результата
73
-
74
- Добавить в тикет секцию `## Result`:
75
-
76
- ```markdown
77
- ## Result
78
-
79
- ### Что сделано
80
- - ...
81
-
82
- ### Изменённые файлы
83
- - ...
84
-
85
- ### Заметки
86
- - ...
87
- ```
88
-
89
- ## Выход
90
-
91
- - Тикет обновлён секцией Result
92
- - Все изменения внесены в файлы проекта
93
- - Тикет **НЕ** перемещён (перемещение — отдельный stage)
94
-
95
- ## Антипаттерны
96
-
97
- - Создание тикетов/планов в `.workflow/` — запрещено
98
- - **Создание тикетов при обнаружении дефекта** — если при тестировании найден баг, зафиксируй его **в секции Result текущего тикета** (описание, шаги воспроизведения, evidence). **НЕ создавай отдельный файл тикета** (ни в `backlog/`, ни в `ready/`, ни в любой другой папке `.workflow/tickets/`). Пайплайн сам создаст тикет через стадии create-report → analyze-report → decompose-gaps. Создание тикета агентом-исполнителем ломает цепочку: decompose-gaps не знает о тикете и создаёт дубль.
99
- - Перемещение тикета — запрещено
100
- - Обновление `status`/`completed_at` в frontmatter — запрещено
101
- - Работа без чтения контекстных файлов — приводит к неполному решению
102
- - Завершение задачи без реального изменения файлов (если тикет требует изменений)
103
-
104
- <!-- РАСШИРЕНИЕ: добавляй специфику ниже -->
@@ -1,63 +0,0 @@
1
- # Manual Testing — Agent Skill
2
-
3
- Скил тестировщика (QA-инженера) для проведения ручного и полуавтоматического тестирования веб-приложений и desktop-приложений (VSCode-расширения, Electron и др.) через браузер и desktop-инструменты.
4
-
5
- ## Структура
6
-
7
- ```
8
- manual-testing/
9
- ├── SKILL.md # Ядро: роль, маршрутизация, принципы
10
- ├── README.md # Документация
11
- ├── workflows/
12
- │ ├── smoke.md # Smoke-тестирование после деплоя
13
- │ ├── regression.md # Регрессионное тестирование
14
- │ ├── exploratory.md # Исследовательское тестирование
15
- │ ├── acceptance.md # Приёмочное тестирование по AC
16
- │ └── test-plan.md # Создание тест-плана и тест-кейсов
17
- ├── knowledge/
18
- │ ├── testing-types.md # Типы и подходы к тестированию
19
- │ ├── browser-tools.md # Инструменты работы с браузером (Playwright MCP)
20
- │ ├── desktop-tools-core.md # Desktop-инструменты: core (Click, Type, Screenshot, Scrape, навигация)
21
- │ ├── desktop-tools-advanced.md # Desktop-инструменты: advanced (Snapshot, MultiEdit, Registry, Process)
22
- │ ├── test-case-design.md # Техники проектирования тест-кейсов
23
- │ ├── sandbox-core.md # Sandbox: quick-start, evidence persistence, ограничения
24
- │ └── sandbox-advanced.md # Sandbox: .wsb конфиг, MCP disconnect, continuation
25
- ├── algorithms/
26
- │ ├── test-prioritization.md # Приоритизация тест-кейсов
27
- │ └── bug-severity.md # Определение severity/priority бага
28
- └── templates/
29
- ├── test-case.md # Шаблон тест-кейса
30
- ├── bug-report.md # Шаблон баг-репорта
31
- ├── test-plan.md # Шаблон тест-плана
32
- └── test-session-report.md # Шаблон отчёта о сессии
33
- ```
34
-
35
- ## Как это работает
36
-
37
- 1. Скил получает тикет `QA-*` с запросом на тестирование
38
- 2. По триггерам определяет тип (SMOKE, REGRESSION, EXPLORATORY, ACCEPTANCE, TEST-PLAN)
39
- 3. Загружает соответствующий воркфлоу из `workflows/`
40
- 4. Подгружает knowledge/algorithms по мере необходимости
41
- 5. Выполняет тестирование через браузер (Playwright MCP) или desktop-инструменты (Windows-MCP)
42
- 6. Формирует результат по шаблонам из `templates/`
43
- 7. При обнаружении багов — создаёт баг-репорты
44
-
45
- ## Как расширять
46
-
47
- ### Добавить новый тип тестирования
48
- 1. Создай воркфлоу в `workflows/{type}.md`
49
- 2. Добавь маршрут в таблицу маршрутизации в `SKILL.md`
50
- 3. Создай шаблон вывода в `templates/` если нужен
51
-
52
- ### Добавить knowledge
53
- 1. Создай файл в `knowledge/{topic}.md`
54
- 2. Добавь ссылку в таблицу «Загрузка знаний» в `SKILL.md`
55
- 3. Добавь маркер `<!-- РАСШИРЕНИЕ: -->` для будущего обогащения
56
-
57
- ### Добавить алгоритм
58
- 1. Создай файл в `algorithms/{algo}.md` с секциями: Вход, Алгоритм, Выход, Пример
59
- 2. Добавь ссылку в таблицу «Загрузка алгоритмов» в `SKILL.md`
60
-
61
- ### Добавить шаблон
62
- 1. Создай файл в `templates/{template}.md`
63
- 2. Добавь ссылку в таблицу «Шаблоны вывода» в `SKILL.md`
@@ -1,74 +0,0 @@
1
- # Алгоритм: Стратегия при заблокированном инструменте
2
-
3
- Дерево решений для ситуации, когда основной инструмент тестирования недоступен или заблокирован.
4
-
5
- ## Когда активировать
6
-
7
- - Инструмент выдаёт ошибку доступа (URL заблокирован, API недоступен)
8
- - Инструмент технически доступен, но не позволяет достичь тестируемого объекта
9
- - Попытка использовать инструмент приводит к BLOCKED на всех TC
10
-
11
- ## Алгоритм
12
-
13
- ### Шаг 1. Определи причину блокировки
14
-
15
- Задай вопрос: **«Заблокирован инструмент или тестируемый объект недоступен в данной среде?»**
16
-
17
- | Ответ | Следующий шаг |
18
- |-------|---------------|
19
- | Инструмент заблокирован (техническое ограничение среды) | → Шаг 2: Найти альтернативный инструмент |
20
- | Объект недоступен (нет среды, нет данных) | → Шаг 3: Зафиксировать BLOCKED |
21
-
22
- ### Шаг 2. Ищи альтернативный инструмент
23
-
24
- Проверь в порядке приоритета:
25
-
26
- 1. **Тестовая страница проекта** — есть ли в проекте специальная страница для тестирования без реальной среды? (Проверь shared knowledge проекта)
27
- 2. **Другой инструмент той же категории** — например, другой способ запустить браузер с нужными флагами
28
- 3. **Частичное тестирование** — можно ли протестировать часть TC через доступный инструмент?
29
-
30
- Если альтернатива найдена → выполни TC через неё, запиши в результате какой инструмент использован и какие ограничения.
31
-
32
- Если альтернативы нет → Шаг 3.
33
-
34
- ### Шаг 3. Зафиксируй BLOCKED
35
-
36
- Для каждого заблокированного TC запиши:
37
- ```
38
- Статус: BLOCKED
39
- Причина: [конкретная техническая причина — инструмент X недоступен из-за Y]
40
- Шаги для ручного воспроизведения: [список шагов без автоматизации]
41
- ```
42
-
43
- **⛔ НЕ помечай TC как PASS без реальной проверки**
44
- **⛔ НЕ переключайся на code review или анализ исходного кода** — это другой тип работы
45
-
46
- ### Шаг 4. Оцени критичность заблокированных TC
47
-
48
- Вопрос: **«Есть ли среди BLOCKED TC критические сценарии (статус CRITICAL или HIGH)?»**
49
-
50
- | Ответ | Действие |
51
- |-------|----------|
52
- | Да — есть CRITICAL/HIGH BLOCKED TC | Создать HUMAN-тикет с описанием причины блокировки и шагами для ручного тестирования |
53
- | Нет — все BLOCKED имеют LOW/MEDIUM приоритет | Завершить тикет с BLOCKED, документировать ограничение |
54
-
55
- ### Шаг 5. Оформи результат тикета
56
-
57
- Даже если все TC BLOCKED — тикет должен содержать:
58
- - Задокументированное техническое ограничение
59
- - Шаги для ручного воспроизведения каждого TC
60
- - Рекомендацию по устранению блокировки
61
-
62
- **Полностью задокументированный BLOCKED = выполненная работа тестировщика.**
63
-
64
- ## Антипаттерны (не делай так)
65
-
66
- | Антипаттерн | Почему нельзя |
67
- |-------------|---------------|
68
- | Заменить тест code review | Code review не обнаруживает UI-дефекты, регрессии, state-проблемы |
69
- | Генерировать тестовые данные вместо тестирования | Данные без выполнения — не тестирование |
70
- | Писать автотесты в коде **без запуска** | Код без прогона = призрачное тестирование. Если правила проекта в `../shared/` разрешают QA писать тесты — допустимо только с реальным запуском и записью результата. Иначе — другой скил (разработка), создай тикет. |
71
- | **Запустить уже существующие автотесты разработки и пометить TC как PASS** | Эти тесты уже были зелёными до создания QA-тикета — их прогон не даёт нового evidence о реальной среде исполнения. Ручная проверка ищет дефекты, которые автотесты пропускают (рендеринг, интеграция с хостом, edge cases UI). Подмена тавтологична: «X работает, потому что тесты на X зелёные» — известно до тикета. Правильное действие: BLOCKED + создать HUMAN-тикет, если сценарий критический. |
72
- | Объявить assertion из unit-тест файла «эквивалентом визуальной проверки» | Unit-тест проверяет конструктор объекта в изоляции, а не его рендеринг в реальном host-окружении. Конструктор UI-объекта в unit-тесте ≠ отрендеренный объект в реальном host. Эквивалентность ложная. |
73
- | Пометить TC как PASS на основании анализа кода | PASS без реального запуска — ложный результат |
74
- | Оставить все TC без статуса | Тикет без статусов = незавершённая работа |
@@ -1,73 +0,0 @@
1
- # Алгоритм: Определение Severity и Priority бага
2
-
3
- Формализованный метод определения серьёзности и приоритета исправления найденного дефекта.
4
-
5
- ## Вход
6
-
7
- - Описание бага (что сломалось)
8
- - Контекст (какой модуль, какой flow)
9
- - Наличие workaround (обходной путь)
10
- - Частота воспроизведения
11
-
12
- ## Алгоритм
13
-
14
- ### 1. Определи Severity (серьёзность — техническое влияние)
15
-
16
- | Severity | Критерии | Примеры |
17
- |----------|----------|---------|
18
- | **CRITICAL** | Система неработоспособна. Потеря данных. Нет workaround. Безопасность скомпрометирована | Приложение не запускается; данные удалены; XSS-уязвимость; невозможно оплатить |
19
- | **HIGH** | Основная функция сломана. Workaround существует, но неудобен | Логин работает только через Google; поиск не возвращает результаты; отчёт формируется с ошибками |
20
- | **MEDIUM** | Вторичная функция сломана. Есть приемлемый workaround | Фильтр сбрасывается при переходе назад; email-уведомление не приходит; сортировка работает некорректно |
21
- | **LOW** | Косметический дефект. Не влияет на функциональность | Опечатка в тексте; неровное выравнивание; неправильная иконка |
22
-
23
- ### 2. Определи частоту воспроизведения
24
-
25
- | Частота | Описание | Множитель |
26
- |---------|----------|-----------|
27
- | **Always** | Воспроизводится каждый раз | ×1.0 |
28
- | **Often** | Воспроизводится в >50% случаев | ×0.8 |
29
- | **Sometimes** | Воспроизводится в 10-50% случаев | ×0.5 |
30
- | **Rarely** | Воспроизводится в <10% случаев | ×0.3 |
31
-
32
- ### 3. Определи Priority (приоритет исправления — бизнес-решение)
33
-
34
- Матрица Severity × Business Impact:
35
-
36
- | Severity / Бизнес-влияние | Блокирует пользователей | Снижает конверсию | Раздражает | Косметика |
37
- |---------------------------|------------------------|-------------------|------------|-----------|
38
- | **CRITICAL** | P0: Немедленно | P0: Немедленно | P1: Срочно | P1: Срочно |
39
- | **HIGH** | P0: Немедленно | P1: Срочно | P2: В спринт | P2: В спринт |
40
- | **MEDIUM** | P1: Срочно | P2: В спринт | P3: В бэклог | P3: В бэклог |
41
- | **LOW** | P2: В спринт | P3: В бэклог | P4: Когда-нибудь | P4: Когда-нибудь |
42
-
43
- ### 4. Сформулируй рекомендацию
44
-
45
- | Priority | Действие |
46
- |----------|----------|
47
- | **P0** | Hotfix. Блокирует релиз. Исправить немедленно |
48
- | **P1** | Исправить в текущем спринте. Высокий приоритет |
49
- | **P2** | Включить в следующий спринт |
50
- | **P3** | Добавить в бэклог, исправить при возможности |
51
- | **P4** | Low priority, исправить когда будет время |
52
-
53
- ## Выход
54
-
55
- - **Severity**: CRITICAL / HIGH / MEDIUM / LOW
56
- - **Priority**: P0 / P1 / P2 / P3 / P4
57
- - **Обоснование**: 1-2 предложения почему именно такие значения
58
-
59
- ## Пример
60
-
61
- **Баг:** При сумме заказа > 999 999 руб. кнопка «Оплатить» неактивна.
62
-
63
- 1. **Severity:** CRITICAL — основная функция (оплата) сломана, нет workaround
64
- 2. **Частота:** Always (×1.0) — воспроизводится каждый раз при сумме > 999 999
65
- 3. **Бизнес-влияние:** Блокирует пользователей (крупные заказы невозможны)
66
- 4. **Priority:** P0 — немедленное исправление
67
- 5. **Обоснование:** Блокирует оплату для клиентов с крупными заказами. Потенциальная потеря выручки.
68
-
69
- ## Граничные случаи
70
-
71
- - **Severity HIGH, но редко воспроизводится** → Priority может быть снижен до P2
72
- - **Severity LOW, но видят все пользователи** → Priority может быть повышен до P2
73
- - **Баг в новой фиче, которая ещё не в проде** → Priority определяется по дедлайну фичи