takt 0.38.0 → 0.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/README.md +2 -2
  2. package/builtins/en/facets/instructions/arbitrate.md +6 -6
  3. package/builtins/en/facets/instructions/{loop-monitor-ai-fix.md → loop-monitor-ai-antipattern-fix.md} +2 -2
  4. package/builtins/en/facets/instructions/review-arch.md +1 -1
  5. package/builtins/en/facets/instructions/review-cqrs-es.md +1 -1
  6. package/builtins/en/facets/instructions/review-terraform.md +1 -1
  7. package/builtins/en/facets/policies/review.md +19 -0
  8. package/builtins/en/workflow-categories.yaml +2 -0
  9. package/builtins/en/workflows/auto-improvement-loop.yaml +56 -21
  10. package/builtins/en/workflows/backend-cqrs-mini.yaml +9 -9
  11. package/builtins/en/workflows/backend-cqrs.yaml +43 -21
  12. package/builtins/en/workflows/backend-mini.yaml +9 -9
  13. package/builtins/en/workflows/backend.yaml +43 -21
  14. package/builtins/en/workflows/default-draft.yaml +128 -0
  15. package/builtins/en/workflows/default-high.yaml +26 -295
  16. package/builtins/en/workflows/default-mini.yaml +60 -0
  17. package/builtins/en/workflows/default-peer-review.yaml +130 -0
  18. package/builtins/en/workflows/default.yaml +21 -208
  19. package/builtins/en/workflows/draft.yaml +166 -0
  20. package/builtins/en/workflows/dual-cqrs-mini.yaml +9 -9
  21. package/builtins/en/workflows/dual-cqrs.yaml +44 -22
  22. package/builtins/en/workflows/dual-mini.yaml +9 -9
  23. package/builtins/en/workflows/dual.yaml +43 -21
  24. package/builtins/en/workflows/frontend-mini.yaml +9 -9
  25. package/builtins/en/workflows/frontend.yaml +43 -21
  26. package/builtins/en/workflows/peer-review.yaml +208 -0
  27. package/builtins/en/workflows/review-fix-takt-default.yaml +23 -23
  28. package/builtins/en/workflows/review-takt-default.yaml +5 -5
  29. package/builtins/en/workflows/takt-default-refresh-all.yaml +42 -20
  30. package/builtins/en/workflows/takt-default-refresh-fast.yaml +42 -20
  31. package/builtins/en/workflows/takt-default.yaml +26 -308
  32. package/builtins/en/workflows/terraform.yaml +11 -11
  33. package/builtins/ja/INSTRUCTION_STYLE_GUIDE.md +2 -2
  34. package/builtins/ja/facets/instructions/arbitrate.md +6 -6
  35. package/builtins/ja/facets/instructions/{loop-monitor-ai-fix.md → loop-monitor-ai-antipattern-fix.md} +2 -2
  36. package/builtins/ja/facets/instructions/review-arch.md +1 -1
  37. package/builtins/ja/facets/instructions/review-cqrs-es.md +1 -1
  38. package/builtins/ja/facets/instructions/review-terraform.md +1 -1
  39. package/builtins/ja/facets/policies/review.md +19 -0
  40. package/builtins/ja/workflow-categories.yaml +2 -0
  41. package/builtins/ja/workflows/auto-improvement-loop.yaml +56 -21
  42. package/builtins/ja/workflows/backend-cqrs-mini.yaml +9 -9
  43. package/builtins/ja/workflows/backend-cqrs.yaml +43 -21
  44. package/builtins/ja/workflows/backend-mini.yaml +9 -9
  45. package/builtins/ja/workflows/backend.yaml +43 -21
  46. package/builtins/ja/workflows/default-draft.yaml +128 -0
  47. package/builtins/ja/workflows/default-high.yaml +26 -295
  48. package/builtins/ja/workflows/default-mini.yaml +60 -0
  49. package/builtins/ja/workflows/default-peer-review.yaml +130 -0
  50. package/builtins/ja/workflows/default.yaml +21 -208
  51. package/builtins/ja/workflows/draft.yaml +166 -0
  52. package/builtins/ja/workflows/dual-cqrs-mini.yaml +9 -9
  53. package/builtins/ja/workflows/dual-cqrs.yaml +44 -22
  54. package/builtins/ja/workflows/dual-mini.yaml +9 -9
  55. package/builtins/ja/workflows/dual.yaml +43 -21
  56. package/builtins/ja/workflows/frontend-mini.yaml +9 -9
  57. package/builtins/ja/workflows/frontend.yaml +43 -21
  58. package/builtins/ja/workflows/peer-review.yaml +208 -0
  59. package/builtins/ja/workflows/review-fix-takt-default.yaml +23 -23
  60. package/builtins/ja/workflows/review-takt-default.yaml +5 -5
  61. package/builtins/ja/workflows/takt-default-refresh-all.yaml +42 -20
  62. package/builtins/ja/workflows/takt-default-refresh-fast.yaml +42 -20
  63. package/builtins/ja/workflows/takt-default.yaml +18 -300
  64. package/builtins/ja/workflows/terraform.yaml +11 -11
  65. package/builtins/schemas/followup-task.json +8 -8
  66. package/builtins/schemas/pr-followup-task.json +21 -0
  67. package/builtins/skill/references/engine.md +4 -4
  68. package/dist/app/cli/immediateSigintExit.d.ts +2 -1
  69. package/dist/app/cli/immediateSigintExit.d.ts.map +1 -1
  70. package/dist/app/cli/immediateSigintExit.js +12 -4
  71. package/dist/app/cli/immediateSigintExit.js.map +1 -1
  72. package/dist/app/cli/index.d.ts.map +1 -1
  73. package/dist/app/cli/index.js +17 -4
  74. package/dist/app/cli/index.js.map +1 -1
  75. package/dist/app/cli/opencodeExitCleanup.d.ts +6 -0
  76. package/dist/app/cli/opencodeExitCleanup.d.ts.map +1 -0
  77. package/dist/app/cli/opencodeExitCleanup.js +7 -0
  78. package/dist/app/cli/opencodeExitCleanup.js.map +1 -0
  79. package/dist/core/models/index.d.ts +1 -1
  80. package/dist/core/models/index.d.ts.map +1 -1
  81. package/dist/core/models/index.js.map +1 -1
  82. package/dist/core/models/response.d.ts +8 -0
  83. package/dist/core/models/response.d.ts.map +1 -1
  84. package/dist/core/models/response.js +7 -1
  85. package/dist/core/models/response.js.map +1 -1
  86. package/dist/core/models/types.d.ts +1 -1
  87. package/dist/core/models/types.d.ts.map +1 -1
  88. package/dist/core/models/workflow-issue-system-schemas.d.ts +1 -0
  89. package/dist/core/models/workflow-issue-system-schemas.d.ts.map +1 -1
  90. package/dist/core/models/workflow-issue-system-schemas.js +1 -0
  91. package/dist/core/models/workflow-issue-system-schemas.js.map +1 -1
  92. package/dist/core/models/workflow-schemas.d.ts +1333 -4
  93. package/dist/core/models/workflow-schemas.d.ts.map +1 -1
  94. package/dist/core/models/workflow-schemas.js +11 -0
  95. package/dist/core/models/workflow-schemas.js.map +1 -1
  96. package/dist/core/models/workflow-system-input-types.d.ts +4 -0
  97. package/dist/core/models/workflow-system-input-types.d.ts.map +1 -1
  98. package/dist/core/models/workflow-system-schemas.d.ts +4 -0
  99. package/dist/core/models/workflow-system-schemas.d.ts.map +1 -1
  100. package/dist/core/models/workflow-system-schemas.js +24 -0
  101. package/dist/core/models/workflow-system-schemas.js.map +1 -1
  102. package/dist/core/models/workflow-types.d.ts +3 -0
  103. package/dist/core/models/workflow-types.d.ts.map +1 -1
  104. package/dist/core/workflow/engine/ArpeggioRunner.d.ts.map +1 -1
  105. package/dist/core/workflow/engine/ArpeggioRunner.js +12 -3
  106. package/dist/core/workflow/engine/ArpeggioRunner.js.map +1 -1
  107. package/dist/core/workflow/engine/SystemStepExecutor.d.ts.map +1 -1
  108. package/dist/core/workflow/engine/SystemStepExecutor.js +4 -1
  109. package/dist/core/workflow/engine/SystemStepExecutor.js.map +1 -1
  110. package/dist/core/workflow/engine/TeamLeaderRunner.d.ts.map +1 -1
  111. package/dist/core/workflow/engine/TeamLeaderRunner.js +14 -1
  112. package/dist/core/workflow/engine/TeamLeaderRunner.js.map +1 -1
  113. package/dist/core/workflow/engine/abort-signal.d.ts.map +1 -1
  114. package/dist/core/workflow/engine/abort-signal.js +2 -1
  115. package/dist/core/workflow/engine/abort-signal.js.map +1 -1
  116. package/dist/core/workflow/engine/team-leader-common.d.ts.map +1 -1
  117. package/dist/core/workflow/engine/team-leader-common.js +8 -0
  118. package/dist/core/workflow/engine/team-leader-common.js.map +1 -1
  119. package/dist/core/workflow/engine/team-leader-part-runner.d.ts +1 -1
  120. package/dist/core/workflow/engine/team-leader-part-runner.d.ts.map +1 -1
  121. package/dist/core/workflow/engine/team-leader-part-runner.js +15 -3
  122. package/dist/core/workflow/engine/team-leader-part-runner.js.map +1 -1
  123. package/dist/core/workflow/instruction/InstructionBuilder.d.ts.map +1 -1
  124. package/dist/core/workflow/instruction/InstructionBuilder.js +5 -1
  125. package/dist/core/workflow/instruction/InstructionBuilder.js.map +1 -1
  126. package/dist/core/workflow/instruction/ReportInstructionBuilder.d.ts.map +1 -1
  127. package/dist/core/workflow/instruction/ReportInstructionBuilder.js +5 -0
  128. package/dist/core/workflow/instruction/ReportInstructionBuilder.js.map +1 -1
  129. package/dist/core/workflow/instruction/escape.d.ts.map +1 -1
  130. package/dist/core/workflow/instruction/escape.js +5 -2
  131. package/dist/core/workflow/instruction/escape.js.map +1 -1
  132. package/dist/core/workflow/instruction/instruction-context.d.ts +3 -0
  133. package/dist/core/workflow/instruction/instruction-context.d.ts.map +1 -1
  134. package/dist/core/workflow/instruction/instruction-context.js +23 -0
  135. package/dist/core/workflow/instruction/instruction-context.js.map +1 -1
  136. package/dist/core/workflow/report-phase-runner.d.ts.map +1 -1
  137. package/dist/core/workflow/report-phase-runner.js +5 -3
  138. package/dist/core/workflow/report-phase-runner.js.map +1 -1
  139. package/dist/core/workflow/run/order-content.d.ts.map +1 -1
  140. package/dist/core/workflow/run/order-content.js +12 -0
  141. package/dist/core/workflow/run/order-content.js.map +1 -1
  142. package/dist/core/workflow/run/run-meta.d.ts +2 -0
  143. package/dist/core/workflow/run/run-meta.d.ts.map +1 -1
  144. package/dist/core/workflow/run/run-meta.js.map +1 -1
  145. package/dist/core/workflow/system/system-step-effect-runner.d.ts.map +1 -1
  146. package/dist/core/workflow/system/system-step-effect-runner.js +4 -1
  147. package/dist/core/workflow/system/system-step-effect-runner.js.map +1 -1
  148. package/dist/core/workflow/system/system-step-services.d.ts +1 -0
  149. package/dist/core/workflow/system/system-step-services.d.ts.map +1 -1
  150. package/dist/features/interactive/conversationLoop.d.ts.map +1 -1
  151. package/dist/features/interactive/conversationLoop.js +17 -2
  152. package/dist/features/interactive/conversationLoop.js.map +1 -1
  153. package/dist/features/interactive/lineEditor.d.ts.map +1 -1
  154. package/dist/features/interactive/lineEditor.js +1 -6
  155. package/dist/features/interactive/lineEditor.js.map +1 -1
  156. package/dist/features/interactive/passthroughMode.js +1 -1
  157. package/dist/features/interactive/passthroughMode.js.map +1 -1
  158. package/dist/features/interactive/quietMode.js +1 -1
  159. package/dist/features/interactive/quietMode.js.map +1 -1
  160. package/dist/features/tasks/execute/runMeta.d.ts +1 -0
  161. package/dist/features/tasks/execute/runMeta.d.ts.map +1 -1
  162. package/dist/features/tasks/execute/runMeta.js +10 -0
  163. package/dist/features/tasks/execute/runMeta.js.map +1 -1
  164. package/dist/features/tasks/execute/sessionLoggerRecordFactory.d.ts.map +1 -1
  165. package/dist/features/tasks/execute/sessionLoggerRecordFactory.js +1 -0
  166. package/dist/features/tasks/execute/sessionLoggerRecordFactory.js.map +1 -1
  167. package/dist/features/tasks/execute/taskWorkflowExecution.d.ts.map +1 -1
  168. package/dist/features/tasks/execute/taskWorkflowExecution.js +0 -2
  169. package/dist/features/tasks/execute/taskWorkflowExecution.js.map +1 -1
  170. package/dist/features/tasks/execute/traceReportParser.d.ts.map +1 -1
  171. package/dist/features/tasks/execute/traceReportParser.js +1 -0
  172. package/dist/features/tasks/execute/traceReportParser.js.map +1 -1
  173. package/dist/features/tasks/execute/traceReportRenderer.d.ts.map +1 -1
  174. package/dist/features/tasks/execute/traceReportRenderer.js +3 -0
  175. package/dist/features/tasks/execute/traceReportRenderer.js.map +1 -1
  176. package/dist/features/tasks/execute/traceReportTypes.d.ts +2 -0
  177. package/dist/features/tasks/execute/traceReportTypes.d.ts.map +1 -1
  178. package/dist/features/tasks/execute/workflowExecutionEvents.d.ts.map +1 -1
  179. package/dist/features/tasks/execute/workflowExecutionEvents.js +2 -0
  180. package/dist/features/tasks/execute/workflowExecutionEvents.js.map +1 -1
  181. package/dist/features/tasks/list/index.d.ts.map +1 -1
  182. package/dist/features/tasks/list/index.js +8 -4
  183. package/dist/features/tasks/list/index.js.map +1 -1
  184. package/dist/features/tasks/list/requeueHelpers.d.ts +3 -1
  185. package/dist/features/tasks/list/requeueHelpers.d.ts.map +1 -1
  186. package/dist/features/tasks/list/requeueHelpers.js +78 -37
  187. package/dist/features/tasks/list/requeueHelpers.js.map +1 -1
  188. package/dist/features/tasks/list/taskInstructionActions.d.ts.map +1 -1
  189. package/dist/features/tasks/list/taskInstructionActions.js +20 -18
  190. package/dist/features/tasks/list/taskInstructionActions.js.map +1 -1
  191. package/dist/features/tasks/list/taskRetryActions.d.ts +1 -0
  192. package/dist/features/tasks/list/taskRetryActions.d.ts.map +1 -1
  193. package/dist/features/tasks/list/taskRetryActions.js +139 -71
  194. package/dist/features/tasks/list/taskRetryActions.js.map +1 -1
  195. package/dist/infra/claude/client.d.ts.map +1 -1
  196. package/dist/infra/claude/client.js +2 -0
  197. package/dist/infra/claude/client.js.map +1 -1
  198. package/dist/infra/claude/executor.d.ts.map +1 -1
  199. package/dist/infra/claude/executor.js +47 -8
  200. package/dist/infra/claude/executor.js.map +1 -1
  201. package/dist/infra/claude/types.d.ts +15 -83
  202. package/dist/infra/claude/types.d.ts.map +1 -1
  203. package/dist/infra/codex/CodexStreamHandler.d.ts +3 -2
  204. package/dist/infra/codex/CodexStreamHandler.d.ts.map +1 -1
  205. package/dist/infra/codex/CodexStreamHandler.js +2 -1
  206. package/dist/infra/codex/CodexStreamHandler.js.map +1 -1
  207. package/dist/infra/codex/client.d.ts +4 -0
  208. package/dist/infra/codex/client.d.ts.map +1 -1
  209. package/dist/infra/codex/client.js +82 -61
  210. package/dist/infra/codex/client.js.map +1 -1
  211. package/dist/infra/codex/types.d.ts +1 -1
  212. package/dist/infra/codex/types.d.ts.map +1 -1
  213. package/dist/infra/config/loaders/resource-resolver.d.ts +20 -3
  214. package/dist/infra/config/loaders/resource-resolver.d.ts.map +1 -1
  215. package/dist/infra/config/loaders/resource-resolver.js +201 -5
  216. package/dist/infra/config/loaders/resource-resolver.js.map +1 -1
  217. package/dist/infra/config/loaders/workflowDoctor.d.ts +1 -1
  218. package/dist/infra/config/loaders/workflowDoctor.d.ts.map +1 -1
  219. package/dist/infra/config/loaders/workflowDoctor.js +0 -5
  220. package/dist/infra/config/loaders/workflowDoctor.js.map +1 -1
  221. package/dist/infra/config/loaders/workflowFileLoader.d.ts.map +1 -1
  222. package/dist/infra/config/loaders/workflowFileLoader.js +1 -1
  223. package/dist/infra/config/loaders/workflowFileLoader.js.map +1 -1
  224. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.d.ts.map +1 -1
  225. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js +1 -1
  226. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js.map +1 -1
  227. package/dist/infra/config/loaders/workflowParser.d.ts +1 -2
  228. package/dist/infra/config/loaders/workflowParser.d.ts.map +1 -1
  229. package/dist/infra/config/loaders/workflowParser.js +15 -16
  230. package/dist/infra/config/loaders/workflowParser.js.map +1 -1
  231. package/dist/infra/config/loaders/workflowResolvedLoader.d.ts.map +1 -1
  232. package/dist/infra/config/loaders/workflowResolvedLoader.js +0 -4
  233. package/dist/infra/config/loaders/workflowResolvedLoader.js.map +1 -1
  234. package/dist/infra/config/loaders/workflowStepFeaturesNormalizer.d.ts +2 -2
  235. package/dist/infra/config/loaders/workflowStepFeaturesNormalizer.d.ts.map +1 -1
  236. package/dist/infra/config/loaders/workflowStepFeaturesNormalizer.js.map +1 -1
  237. package/dist/infra/config/loaders/workflowStepNormalizer.d.ts +1 -1
  238. package/dist/infra/config/loaders/workflowStepNormalizer.d.ts.map +1 -1
  239. package/dist/infra/config/loaders/workflowStepNormalizer.js +7 -6
  240. package/dist/infra/config/loaders/workflowStepNormalizer.js.map +1 -1
  241. package/dist/infra/config/loaders/workflowSystemStepNormalizer.d.ts.map +1 -1
  242. package/dist/infra/config/loaders/workflowSystemStepNormalizer.js +5 -0
  243. package/dist/infra/config/loaders/workflowSystemStepNormalizer.js.map +1 -1
  244. package/dist/infra/config/loaders/workflowTrustBoundary.d.ts +0 -9
  245. package/dist/infra/config/loaders/workflowTrustBoundary.d.ts.map +1 -1
  246. package/dist/infra/config/loaders/workflowTrustBoundary.js +24 -31
  247. package/dist/infra/config/loaders/workflowTrustBoundary.js.map +1 -1
  248. package/dist/infra/copilot/types.d.ts +1 -1
  249. package/dist/infra/copilot/types.d.ts.map +1 -1
  250. package/dist/infra/cursor/types.d.ts +1 -1
  251. package/dist/infra/cursor/types.d.ts.map +1 -1
  252. package/dist/infra/fs/session.d.ts.map +1 -1
  253. package/dist/infra/fs/session.js +1 -0
  254. package/dist/infra/fs/session.js.map +1 -1
  255. package/dist/infra/git/types.d.ts +1 -0
  256. package/dist/infra/git/types.d.ts.map +1 -1
  257. package/dist/infra/github/GitHubProvider.d.ts +1 -0
  258. package/dist/infra/github/GitHubProvider.d.ts.map +1 -1
  259. package/dist/infra/github/GitHubProvider.js +4 -1
  260. package/dist/infra/github/GitHubProvider.js.map +1 -1
  261. package/dist/infra/github/pr.d.ts +1 -0
  262. package/dist/infra/github/pr.d.ts.map +1 -1
  263. package/dist/infra/github/pr.js +19 -0
  264. package/dist/infra/github/pr.js.map +1 -1
  265. package/dist/infra/gitlab/GitLabProvider.d.ts +1 -0
  266. package/dist/infra/gitlab/GitLabProvider.d.ts.map +1 -1
  267. package/dist/infra/gitlab/GitLabProvider.js +4 -1
  268. package/dist/infra/gitlab/GitLabProvider.js.map +1 -1
  269. package/dist/infra/gitlab/pr.d.ts +1 -0
  270. package/dist/infra/gitlab/pr.d.ts.map +1 -1
  271. package/dist/infra/gitlab/pr.js +19 -0
  272. package/dist/infra/gitlab/pr.js.map +1 -1
  273. package/dist/infra/mock/client.d.ts.map +1 -1
  274. package/dist/infra/mock/types.d.ts +1 -1
  275. package/dist/infra/mock/types.d.ts.map +1 -1
  276. package/dist/infra/opencode/OpenCodeStreamHandler.d.ts +1 -1
  277. package/dist/infra/opencode/OpenCodeStreamHandler.d.ts.map +1 -1
  278. package/dist/infra/opencode/types.d.ts +1 -1
  279. package/dist/infra/opencode/types.d.ts.map +1 -1
  280. package/dist/infra/providers/types.d.ts +2 -1
  281. package/dist/infra/providers/types.d.ts.map +1 -1
  282. package/dist/infra/task/runner.d.ts +2 -2
  283. package/dist/infra/task/runner.d.ts.map +1 -1
  284. package/dist/infra/task/runner.js +4 -4
  285. package/dist/infra/task/runner.js.map +1 -1
  286. package/dist/infra/task/taskConfigSerialization.d.ts +1 -1
  287. package/dist/infra/task/taskConfigSerialization.d.ts.map +1 -1
  288. package/dist/infra/task/taskConfigSerialization.js +30 -3
  289. package/dist/infra/task/taskConfigSerialization.js.map +1 -1
  290. package/dist/infra/task/taskExecutionSchemas.d.ts +2 -2
  291. package/dist/infra/task/taskLifecycleService.d.ts +1 -0
  292. package/dist/infra/task/taskLifecycleService.d.ts.map +1 -1
  293. package/dist/infra/task/taskLifecycleService.js +22 -3
  294. package/dist/infra/task/taskLifecycleService.js.map +1 -1
  295. package/dist/infra/task/taskRecordMutations.d.ts +2 -2
  296. package/dist/infra/task/taskRecordMutations.d.ts.map +1 -1
  297. package/dist/infra/task/taskRecordMutations.js +14 -9
  298. package/dist/infra/task/taskRecordMutations.js.map +1 -1
  299. package/dist/infra/task/taskRecordSchemas.d.ts +2 -2
  300. package/dist/infra/task/taskRetryService.d.ts +2 -2
  301. package/dist/infra/task/taskRetryService.d.ts.map +1 -1
  302. package/dist/infra/task/taskRetryService.js +9 -10
  303. package/dist/infra/task/taskRetryService.js.map +1 -1
  304. package/dist/infra/workflow/system/DefaultSystemStepServices.d.ts.map +1 -1
  305. package/dist/infra/workflow/system/DefaultSystemStepServices.js +3 -1
  306. package/dist/infra/workflow/system/DefaultSystemStepServices.js.map +1 -1
  307. package/dist/infra/workflow/system/system-issue-input-resolver.d.ts +8 -2
  308. package/dist/infra/workflow/system/system-issue-input-resolver.d.ts.map +1 -1
  309. package/dist/infra/workflow/system/system-issue-input-resolver.js +140 -6
  310. package/dist/infra/workflow/system/system-issue-input-resolver.js.map +1 -1
  311. package/dist/infra/workflow/system/system-pr-effects.d.ts +3 -0
  312. package/dist/infra/workflow/system/system-pr-effects.d.ts.map +1 -1
  313. package/dist/infra/workflow/system/system-pr-effects.js +8 -0
  314. package/dist/infra/workflow/system/system-pr-effects.js.map +1 -1
  315. package/dist/infra/workflow/system/system-selection-helpers.d.ts +2 -0
  316. package/dist/infra/workflow/system/system-selection-helpers.d.ts.map +1 -1
  317. package/dist/infra/workflow/system/system-selection-helpers.js +15 -0
  318. package/dist/infra/workflow/system/system-selection-helpers.js.map +1 -1
  319. package/dist/shared/i18n/labels_en.yaml +4 -0
  320. package/dist/shared/i18n/labels_ja.yaml +4 -0
  321. package/dist/shared/prompts/en/perform_phase1_message.md +8 -7
  322. package/dist/shared/prompts/en/perform_phase2_message.md +4 -3
  323. package/dist/shared/prompts/ja/perform_phase1_message.md +8 -7
  324. package/dist/shared/prompts/ja/perform_phase2_message.md +4 -3
  325. package/dist/shared/types/agent-failure.d.ts +23 -0
  326. package/dist/shared/types/agent-failure.d.ts.map +1 -0
  327. package/dist/shared/types/agent-failure.js +72 -0
  328. package/dist/shared/types/agent-failure.js.map +1 -0
  329. package/dist/shared/types/provider.d.ts +2 -0
  330. package/dist/shared/types/provider.d.ts.map +1 -1
  331. package/dist/shared/utils/types.d.ts +4 -0
  332. package/dist/shared/utils/types.d.ts.map +1 -1
  333. package/dist/shared/utils/types.js +0 -6
  334. package/dist/shared/utils/types.js.map +1 -1
  335. package/package.json +1 -1
  336. package/builtins/en/facets/instructions/review-ai.md +0 -11
  337. package/builtins/ja/facets/instructions/review-ai.md +0 -11
  338. /package/builtins/en/facets/instructions/{ai-fix.md → ai-antipattern-fix.md} +0 -0
  339. /package/builtins/en/facets/instructions/{ai-review.md → ai-antipattern-review.md} +0 -0
  340. /package/builtins/en/facets/output-contracts/{ai-review.md → ai-antipattern-review.md} +0 -0
  341. /package/builtins/ja/facets/instructions/{ai-fix.md → ai-antipattern-fix.md} +0 -0
  342. /package/builtins/ja/facets/instructions/{ai-review.md → ai-antipattern-review.md} +0 -0
  343. /package/builtins/ja/facets/output-contracts/{ai-review.md → ai-antipattern-review.md} +0 -0
package/README.md CHANGED
@@ -86,7 +86,7 @@ takt run
86
86
  ### Manage results
87
87
 
88
88
  ```bash
89
- # List task branches — merge, retry, force-fail, or delete
89
+ # List task branches — merge, retry, requeue, force-fail, or delete
90
90
  takt list
91
91
  ```
92
92
 
@@ -150,7 +150,7 @@ See the [Builtin Catalog](./docs/builtin-catalog.md) for all workflows and perso
150
150
  |---------|-------------|
151
151
  | `takt` | Talk to AI, refine requirements, execute or queue tasks |
152
152
  | `takt run` | Execute all pending tasks |
153
- | `takt list` | Manage task branches (merge, retry, force-fail, instruct, delete) |
153
+ | `takt list` | Manage task branches (merge, retry, requeue, force-fail, instruct, delete) |
154
154
  | `takt #N` | Execute GitHub Issue as task |
155
155
  | `takt eject` | Copy builtin workflows/facets for customization |
156
156
  | `takt workflow init` | Create a new workflow scaffold |
@@ -1,14 +1,14 @@
1
- The ai_review (reviewer) and ai_fix (coder) disagree.
1
+ The ai-antipattern-review-1st (reviewer) and ai-antipattern-fix (coder) disagree.
2
2
 
3
- - ai_review flagged issues and issued a REJECT
4
- - ai_fix reviewed and determined "no fix needed"
3
+ - ai-antipattern-review-1st flagged issues and issued a REJECT
4
+ - ai-antipattern-fix reviewed and determined "no fix needed"
5
5
 
6
6
  Review both outputs and arbitrate which judgment is valid.
7
7
 
8
8
  **Reports to reference:**
9
- - AI review results: {report:ai-review.md}
9
+ - AI review results: {report:ai-antipattern-review.md}
10
10
 
11
11
  **Judgment criteria:**
12
- - Whether ai_review's findings are specific and point to real issues in the code
13
- - Whether ai_fix's rebuttal has evidence (file verification results, test results)
12
+ - Whether ai-antipattern-review-1st's findings are specific and point to real issues in the code
13
+ - Whether ai-antipattern-fix's rebuttal has evidence (file verification results, test results)
14
14
  - Whether the findings are non-blocking (record only) level or actually require fixes
@@ -1,10 +1,10 @@
1
- The ai_reviewai_fix loop has repeated {cycle_count} times.
1
+ The ai-antipattern-review-1stai-antipattern-fix loop has repeated {cycle_count} times.
2
2
 
3
3
  Review the reports from each cycle and determine whether this loop
4
4
  is healthy (making progress) or unproductive (repeating the same issues).
5
5
 
6
6
  **Reports to reference:**
7
- - AI Review results: {report:ai-review.md}
7
+ - AI Review results: {report:ai-antipattern-review.md}
8
8
 
9
9
  **Judgment criteria:**
10
10
  - Are the same finding_ids persisting across multiple cycles?
@@ -1,5 +1,5 @@
1
1
  Focus on reviewing **architecture and design**.
2
- Do not review AI-specific issues (already covered by the ai_review step).
2
+ Do not review AI-specific issues (already covered by the ai-antipattern-review-1st step).
3
3
 
4
4
  **Review criteria:**
5
5
  - Structural and design validity
@@ -1,5 +1,5 @@
1
1
  Review the changes from the perspective of CQRS (Command Query Responsibility Segregation) and Event Sourcing.
2
- AI-specific issue review is not needed (already covered by the ai_review step).
2
+ AI-specific issue review is not needed (already covered by the ai-antipattern-review-1st step).
3
3
 
4
4
  **Review criteria:**
5
5
  - Aggregate design validity
@@ -1,5 +1,5 @@
1
1
  Focus on reviewing **Terraform convention compliance**.
2
- Do not review AI-specific issues (already covered by the ai_review step).
2
+ Do not review AI-specific issues (already covered by the ai-antipattern-review-1st step).
3
3
 
4
4
  **Review criteria:**
5
5
  - Variable declaration compliance (type, description, sensitive)
@@ -150,6 +150,25 @@ Test file length and duplication are warning-level maintainability concerns by d
150
150
  - inability to detect regressions
151
151
  - "Too long" or "duplicated" alone is not sufficient for `REJECT`
152
152
 
153
+ ## Handling Changelog and History Files
154
+
155
+ Files or sections that record point-in-time facts (e.g., `CHANGELOG.md`, `RELEASE_NOTES.md`, `MIGRATION.md`) are history, not specifications of the current code. Judge them by their correctness as history.
156
+
157
+ | Target | Judgment |
158
+ |--------|----------|
159
+ | Past entry's config keys, API names, or behaviors do not match current code | REJECT prohibited |
160
+ | Records that were correct at the time of the relevant release | Modification requests prohibited |
161
+ | Factual errors in newly added entries (relative to the target release) | REJECT allowed |
162
+ | Markdown formatting issues, duplication, broken links, obvious typos | REJECT or Warning allowed |
163
+
164
+ ### Judgment Criteria
165
+
166
+ - History records "what changed at that point in time," not "how the system currently works"
167
+ - Even if names or behaviors have been changed in current code, that is not grounds to rewrite past entries
168
+ - To request modification of a past entry, demonstrate that it was incorrect even at the relevant release point
169
+ - Identify history files/sections by file name (`CHANGELOG.md`, etc.) or conventional headings (`### Changed`, `### Added`, dated release headings)
170
+ - Do not REJECT a history file or section based solely on disagreement with current schema or current config keys
171
+
153
172
  ## Boy Scout Rule
154
173
 
155
174
  Leave it better than you found it.
@@ -2,12 +2,14 @@ workflow_categories:
2
2
  🚀 Quick Start:
3
3
  workflows:
4
4
  - default
5
+ - default-mini
5
6
  - default-high
6
7
  - frontend
7
8
  - backend
8
9
  - dual
9
10
  ⚡ Mini:
10
11
  workflows:
12
+ - default-mini
11
13
  - frontend-mini
12
14
  - backend-mini
13
15
  - backend-cqrs-mini
@@ -6,6 +6,7 @@ max_steps: infinite
6
6
  initial_step: route_context
7
7
  schemas:
8
8
  followup-task: followup-task
9
+ pr-followup-task: pr-followup-task
9
10
  steps:
10
11
  - name: route_context
11
12
  mode: system
@@ -37,6 +38,10 @@ steps:
37
38
  - type: issue_selection
38
39
  source: current_project
39
40
  as: selected_issue
41
+ - type: issue_list
42
+ source: current_project
43
+ as: tracked_issues
44
+ exclude_selected_from: selected_issue
40
45
  rules:
41
46
  - when: context.route_context.selected_pr.exists == true
42
47
  next: plan_from_existing_pr
@@ -62,22 +67,39 @@ steps:
62
67
  - task_exists: {context:route_context.task.exists}
63
68
  - branch_exists: {context:route_context.branch.exists}
64
69
 
65
- Do not implement anything. Output only the next task instruction in task_markdown.
66
- Output the next action in action.
67
- If needed, output the issue creation plan in issue.
68
70
  Current execution context:
69
71
  - task_exists: {context:route_context.task.exists}
70
72
  - branch_exists: {context:route_context.branch.exists}
71
73
 
74
+ Open managed PR snapshot for overlap checks:
75
+ {context:route_context.prs}
76
+
77
+ Other open issue metadata for overlap checks:
78
+ {context:route_context.tracked_issues}
79
+ - other_open_issue_count: {context:route_context.tracked_issues.length}
80
+
81
+ Prioritize user value. Prefer bug fix > missing capability completion > UX/quality improvement > cosmetic.
82
+ Plan exactly one task.
83
+ Only propose a task when it has a concrete deliverable and explicit completion criteria.
84
+ Avoid cosmetic-only changes unless they clearly unlock meaningful user value.
85
+ Treat the current issue itself as in-scope, not as a duplicate.
86
+ Avoid tasks that materially duplicate or overlap with an open PR or the other open issues listed above.
87
+
88
+ Do not implement anything. Output only the next task instruction in task_markdown.
89
+ Output the next action in action.
90
+ Always output task_markdown and issue.
91
+ For wait_before_next_scan, set task_markdown to an empty string and issue to { create: false, labels: [] }.
92
+ For an existing issue task, set issue.create to false unless a new GitHub Issue is explicitly needed.
93
+
72
94
  Allowed action values:
73
95
  - enqueue_new_task
74
- - noop
96
+ - wait_before_next_scan
75
97
  structured_output:
76
98
  schema_ref: followup-task
77
99
  rules:
78
100
  - when: structured.plan_from_issue.action == "enqueue_new_task"
79
101
  next: enqueue_from_issue
80
- - when: structured.plan_from_issue.action == "noop"
102
+ - when: structured.plan_from_issue.action == "wait_before_next_scan"
81
103
  next: wait_before_next_scan
82
104
  - when: "true"
83
105
  next: ABORT
@@ -112,19 +134,35 @@ steps:
112
134
  Inspect the current codebase,
113
135
  and plan exactly one next improvement task.
114
136
 
137
+ Open managed PR snapshot for overlap checks:
138
+ {context:route_context.prs}
139
+
140
+ Open issue metadata already tracked:
141
+ {context:route_context.tracked_issues}
142
+ - open_issue_count: {context:route_context.tracked_issues.length}
143
+
144
+ Prioritize user value. Prefer bug fix > missing capability completion > UX/quality improvement > cosmetic.
145
+ Plan exactly one task.
146
+ Only propose a task when it has a concrete deliverable and explicit completion criteria.
147
+ Avoid cosmetic-only changes unless they clearly unlock meaningful user value.
148
+ Avoid tasks that materially duplicate or overlap with an open PR or tracked open issue.
149
+ If you cannot identify a clearly distinct, high-value task, choose wait_before_next_scan.
150
+
115
151
  Do not implement anything. Output only the next task instruction in task_markdown.
116
152
  Output the next action in action.
117
- If needed, output the issue creation plan in issue.
153
+ Always output task_markdown and issue.
154
+ For wait_before_next_scan, set task_markdown to an empty string and issue to { create: false, labels: [] }.
155
+ For a fresh improvement task, set issue.create to true so the task is backed by a GitHub Issue.
118
156
 
119
157
  Allowed action values:
120
158
  - enqueue_new_task
121
- - noop
159
+ - wait_before_next_scan
122
160
  structured_output:
123
161
  schema_ref: followup-task
124
162
  rules:
125
163
  - when: structured.plan_fresh_improvement.action == "enqueue_new_task"
126
164
  next: enqueue_fresh
127
- - when: structured.plan_fresh_improvement.action == "noop"
165
+ - when: structured.plan_fresh_improvement.action == "wait_before_next_scan"
128
166
  next: wait_before_next_scan
129
167
  - when: "true"
130
168
  next: ABORT
@@ -165,36 +203,33 @@ steps:
165
203
  - head_branch: {context:route_context.selected_pr.head_branch}
166
204
 
167
205
  Output the next action in action.
168
- If a follow-up implementation task is needed, output it in task_markdown.
169
- If content should be left on the PR, output it in pr_comment_markdown.
206
+ Always output task_markdown.
207
+ For prepare_merge or reject_pr, set task_markdown to an empty string.
208
+ For enqueue_from_pr, output the follow-up implementation task in task_markdown.
170
209
 
171
210
  Allowed action values:
172
- - comment_on_pr
173
211
  - enqueue_from_pr
174
212
  - prepare_merge
175
- - noop
213
+ - reject_pr
176
214
  structured_output:
177
- schema_ref: followup-task
215
+ schema_ref: pr-followup-task
178
216
  rules:
179
- - when: structured.plan_from_existing_pr.action == "comment_on_pr"
180
- next: comment_on_existing_pr
181
217
  - when: structured.plan_from_existing_pr.action == "enqueue_from_pr"
182
218
  next: enqueue_from_pr
183
219
  - when: structured.plan_from_existing_pr.action == "prepare_merge"
184
220
  next: prepare_merge
185
- - when: structured.plan_from_existing_pr.action == "noop"
186
- next: wait_before_next_scan
221
+ - when: structured.plan_from_existing_pr.action == "reject_pr"
222
+ next: reject_pr
187
223
  - when: "true"
188
224
  next: ABORT
189
225
 
190
- - name: comment_on_existing_pr
226
+ - name: reject_pr
191
227
  mode: system
192
228
  effects:
193
- - type: comment_pr
229
+ - type: close_pr
194
230
  pr: "{context:route_context.selected_pr.number}"
195
- body: "{structured:plan_from_existing_pr.pr_comment_markdown}"
196
231
  rules:
197
- - when: effect.comment_on_existing_pr.comment_pr.success == true
232
+ - when: effect.reject_pr.close_pr.success == true
198
233
  next: wait_before_next_scan
199
234
  - when: "true"
200
235
  next: ABORT
@@ -92,7 +92,7 @@ steps:
92
92
  format: coder-decisions
93
93
  - name: reviewers
94
94
  parallel:
95
- - name: ai_review
95
+ - name: ai-antipattern-review-2nd
96
96
  edit: false
97
97
  persona: ai-antipattern-reviewer
98
98
  policy:
@@ -106,14 +106,14 @@ steps:
106
106
  - Grep
107
107
  - WebSearch
108
108
  - WebFetch
109
- instruction: review-ai
109
+ instruction: ai-antipattern-review
110
110
  rules:
111
111
  - condition: No AI-specific issues
112
112
  - condition: AI-specific issues found
113
113
  output_contracts:
114
114
  report:
115
- - name: ai-review.md
116
- format: ai-review
115
+ - name: ai-antipattern-review.md
116
+ format: ai-antipattern-review
117
117
  - name: supervise
118
118
  edit: false
119
119
  persona: supervisor
@@ -149,12 +149,12 @@ steps:
149
149
  - condition: all("AI-specific issues found", "Requirements unmet, tests failing")
150
150
  next: fix_both
151
151
  - condition: any("AI-specific issues found")
152
- next: ai_fix
152
+ next: ai-antipattern-fix
153
153
  - condition: any("Requirements unmet, tests failing")
154
154
  next: supervise_fix
155
155
  - name: fix_both
156
156
  parallel:
157
- - name: ai_fix_parallel
157
+ - name: ai-antipattern-fix-parallel
158
158
  edit: true
159
159
  persona: coder
160
160
  policy:
@@ -180,7 +180,7 @@ steps:
180
180
  - condition: AI Reviewer's issues fixed
181
181
  - condition: No fix needed (verified target files/spec)
182
182
  - condition: Cannot proceed, insufficient info
183
- instruction: ai-fix
183
+ instruction: ai-antipattern-fix
184
184
  - name: supervise_fix_parallel
185
185
  edit: true
186
186
  persona: coder
@@ -212,7 +212,7 @@ steps:
212
212
  next: reviewers
213
213
  - condition: any("No fix needed (verified target files/spec)", "Cannot proceed, insufficient info")
214
214
  next: implement
215
- - name: ai_fix
215
+ - name: ai-antipattern-fix
216
216
  edit: true
217
217
  persona: coder
218
218
  policy:
@@ -243,7 +243,7 @@ steps:
243
243
  next: implement
244
244
  - condition: Cannot proceed, insufficient info
245
245
  next: implement
246
- instruction: ai-fix
246
+ instruction: ai-antipattern-fix
247
247
  - name: supervise_fix
248
248
  edit: true
249
249
  persona: coder
@@ -10,15 +10,15 @@ max_steps: 60
10
10
  initial_step: plan
11
11
  loop_monitors:
12
12
  - cycle:
13
- - ai_review
14
- - ai_fix
13
+ - ai-antipattern-review-1st
14
+ - ai-antipattern-fix
15
15
  threshold: 3
16
16
  judge:
17
17
  persona: supervisor
18
- instruction: loop-monitor-ai-fix
18
+ instruction: loop-monitor-ai-antipattern-fix
19
19
  rules:
20
20
  - condition: Healthy (making progress)
21
- next: ai_review
21
+ next: ai-antipattern-review-1st
22
22
  - condition: Unproductive (no improvement)
23
23
  next: reviewers_1
24
24
  - cycle:
@@ -126,11 +126,11 @@ steps:
126
126
  instruction: implement
127
127
  rules:
128
128
  - condition: Implementation is complete
129
- next: ai_review
129
+ next: ai-antipattern-review-1st
130
130
  - condition: No implementation (report only)
131
- next: ai_review
131
+ next: ai-antipattern-review-1st
132
132
  - condition: Cannot proceed with implementation
133
- next: ai_review
133
+ next: ai-antipattern-review-1st
134
134
  - condition: User input required
135
135
  next: implement
136
136
  requires_user_input: true
@@ -141,7 +141,7 @@ steps:
141
141
  format: coder-scope
142
142
  - name: coder-decisions.md
143
143
  format: coder-decisions
144
- - name: ai_review
144
+ - name: ai-antipattern-review-1st
145
145
  edit: false
146
146
  persona: ai-antipattern-reviewer
147
147
  policy:
@@ -155,17 +155,17 @@ steps:
155
155
  - Grep
156
156
  - WebSearch
157
157
  - WebFetch
158
- instruction: ai-review
158
+ instruction: ai-antipattern-review
159
159
  rules:
160
160
  - condition: No AI-specific issues found
161
161
  next: reviewers_1
162
162
  - condition: AI-specific issues detected
163
- next: ai_fix
163
+ next: ai-antipattern-fix
164
164
  output_contracts:
165
165
  report:
166
- - name: ai-review.md
167
- format: ai-review
168
- - name: ai_fix
166
+ - name: ai-antipattern-review.md
167
+ format: ai-antipattern-review
168
+ - name: ai-antipattern-fix
169
169
  edit: true
170
170
  persona: coder
171
171
  policy:
@@ -188,16 +188,16 @@ steps:
188
188
  - Bash
189
189
  - WebSearch
190
190
  - WebFetch
191
- instruction: ai-fix
191
+ instruction: ai-antipattern-fix
192
192
  pass_previous_response: false
193
193
  rules:
194
194
  - condition: AI Reviewer's issues have been fixed
195
- next: ai_review
195
+ next: ai-antipattern-review-1st
196
196
  - condition: No fix needed (verified target files/spec)
197
- next: ai_no_fix
197
+ next: ai-antipattern-no-fix
198
198
  - condition: Unable to proceed with fixes
199
- next: ai_no_fix
200
- - name: ai_no_fix
199
+ next: ai-antipattern-no-fix
200
+ - name: ai-antipattern-no-fix
201
201
  edit: false
202
202
  persona: architecture-reviewer
203
203
  policy: review
@@ -208,9 +208,9 @@ steps:
208
208
  - Glob
209
209
  - Grep
210
210
  rules:
211
- - condition: ai_review's findings are valid (fix required)
212
- next: ai_fix
213
- - condition: ai_fix's judgment is valid (no fix needed)
211
+ - condition: ai-antipattern-review-1st's findings are valid (fix required)
212
+ next: ai-antipattern-fix
213
+ - condition: ai-antipattern-fix's judgment is valid (no fix needed)
214
214
  next: reviewers_1
215
215
  instruction: arbitrate
216
216
  - name: reviewers_1
@@ -263,6 +263,28 @@ steps:
263
263
  report:
264
264
  - name: testing-review.md
265
265
  format: testing-review
266
+ - name: ai-antipattern-review-2nd
267
+ edit: false
268
+ persona: ai-antipattern-reviewer
269
+ policy:
270
+ - review
271
+ - ai-antipattern
272
+ provider_options:
273
+ claude:
274
+ allowed_tools:
275
+ - Read
276
+ - Glob
277
+ - Grep
278
+ - WebSearch
279
+ - WebFetch
280
+ instruction: ai-antipattern-review
281
+ rules:
282
+ - condition: approved
283
+ - condition: needs_fix
284
+ output_contracts:
285
+ report:
286
+ - name: ai-antipattern-review.md
287
+ format: ai-antipattern-review
266
288
  rules:
267
289
  - condition: all("approved")
268
290
  next: reviewers_2
@@ -90,7 +90,7 @@ steps:
90
90
  format: coder-decisions
91
91
  - name: reviewers
92
92
  parallel:
93
- - name: ai_review
93
+ - name: ai-antipattern-review-2nd
94
94
  edit: false
95
95
  persona: ai-antipattern-reviewer
96
96
  policy:
@@ -104,14 +104,14 @@ steps:
104
104
  - Grep
105
105
  - WebSearch
106
106
  - WebFetch
107
- instruction: review-ai
107
+ instruction: ai-antipattern-review
108
108
  rules:
109
109
  - condition: No AI-specific issues
110
110
  - condition: AI-specific issues found
111
111
  output_contracts:
112
112
  report:
113
- - name: ai-review.md
114
- format: ai-review
113
+ - name: ai-antipattern-review.md
114
+ format: ai-antipattern-review
115
115
  - name: supervise
116
116
  edit: false
117
117
  persona: supervisor
@@ -146,12 +146,12 @@ steps:
146
146
  - condition: all("AI-specific issues found", "Requirements unmet, tests failing")
147
147
  next: fix_both
148
148
  - condition: any("AI-specific issues found")
149
- next: ai_fix
149
+ next: ai-antipattern-fix
150
150
  - condition: any("Requirements unmet, tests failing")
151
151
  next: supervise_fix
152
152
  - name: fix_both
153
153
  parallel:
154
- - name: ai_fix_parallel
154
+ - name: ai-antipattern-fix-parallel
155
155
  edit: true
156
156
  persona: coder
157
157
  policy:
@@ -176,7 +176,7 @@ steps:
176
176
  - condition: AI Reviewer's issues fixed
177
177
  - condition: No fix needed (verified target files/spec)
178
178
  - condition: Cannot proceed, insufficient info
179
- instruction: ai-fix
179
+ instruction: ai-antipattern-fix
180
180
  - name: supervise_fix_parallel
181
181
  edit: true
182
182
  persona: coder
@@ -207,7 +207,7 @@ steps:
207
207
  next: reviewers
208
208
  - condition: any("No fix needed (verified target files/spec)", "Cannot proceed, insufficient info")
209
209
  next: implement
210
- - name: ai_fix
210
+ - name: ai-antipattern-fix
211
211
  edit: true
212
212
  persona: coder
213
213
  policy:
@@ -237,7 +237,7 @@ steps:
237
237
  next: implement
238
238
  - condition: Cannot proceed, insufficient info
239
239
  next: implement
240
- instruction: ai-fix
240
+ instruction: ai-antipattern-fix
241
241
  - name: supervise_fix
242
242
  edit: true
243
243
  persona: coder
@@ -10,15 +10,15 @@ max_steps: 60
10
10
  initial_step: plan
11
11
  loop_monitors:
12
12
  - cycle:
13
- - ai_review
14
- - ai_fix
13
+ - ai-antipattern-review-1st
14
+ - ai-antipattern-fix
15
15
  threshold: 3
16
16
  judge:
17
17
  persona: supervisor
18
- instruction: loop-monitor-ai-fix
18
+ instruction: loop-monitor-ai-antipattern-fix
19
19
  rules:
20
20
  - condition: Healthy (making progress)
21
- next: ai_review
21
+ next: ai-antipattern-review-1st
22
22
  - condition: Unproductive (no improvement)
23
23
  next: reviewers_1
24
24
  - cycle:
@@ -123,11 +123,11 @@ steps:
123
123
  instruction: implement
124
124
  rules:
125
125
  - condition: Implementation is complete
126
- next: ai_review
126
+ next: ai-antipattern-review-1st
127
127
  - condition: No implementation (report only)
128
- next: ai_review
128
+ next: ai-antipattern-review-1st
129
129
  - condition: Cannot proceed with implementation
130
- next: ai_review
130
+ next: ai-antipattern-review-1st
131
131
  - condition: User input required
132
132
  next: implement
133
133
  requires_user_input: true
@@ -138,7 +138,7 @@ steps:
138
138
  format: coder-scope
139
139
  - name: coder-decisions.md
140
140
  format: coder-decisions
141
- - name: ai_review
141
+ - name: ai-antipattern-review-1st
142
142
  edit: false
143
143
  persona: ai-antipattern-reviewer
144
144
  policy:
@@ -152,17 +152,17 @@ steps:
152
152
  - Grep
153
153
  - WebSearch
154
154
  - WebFetch
155
- instruction: ai-review
155
+ instruction: ai-antipattern-review
156
156
  rules:
157
157
  - condition: No AI-specific issues found
158
158
  next: reviewers_1
159
159
  - condition: AI-specific issues detected
160
- next: ai_fix
160
+ next: ai-antipattern-fix
161
161
  output_contracts:
162
162
  report:
163
- - name: ai-review.md
164
- format: ai-review
165
- - name: ai_fix
163
+ - name: ai-antipattern-review.md
164
+ format: ai-antipattern-review
165
+ - name: ai-antipattern-fix
166
166
  edit: true
167
167
  persona: coder
168
168
  policy:
@@ -184,16 +184,16 @@ steps:
184
184
  - Bash
185
185
  - WebSearch
186
186
  - WebFetch
187
- instruction: ai-fix
187
+ instruction: ai-antipattern-fix
188
188
  pass_previous_response: false
189
189
  rules:
190
190
  - condition: AI Reviewer's issues have been fixed
191
- next: ai_review
191
+ next: ai-antipattern-review-1st
192
192
  - condition: No fix needed (verified target files/spec)
193
- next: ai_no_fix
193
+ next: ai-antipattern-no-fix
194
194
  - condition: Unable to proceed with fixes
195
- next: ai_no_fix
196
- - name: ai_no_fix
195
+ next: ai-antipattern-no-fix
196
+ - name: ai-antipattern-no-fix
197
197
  edit: false
198
198
  persona: architecture-reviewer
199
199
  policy: review
@@ -204,9 +204,9 @@ steps:
204
204
  - Glob
205
205
  - Grep
206
206
  rules:
207
- - condition: ai_review's findings are valid (fix required)
208
- next: ai_fix
209
- - condition: ai_fix's judgment is valid (no fix needed)
207
+ - condition: ai-antipattern-review-1st's findings are valid (fix required)
208
+ next: ai-antipattern-fix
209
+ - condition: ai-antipattern-fix's judgment is valid (no fix needed)
210
210
  next: reviewers_1
211
211
  instruction: arbitrate
212
212
  - name: reviewers_1
@@ -259,6 +259,28 @@ steps:
259
259
  report:
260
260
  - name: testing-review.md
261
261
  format: testing-review
262
+ - name: ai-antipattern-review-2nd
263
+ edit: false
264
+ persona: ai-antipattern-reviewer
265
+ policy:
266
+ - review
267
+ - ai-antipattern
268
+ provider_options:
269
+ claude:
270
+ allowed_tools:
271
+ - Read
272
+ - Glob
273
+ - Grep
274
+ - WebSearch
275
+ - WebFetch
276
+ instruction: ai-antipattern-review
277
+ rules:
278
+ - condition: approved
279
+ - condition: needs_fix
280
+ output_contracts:
281
+ report:
282
+ - name: ai-antipattern-review.md
283
+ format: ai-antipattern-review
262
284
  rules:
263
285
  - condition: all("approved")
264
286
  next: reviewers_2