takt 0.49.0 → 0.50.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 (674) hide show
  1. package/README.md +2 -0
  2. package/builtins/en/config.yaml +6 -0
  3. package/builtins/en/facets/instructions/ai-antipattern-review.md +5 -0
  4. package/builtins/en/facets/instructions/findings-manager.md +6 -2
  5. package/builtins/en/facets/instructions/loop-monitor-fix-replan.md +21 -0
  6. package/builtins/en/facets/instructions/loop-monitor-replan.md +10 -0
  7. package/builtins/en/facets/instructions/plan-maintenance.md +10 -7
  8. package/builtins/en/facets/instructions/plan.md +17 -8
  9. package/builtins/en/facets/instructions/review-arch.md +5 -0
  10. package/builtins/en/facets/instructions/review-coding.md +15 -6
  11. package/builtins/en/facets/instructions/review-cqrs-es.md +9 -0
  12. package/builtins/en/facets/instructions/review-implementation-semantics.md +18 -0
  13. package/builtins/en/facets/instructions/review-merge-readiness.md +14 -0
  14. package/builtins/en/facets/instructions/supervise-maintenance.md +2 -2
  15. package/builtins/en/facets/instructions/supervise.md +8 -3
  16. package/builtins/en/facets/instructions/write-tests-first.md +23 -3
  17. package/builtins/en/facets/knowledge/architecture.md +25 -0
  18. package/builtins/en/facets/knowledge/cqrs-es.md +718 -235
  19. package/builtins/en/facets/knowledge/implementation-semantics.md +104 -0
  20. package/builtins/en/facets/knowledge/takt.md +10 -2
  21. package/builtins/en/facets/knowledge/unit-testing.md +14 -0
  22. package/builtins/en/facets/output-contracts/ai-antipattern-review.md +11 -1
  23. package/builtins/en/facets/output-contracts/architecture-review.md +6 -1
  24. package/builtins/en/facets/output-contracts/coding-review.md +11 -1
  25. package/builtins/en/facets/output-contracts/findings-manager.md +14 -0
  26. package/builtins/en/facets/output-contracts/implementation-semantics-review-finding-contract.md +28 -0
  27. package/builtins/en/facets/output-contracts/implementation-semantics-review.md +50 -0
  28. package/builtins/en/facets/output-contracts/{pure-review-finding-contract.md → merge-readiness-review-finding-contract.md} +14 -8
  29. package/builtins/en/facets/output-contracts/{pure-review.md → merge-readiness-review.md} +17 -11
  30. package/builtins/en/facets/output-contracts/supervisor-validation.md +6 -2
  31. package/builtins/en/facets/output-contracts/test-report.md +25 -0
  32. package/builtins/en/facets/personas/implementation-semantics-reviewer.md +27 -0
  33. package/builtins/en/facets/personas/merge-readiness-reviewer.md +28 -0
  34. package/builtins/en/facets/personas/supervisor.md +1 -1
  35. package/builtins/en/facets/policies/ai-antipattern.md +18 -0
  36. package/builtins/en/facets/policies/review.md +15 -0
  37. package/builtins/en/facets/policies/testing.md +3 -2
  38. package/builtins/en/workflow-categories.yaml +13 -1
  39. package/builtins/en/workflows/audit-architecture-backend.yaml +1 -0
  40. package/builtins/en/workflows/audit-architecture-dual.yaml +1 -0
  41. package/builtins/en/workflows/audit-architecture-frontend.yaml +1 -0
  42. package/builtins/en/workflows/audit-architecture.yaml +1 -0
  43. package/builtins/en/workflows/audit-e2e.yaml +1 -0
  44. package/builtins/en/workflows/audit-security.yaml +1 -0
  45. package/builtins/en/workflows/audit-unit.yaml +1 -0
  46. package/builtins/en/workflows/backend-cqrs-for-local-llm.yaml +288 -0
  47. package/builtins/en/workflows/backend-cqrs-mini.yaml +1 -0
  48. package/builtins/en/workflows/backend-cqrs.yaml +28 -84
  49. package/builtins/en/workflows/backend-for-local-llm.yaml +284 -0
  50. package/builtins/en/workflows/backend-maintenance.yaml +32 -89
  51. package/builtins/en/workflows/backend-mini.yaml +1 -0
  52. package/builtins/en/workflows/backend.yaml +25 -83
  53. package/builtins/en/workflows/{takt-default-with-fc.yaml → cli.yaml} +16 -4
  54. package/builtins/en/workflows/deep-research.yaml +1 -0
  55. package/builtins/en/workflows/default-high.yaml +3 -32
  56. package/builtins/en/workflows/default-peer-review.yaml +16 -52
  57. package/builtins/en/workflows/default.yaml +2 -1
  58. package/builtins/en/workflows/dual-cqrs-mini.yaml +1 -0
  59. package/builtins/en/workflows/dual-cqrs.yaml +28 -87
  60. package/builtins/en/workflows/dual-for-local-llm.yaml +312 -0
  61. package/builtins/en/workflows/dual-mini.yaml +1 -0
  62. package/builtins/en/workflows/dual.yaml +29 -57
  63. package/builtins/en/workflows/frontend-for-local-llm.yaml +289 -0
  64. package/builtins/en/workflows/frontend-maintenance.yaml +34 -91
  65. package/builtins/en/workflows/frontend-mini.yaml +1 -0
  66. package/builtins/en/workflows/frontend.yaml +27 -85
  67. package/builtins/en/workflows/merge-readiness-dual-final-gate.yaml +92 -0
  68. package/builtins/en/workflows/merge-readiness-final-gate.yaml +79 -0
  69. package/builtins/en/workflows/{peer-review-with-fc.yaml → peer-review-for-local-llm.yaml} +48 -37
  70. package/builtins/en/workflows/peer-review.yaml +25 -20
  71. package/builtins/en/workflows/research.yaml +1 -0
  72. package/builtins/en/workflows/review-backend-cqrs.yaml +63 -35
  73. package/builtins/en/workflows/review-backend.yaml +63 -35
  74. package/builtins/en/workflows/review-default.yaml +138 -107
  75. package/builtins/en/workflows/review-dual-cqrs.yaml +63 -35
  76. package/builtins/en/workflows/review-dual.yaml +63 -35
  77. package/builtins/en/workflows/review-fix-backend-cqrs.yaml +27 -87
  78. package/builtins/en/workflows/review-fix-backend.yaml +25 -86
  79. package/builtins/en/workflows/review-fix-default.yaml +17 -87
  80. package/builtins/en/workflows/review-fix-dual-cqrs.yaml +29 -90
  81. package/builtins/en/workflows/review-fix-dual.yaml +27 -89
  82. package/builtins/en/workflows/review-fix-frontend.yaml +25 -87
  83. package/builtins/en/workflows/review-fix-takt-default.yaml +67 -362
  84. package/builtins/en/workflows/review-frontend.yaml +63 -35
  85. package/builtins/en/workflows/review-takt-default.yaml +140 -109
  86. package/builtins/en/workflows/takt-default-for-local-llm.yaml +283 -0
  87. package/builtins/en/workflows/takt-default-refresh-all.yaml +20 -58
  88. package/builtins/en/workflows/takt-default-refresh-fast.yaml +19 -56
  89. package/builtins/en/workflows/takt-default.yaml +3 -25
  90. package/builtins/en/workflows/terraform.yaml +81 -44
  91. package/builtins/ja/config.yaml +6 -0
  92. package/builtins/ja/facets/instructions/ai-antipattern-review.md +5 -0
  93. package/builtins/ja/facets/instructions/findings-manager.md +6 -2
  94. package/builtins/ja/facets/instructions/implement-maintenance.md +4 -15
  95. package/builtins/ja/facets/instructions/implement.md +2 -14
  96. package/builtins/ja/facets/instructions/loop-monitor-fix-replan.md +21 -0
  97. package/builtins/ja/facets/instructions/loop-monitor-replan.md +10 -0
  98. package/builtins/ja/facets/instructions/plan-maintenance.md +10 -7
  99. package/builtins/ja/facets/instructions/plan.md +9 -6
  100. package/builtins/ja/facets/instructions/review-arch.md +5 -0
  101. package/builtins/ja/facets/instructions/review-coding.md +15 -6
  102. package/builtins/ja/facets/instructions/review-cqrs-es.md +9 -0
  103. package/builtins/ja/facets/instructions/review-implementation-semantics.md +17 -0
  104. package/builtins/ja/facets/instructions/review-merge-readiness.md +14 -0
  105. package/builtins/ja/facets/instructions/supervise-maintenance.md +2 -2
  106. package/builtins/ja/facets/instructions/supervise.md +8 -3
  107. package/builtins/ja/facets/instructions/write-tests-first.md +23 -3
  108. package/builtins/ja/facets/knowledge/architecture.md +25 -0
  109. package/builtins/ja/facets/knowledge/cqrs-es.md +211 -16
  110. package/builtins/ja/facets/knowledge/implementation-semantics.md +104 -0
  111. package/builtins/ja/facets/knowledge/takt.md +10 -2
  112. package/builtins/ja/facets/knowledge/unit-testing.md +14 -0
  113. package/builtins/ja/facets/output-contracts/ai-antipattern-review.md +11 -1
  114. package/builtins/ja/facets/output-contracts/architecture-review.md +6 -1
  115. package/builtins/ja/facets/output-contracts/coding-review.md +11 -1
  116. package/builtins/ja/facets/output-contracts/findings-manager.md +14 -0
  117. package/builtins/ja/facets/output-contracts/implementation-semantics-review-finding-contract.md +24 -0
  118. package/builtins/ja/facets/output-contracts/implementation-semantics-review.md +50 -0
  119. package/builtins/ja/facets/output-contracts/{pure-review-finding-contract.md → merge-readiness-review-finding-contract.md} +14 -8
  120. package/builtins/ja/facets/output-contracts/{pure-review.md → merge-readiness-review.md} +17 -11
  121. package/builtins/ja/facets/output-contracts/supervisor-validation.md +6 -2
  122. package/builtins/ja/facets/output-contracts/test-report.md +25 -0
  123. package/builtins/ja/facets/partials/instructions/implement-common.md +13 -0
  124. package/builtins/ja/facets/personas/implementation-semantics-reviewer.md +27 -0
  125. package/builtins/ja/facets/personas/merge-readiness-reviewer.md +28 -0
  126. package/builtins/ja/facets/personas/supervisor.md +1 -1
  127. package/builtins/ja/facets/policies/ai-antipattern.md +18 -0
  128. package/builtins/ja/facets/policies/coding.md +1 -0
  129. package/builtins/ja/facets/policies/review.md +15 -0
  130. package/builtins/ja/facets/policies/testing.md +8 -4
  131. package/builtins/ja/workflow-categories.yaml +13 -1
  132. package/builtins/ja/workflows/audit-architecture-backend.yaml +1 -0
  133. package/builtins/ja/workflows/audit-architecture-dual.yaml +1 -0
  134. package/builtins/ja/workflows/audit-architecture-frontend.yaml +1 -0
  135. package/builtins/ja/workflows/audit-architecture.yaml +1 -0
  136. package/builtins/ja/workflows/audit-e2e.yaml +1 -0
  137. package/builtins/ja/workflows/audit-security.yaml +1 -0
  138. package/builtins/ja/workflows/audit-unit.yaml +1 -0
  139. package/builtins/ja/workflows/backend-cqrs-for-local-llm.yaml +287 -0
  140. package/builtins/ja/workflows/backend-cqrs-mini.yaml +1 -0
  141. package/builtins/ja/workflows/backend-cqrs.yaml +28 -84
  142. package/builtins/ja/workflows/backend-for-local-llm.yaml +283 -0
  143. package/builtins/ja/workflows/backend-maintenance.yaml +32 -89
  144. package/builtins/ja/workflows/backend-mini.yaml +1 -0
  145. package/builtins/ja/workflows/backend.yaml +25 -83
  146. package/builtins/ja/workflows/{takt-default-with-fc.yaml → cli.yaml} +16 -4
  147. package/builtins/ja/workflows/deep-research.yaml +1 -0
  148. package/builtins/ja/workflows/default-high.yaml +3 -32
  149. package/builtins/ja/workflows/default-peer-review.yaml +16 -52
  150. package/builtins/ja/workflows/default.yaml +2 -1
  151. package/builtins/ja/workflows/dual-cqrs-mini.yaml +1 -0
  152. package/builtins/ja/workflows/dual-cqrs.yaml +28 -87
  153. package/builtins/ja/workflows/dual-for-local-llm.yaml +311 -0
  154. package/builtins/ja/workflows/dual-mini.yaml +1 -0
  155. package/builtins/ja/workflows/dual.yaml +29 -57
  156. package/builtins/ja/workflows/frontend-for-local-llm.yaml +288 -0
  157. package/builtins/ja/workflows/frontend-maintenance.yaml +34 -91
  158. package/builtins/ja/workflows/frontend-mini.yaml +1 -0
  159. package/builtins/ja/workflows/frontend.yaml +27 -85
  160. package/builtins/ja/workflows/merge-readiness-dual-final-gate.yaml +92 -0
  161. package/builtins/ja/workflows/merge-readiness-final-gate.yaml +79 -0
  162. package/builtins/ja/workflows/{peer-review-with-fc.yaml → peer-review-for-local-llm.yaml} +48 -37
  163. package/builtins/ja/workflows/peer-review.yaml +25 -20
  164. package/builtins/ja/workflows/research.yaml +1 -0
  165. package/builtins/ja/workflows/review-backend-cqrs.yaml +63 -35
  166. package/builtins/ja/workflows/review-backend.yaml +63 -35
  167. package/builtins/ja/workflows/review-default.yaml +111 -79
  168. package/builtins/ja/workflows/review-dual-cqrs.yaml +63 -35
  169. package/builtins/ja/workflows/review-dual.yaml +63 -35
  170. package/builtins/ja/workflows/review-fix-backend-cqrs.yaml +27 -87
  171. package/builtins/ja/workflows/review-fix-backend.yaml +25 -86
  172. package/builtins/ja/workflows/review-fix-default.yaml +17 -87
  173. package/builtins/ja/workflows/review-fix-dual-cqrs.yaml +29 -90
  174. package/builtins/ja/workflows/review-fix-dual.yaml +27 -89
  175. package/builtins/ja/workflows/review-fix-frontend.yaml +25 -87
  176. package/builtins/ja/workflows/review-fix-takt-default.yaml +67 -362
  177. package/builtins/ja/workflows/review-frontend.yaml +63 -35
  178. package/builtins/ja/workflows/review-takt-default.yaml +112 -80
  179. package/builtins/ja/workflows/takt-default-for-local-llm.yaml +282 -0
  180. package/builtins/ja/workflows/takt-default-refresh-all.yaml +20 -58
  181. package/builtins/ja/workflows/takt-default-refresh-fast.yaml +19 -56
  182. package/builtins/ja/workflows/takt-default.yaml +3 -25
  183. package/builtins/ja/workflows/terraform.yaml +81 -44
  184. package/dist/agents/decompose-task-usecase.d.ts +1 -0
  185. package/dist/agents/decompose-task-usecase.d.ts.map +1 -1
  186. package/dist/agents/decompose-task-usecase.js +2 -0
  187. package/dist/agents/decompose-task-usecase.js.map +1 -1
  188. package/dist/agents/judge-utils.d.ts.map +1 -1
  189. package/dist/agents/judge-utils.js +4 -3
  190. package/dist/agents/judge-utils.js.map +1 -1
  191. package/dist/agents/structured-caller/prompt-based-structured-caller.d.ts.map +1 -1
  192. package/dist/agents/structured-caller/prompt-based-structured-caller.js +2 -0
  193. package/dist/agents/structured-caller/prompt-based-structured-caller.js.map +1 -1
  194. package/dist/app/acp/agent.d.ts +28 -0
  195. package/dist/app/acp/agent.d.ts.map +1 -0
  196. package/dist/app/acp/agent.js +279 -0
  197. package/dist/app/acp/agent.js.map +1 -0
  198. package/dist/app/acp/confirmationBridge.d.ts +5 -0
  199. package/dist/app/acp/confirmationBridge.d.ts.map +1 -0
  200. package/dist/app/acp/confirmationBridge.js +194 -0
  201. package/dist/app/acp/confirmationBridge.js.map +1 -0
  202. package/dist/app/acp/conversationFactory.d.ts +4 -0
  203. package/dist/app/acp/conversationFactory.d.ts.map +1 -0
  204. package/dist/app/acp/conversationFactory.js +33 -0
  205. package/dist/app/acp/conversationFactory.js.map +1 -0
  206. package/dist/app/acp/enqueue.d.ts +33 -0
  207. package/dist/app/acp/enqueue.d.ts.map +1 -0
  208. package/dist/app/acp/enqueue.js +45 -0
  209. package/dist/app/acp/enqueue.js.map +1 -0
  210. package/dist/app/acp/index.d.ts +7 -0
  211. package/dist/app/acp/index.d.ts.map +1 -0
  212. package/dist/app/acp/index.js +125 -0
  213. package/dist/app/acp/index.js.map +1 -0
  214. package/dist/app/acp/intent.d.ts +10 -0
  215. package/dist/app/acp/intent.d.ts.map +1 -0
  216. package/dist/app/acp/intent.js +210 -0
  217. package/dist/app/acp/intent.js.map +1 -0
  218. package/dist/app/acp/mcpServers.d.ts +4 -0
  219. package/dist/app/acp/mcpServers.d.ts.map +1 -0
  220. package/dist/app/acp/mcpServers.js +51 -0
  221. package/dist/app/acp/mcpServers.js.map +1 -0
  222. package/dist/app/acp/promptContent.d.ts +3 -0
  223. package/dist/app/acp/promptContent.d.ts.map +1 -0
  224. package/dist/app/acp/promptContent.js +23 -0
  225. package/dist/app/acp/promptContent.js.map +1 -0
  226. package/dist/app/acp/sessionStore.d.ts +19 -0
  227. package/dist/app/acp/sessionStore.d.ts.map +1 -0
  228. package/dist/app/acp/sessionStore.js +50 -0
  229. package/dist/app/acp/sessionStore.js.map +1 -0
  230. package/dist/app/acp/sessionUpdates.d.ts +8 -0
  231. package/dist/app/acp/sessionUpdates.d.ts.map +1 -0
  232. package/dist/app/acp/sessionUpdates.js +108 -0
  233. package/dist/app/acp/sessionUpdates.js.map +1 -0
  234. package/dist/app/acp/taskContext.d.ts +17 -0
  235. package/dist/app/acp/taskContext.d.ts.map +1 -0
  236. package/dist/app/acp/taskContext.js +81 -0
  237. package/dist/app/acp/taskContext.js.map +1 -0
  238. package/dist/app/acp/types.d.ts +33 -0
  239. package/dist/app/acp/types.d.ts.map +1 -0
  240. package/dist/app/acp/types.js +2 -0
  241. package/dist/app/acp/types.js.map +1 -0
  242. package/dist/app/cli/program.d.ts.map +1 -1
  243. package/dist/app/cli/program.js +2 -3
  244. package/dist/app/cli/program.js.map +1 -1
  245. package/dist/app/mcp/index.d.ts +3 -0
  246. package/dist/app/mcp/index.d.ts.map +1 -0
  247. package/dist/app/mcp/index.js +16 -0
  248. package/dist/app/mcp/index.js.map +1 -0
  249. package/dist/app/mcp/server.d.ts +2 -0
  250. package/dist/app/mcp/server.d.ts.map +1 -0
  251. package/dist/app/mcp/server.js +2 -0
  252. package/dist/app/mcp/server.js.map +1 -0
  253. package/dist/core/config/provider-resolution.d.ts +1 -0
  254. package/dist/core/config/provider-resolution.d.ts.map +1 -1
  255. package/dist/core/config/provider-resolution.js +19 -0
  256. package/dist/core/config/provider-resolution.js.map +1 -1
  257. package/dist/core/models/finding-schemas.d.ts +129 -10
  258. package/dist/core/models/finding-schemas.d.ts.map +1 -1
  259. package/dist/core/models/finding-schemas.js +79 -9
  260. package/dist/core/models/finding-schemas.js.map +1 -1
  261. package/dist/core/models/finding-types.d.ts +39 -2
  262. package/dist/core/models/finding-types.d.ts.map +1 -1
  263. package/dist/core/models/finding-types.js +3 -2
  264. package/dist/core/models/finding-types.js.map +1 -1
  265. package/dist/core/models/workflow-condition-expression.d.ts +17 -0
  266. package/dist/core/models/workflow-condition-expression.d.ts.map +1 -1
  267. package/dist/core/models/workflow-condition-expression.js +85 -2
  268. package/dist/core/models/workflow-condition-expression.js.map +1 -1
  269. package/dist/core/models/workflow-schemas.d.ts +18 -6
  270. package/dist/core/models/workflow-schemas.d.ts.map +1 -1
  271. package/dist/core/models/workflow-schemas.js +1 -1
  272. package/dist/core/models/workflow-schemas.js.map +1 -1
  273. package/dist/core/models/workflow-types.d.ts +6 -0
  274. package/dist/core/models/workflow-types.d.ts.map +1 -1
  275. package/dist/core/runtime/runtime-environment.d.ts.map +1 -1
  276. package/dist/core/runtime/runtime-environment.js +19 -0
  277. package/dist/core/runtime/runtime-environment.js.map +1 -1
  278. package/dist/core/workflow/engine/OptionsBuilder.d.ts +14 -5
  279. package/dist/core/workflow/engine/OptionsBuilder.d.ts.map +1 -1
  280. package/dist/core/workflow/engine/OptionsBuilder.js +70 -5
  281. package/dist/core/workflow/engine/OptionsBuilder.js.map +1 -1
  282. package/dist/core/workflow/engine/ParallelRunner.d.ts +2 -0
  283. package/dist/core/workflow/engine/ParallelRunner.d.ts.map +1 -1
  284. package/dist/core/workflow/engine/ParallelRunner.js +131 -23
  285. package/dist/core/workflow/engine/ParallelRunner.js.map +1 -1
  286. package/dist/core/workflow/engine/StepExecutor.d.ts +10 -0
  287. package/dist/core/workflow/engine/StepExecutor.d.ts.map +1 -1
  288. package/dist/core/workflow/engine/StepExecutor.js +86 -30
  289. package/dist/core/workflow/engine/StepExecutor.js.map +1 -1
  290. package/dist/core/workflow/engine/TeamLeaderRunner.d.ts.map +1 -1
  291. package/dist/core/workflow/engine/TeamLeaderRunner.js +3 -0
  292. package/dist/core/workflow/engine/TeamLeaderRunner.js.map +1 -1
  293. package/dist/core/workflow/engine/WorkflowEngine.d.ts.map +1 -1
  294. package/dist/core/workflow/engine/WorkflowEngine.js +8 -3
  295. package/dist/core/workflow/engine/WorkflowEngine.js.map +1 -1
  296. package/dist/core/workflow/engine/WorkflowEngineSetup.d.ts.map +1 -1
  297. package/dist/core/workflow/engine/WorkflowEngineSetup.js +3 -1
  298. package/dist/core/workflow/engine/WorkflowEngineSetup.js.map +1 -1
  299. package/dist/core/workflow/engine/WorkflowValidator.d.ts.map +1 -1
  300. package/dist/core/workflow/engine/WorkflowValidator.js +9 -6
  301. package/dist/core/workflow/engine/WorkflowValidator.js.map +1 -1
  302. package/dist/core/workflow/engine/engine-provider-options.d.ts +1 -0
  303. package/dist/core/workflow/engine/engine-provider-options.d.ts.map +1 -1
  304. package/dist/core/workflow/engine/engine-provider-options.js +12 -0
  305. package/dist/core/workflow/engine/engine-provider-options.js.map +1 -1
  306. package/dist/core/workflow/engine/team-leader-part-runner.d.ts.map +1 -1
  307. package/dist/core/workflow/engine/team-leader-part-runner.js +3 -1
  308. package/dist/core/workflow/engine/team-leader-part-runner.js.map +1 -1
  309. package/dist/core/workflow/evaluation/RuleEvaluator.d.ts +0 -1
  310. package/dist/core/workflow/evaluation/RuleEvaluator.d.ts.map +1 -1
  311. package/dist/core/workflow/evaluation/RuleEvaluator.js +22 -34
  312. package/dist/core/workflow/evaluation/RuleEvaluator.js.map +1 -1
  313. package/dist/core/workflow/evaluation/rule-utils.d.ts +33 -1
  314. package/dist/core/workflow/evaluation/rule-utils.d.ts.map +1 -1
  315. package/dist/core/workflow/evaluation/rule-utils.js +77 -5
  316. package/dist/core/workflow/evaluation/rule-utils.js.map +1 -1
  317. package/dist/core/workflow/evaluation/when-evaluator.d.ts +1 -0
  318. package/dist/core/workflow/evaluation/when-evaluator.d.ts.map +1 -1
  319. package/dist/core/workflow/evaluation/when-evaluator.js +18 -40
  320. package/dist/core/workflow/evaluation/when-evaluator.js.map +1 -1
  321. package/dist/core/workflow/findings/context.d.ts +4 -0
  322. package/dist/core/workflow/findings/context.d.ts.map +1 -1
  323. package/dist/core/workflow/findings/context.js +27 -0
  324. package/dist/core/workflow/findings/context.js.map +1 -1
  325. package/dist/core/workflow/findings/manager-output-validation.d.ts +2 -0
  326. package/dist/core/workflow/findings/manager-output-validation.d.ts.map +1 -1
  327. package/dist/core/workflow/findings/manager-output-validation.js +145 -8
  328. package/dist/core/workflow/findings/manager-output-validation.js.map +1 -1
  329. package/dist/core/workflow/findings/manager-runner.d.ts +13 -3
  330. package/dist/core/workflow/findings/manager-runner.d.ts.map +1 -1
  331. package/dist/core/workflow/findings/manager-runner.js +19 -2
  332. package/dist/core/workflow/findings/manager-runner.js.map +1 -1
  333. package/dist/core/workflow/findings/reconciler.d.ts +1 -0
  334. package/dist/core/workflow/findings/reconciler.d.ts.map +1 -1
  335. package/dist/core/workflow/findings/reconciler.js +90 -4
  336. package/dist/core/workflow/findings/reconciler.js.map +1 -1
  337. package/dist/core/workflow/instruction/InstructionBuilder.d.ts.map +1 -1
  338. package/dist/core/workflow/instruction/InstructionBuilder.js +17 -1
  339. package/dist/core/workflow/instruction/InstructionBuilder.js.map +1 -1
  340. package/dist/core/workflow/instruction/instruction-context.d.ts +4 -0
  341. package/dist/core/workflow/instruction/instruction-context.d.ts.map +1 -1
  342. package/dist/core/workflow/instruction/instruction-context.js.map +1 -1
  343. package/dist/core/workflow/instruction/status-rules.d.ts.map +1 -1
  344. package/dist/core/workflow/instruction/status-rules.js +7 -2
  345. package/dist/core/workflow/instruction/status-rules.js.map +1 -1
  346. package/dist/core/workflow/phase-runner.d.ts +17 -10
  347. package/dist/core/workflow/phase-runner.d.ts.map +1 -1
  348. package/dist/core/workflow/phase-runner.js +1 -1
  349. package/dist/core/workflow/phase-runner.js.map +1 -1
  350. package/dist/core/workflow/provider-model-requirements.d.ts +6 -0
  351. package/dist/core/workflow/provider-model-requirements.d.ts.map +1 -0
  352. package/dist/core/workflow/provider-model-requirements.js +15 -0
  353. package/dist/core/workflow/provider-model-requirements.js.map +1 -0
  354. package/dist/core/workflow/report-phase-runner.d.ts +5 -2
  355. package/dist/core/workflow/report-phase-runner.d.ts.map +1 -1
  356. package/dist/core/workflow/report-phase-runner.js +135 -43
  357. package/dist/core/workflow/report-phase-runner.js.map +1 -1
  358. package/dist/core/workflow/status-judgment-phase.d.ts +2 -2
  359. package/dist/core/workflow/status-judgment-phase.d.ts.map +1 -1
  360. package/dist/core/workflow/status-judgment-phase.js +1 -7
  361. package/dist/core/workflow/status-judgment-phase.js.map +1 -1
  362. package/dist/core/workflow/system/system-step-effect-runner.js +2 -2
  363. package/dist/core/workflow/system/system-step-effect-runner.js.map +1 -1
  364. package/dist/core/workflow/system/system-step-services.d.ts +101 -0
  365. package/dist/core/workflow/system/system-step-services.d.ts.map +1 -1
  366. package/dist/core/workflow/types.d.ts +7 -3
  367. package/dist/core/workflow/types.d.ts.map +1 -1
  368. package/dist/features/analytics/events.d.ts +2 -1
  369. package/dist/features/analytics/events.d.ts.map +1 -1
  370. package/dist/features/exec/assistantSession.js +1 -1
  371. package/dist/features/exec/assistantSession.js.map +1 -1
  372. package/dist/features/exec/configOps.d.ts.map +1 -1
  373. package/dist/features/exec/configOps.js +4 -4
  374. package/dist/features/exec/configOps.js.map +1 -1
  375. package/dist/features/exec/configValidation.d.ts +1 -1
  376. package/dist/features/exec/configValidation.d.ts.map +1 -1
  377. package/dist/features/exec/configValidation.js +9 -13
  378. package/dist/features/exec/configValidation.js.map +1 -1
  379. package/dist/features/exec/setupMenu.js +2 -2
  380. package/dist/features/exec/setupMenu.js.map +1 -1
  381. package/dist/features/exec/workflowTemplate.d.ts.map +1 -1
  382. package/dist/features/exec/workflowTemplate.js +4 -4
  383. package/dist/features/exec/workflowTemplate.js.map +1 -1
  384. package/dist/features/interactive/aiCaller.d.ts +2 -0
  385. package/dist/features/interactive/aiCaller.d.ts.map +1 -1
  386. package/dist/features/interactive/aiCaller.js +31 -10
  387. package/dist/features/interactive/aiCaller.js.map +1 -1
  388. package/dist/features/interactive/conversationSession.d.ts +44 -0
  389. package/dist/features/interactive/conversationSession.d.ts.map +1 -0
  390. package/dist/features/interactive/conversationSession.js +133 -0
  391. package/dist/features/interactive/conversationSession.js.map +1 -0
  392. package/dist/features/interactive/index.d.ts +1 -0
  393. package/dist/features/interactive/index.d.ts.map +1 -1
  394. package/dist/features/interactive/index.js +1 -0
  395. package/dist/features/interactive/index.js.map +1 -1
  396. package/dist/features/interactive/interactive.d.ts +5 -4
  397. package/dist/features/interactive/interactive.d.ts.map +1 -1
  398. package/dist/features/interactive/interactive.js +10 -4
  399. package/dist/features/interactive/interactive.js.map +1 -1
  400. package/dist/features/interactive/interactiveApplication.d.ts +5 -0
  401. package/dist/features/interactive/interactiveApplication.d.ts.map +1 -0
  402. package/dist/features/interactive/interactiveApplication.js +10 -0
  403. package/dist/features/interactive/interactiveApplication.js.map +1 -0
  404. package/dist/features/mcp/operations.d.ts +25 -0
  405. package/dist/features/mcp/operations.d.ts.map +1 -0
  406. package/dist/features/mcp/operations.js +150 -0
  407. package/dist/features/mcp/operations.js.map +1 -0
  408. package/dist/features/mcp/schemas.d.ts +50 -0
  409. package/dist/features/mcp/schemas.d.ts.map +1 -0
  410. package/dist/features/mcp/schemas.js +59 -0
  411. package/dist/features/mcp/schemas.js.map +1 -0
  412. package/dist/features/mcp/server.d.ts +7 -0
  413. package/dist/features/mcp/server.d.ts.map +1 -0
  414. package/dist/features/mcp/server.js +36 -0
  415. package/dist/features/mcp/server.js.map +1 -0
  416. package/dist/features/tasks/add/index.d.ts +8 -20
  417. package/dist/features/tasks/add/index.d.ts.map +1 -1
  418. package/dist/features/tasks/add/index.js +42 -61
  419. package/dist/features/tasks/add/index.js.map +1 -1
  420. package/dist/features/tasks/attachments.d.ts +2 -5
  421. package/dist/features/tasks/attachments.d.ts.map +1 -1
  422. package/dist/features/tasks/attachments.js +11 -35
  423. package/dist/features/tasks/attachments.js.map +1 -1
  424. package/dist/features/tasks/execute/outputFns.d.ts +1 -1
  425. package/dist/features/tasks/execute/outputFns.d.ts.map +1 -1
  426. package/dist/features/tasks/execute/outputFns.js +17 -1
  427. package/dist/features/tasks/execute/outputFns.js.map +1 -1
  428. package/dist/features/tasks/execute/postExecution.d.ts +4 -1
  429. package/dist/features/tasks/execute/postExecution.d.ts.map +1 -1
  430. package/dist/features/tasks/execute/postExecution.js +33 -14
  431. package/dist/features/tasks/execute/postExecution.js.map +1 -1
  432. package/dist/features/tasks/execute/resolveTask.d.ts +9 -3
  433. package/dist/features/tasks/execute/resolveTask.d.ts.map +1 -1
  434. package/dist/features/tasks/execute/resolveTask.js +45 -13
  435. package/dist/features/tasks/execute/resolveTask.js.map +1 -1
  436. package/dist/features/tasks/execute/runTaskExecution.d.ts +7 -1
  437. package/dist/features/tasks/execute/runTaskExecution.d.ts.map +1 -1
  438. package/dist/features/tasks/execute/runTaskExecution.js +11 -8
  439. package/dist/features/tasks/execute/runTaskExecution.js.map +1 -1
  440. package/dist/features/tasks/execute/taskExecution.d.ts +12 -3
  441. package/dist/features/tasks/execute/taskExecution.d.ts.map +1 -1
  442. package/dist/features/tasks/execute/taskExecution.js +63 -16
  443. package/dist/features/tasks/execute/taskExecution.js.map +1 -1
  444. package/dist/features/tasks/execute/taskResultHandler.d.ts +2 -2
  445. package/dist/features/tasks/execute/taskResultHandler.d.ts.map +1 -1
  446. package/dist/features/tasks/execute/taskResultHandler.js +8 -4
  447. package/dist/features/tasks/execute/taskResultHandler.js.map +1 -1
  448. package/dist/features/tasks/execute/taskWorkflowExecution.d.ts.map +1 -1
  449. package/dist/features/tasks/execute/taskWorkflowExecution.js +60 -9
  450. package/dist/features/tasks/execute/taskWorkflowExecution.js.map +1 -1
  451. package/dist/features/tasks/execute/traceTaskMetadata.js +3 -6
  452. package/dist/features/tasks/execute/traceTaskMetadata.js.map +1 -1
  453. package/dist/features/tasks/execute/types.d.ts +95 -2
  454. package/dist/features/tasks/execute/types.d.ts.map +1 -1
  455. package/dist/features/tasks/execute/workflowExecution.d.ts +3 -1
  456. package/dist/features/tasks/execute/workflowExecution.d.ts.map +1 -1
  457. package/dist/features/tasks/execute/workflowExecution.js +41 -3
  458. package/dist/features/tasks/execute/workflowExecution.js.map +1 -1
  459. package/dist/features/tasks/execute/workflowExecutionApi.d.ts +6 -0
  460. package/dist/features/tasks/execute/workflowExecutionApi.d.ts.map +1 -0
  461. package/dist/features/tasks/execute/workflowExecutionApi.js +25 -0
  462. package/dist/features/tasks/execute/workflowExecutionApi.js.map +1 -0
  463. package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts +2 -1
  464. package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts.map +1 -1
  465. package/dist/features/tasks/execute/workflowExecutionBootstrap.js +18 -14
  466. package/dist/features/tasks/execute/workflowExecutionBootstrap.js.map +1 -1
  467. package/dist/features/tasks/execute/workflowExecutionEvents.d.ts +14 -1
  468. package/dist/features/tasks/execute/workflowExecutionEvents.d.ts.map +1 -1
  469. package/dist/features/tasks/execute/workflowExecutionEvents.js +241 -2
  470. package/dist/features/tasks/execute/workflowExecutionEvents.js.map +1 -1
  471. package/dist/features/tasks/list/requeueHelpers.d.ts +1 -0
  472. package/dist/features/tasks/list/requeueHelpers.d.ts.map +1 -1
  473. package/dist/features/tasks/list/requeueHelpers.js +3 -0
  474. package/dist/features/tasks/list/requeueHelpers.js.map +1 -1
  475. package/dist/features/tasks/list/taskInstructionActions.d.ts.map +1 -1
  476. package/dist/features/tasks/list/taskInstructionActions.js +2 -2
  477. package/dist/features/tasks/list/taskInstructionActions.js.map +1 -1
  478. package/dist/features/tasks/list/taskRetryActions.d.ts.map +1 -1
  479. package/dist/features/tasks/list/taskRetryActions.js +1 -4
  480. package/dist/features/tasks/list/taskRetryActions.js.map +1 -1
  481. package/dist/features/tasks/taskContextValidation.d.ts +10 -0
  482. package/dist/features/tasks/taskContextValidation.d.ts.map +1 -0
  483. package/dist/features/tasks/taskContextValidation.js +73 -0
  484. package/dist/features/tasks/taskContextValidation.js.map +1 -0
  485. package/dist/infra/codex/client.d.ts.map +1 -1
  486. package/dist/infra/codex/client.js +5 -0
  487. package/dist/infra/codex/client.js.map +1 -1
  488. package/dist/infra/config/configNormalizers.js +4 -4
  489. package/dist/infra/config/configNormalizers.js.map +1 -1
  490. package/dist/infra/config/global/globalConfigCore.js +2 -2
  491. package/dist/infra/config/global/globalConfigCore.js.map +1 -1
  492. package/dist/infra/config/loaders/resource-resolver.d.ts.map +1 -1
  493. package/dist/infra/config/loaders/resource-resolver.js +22 -7
  494. package/dist/infra/config/loaders/resource-resolver.js.map +1 -1
  495. package/dist/infra/config/loaders/workflowCallContracts.d.ts.map +1 -1
  496. package/dist/infra/config/loaders/workflowCallContracts.js +5 -0
  497. package/dist/infra/config/loaders/workflowCallContracts.js.map +1 -1
  498. package/dist/infra/config/loaders/workflowCallableArgResolver.d.ts.map +1 -1
  499. package/dist/infra/config/loaders/workflowCallableArgResolver.js +27 -0
  500. package/dist/infra/config/loaders/workflowCallableArgResolver.js.map +1 -1
  501. package/dist/infra/config/loaders/workflowCallableRuleValidation.d.ts.map +1 -1
  502. package/dist/infra/config/loaders/workflowCallableRuleValidation.js +5 -0
  503. package/dist/infra/config/loaders/workflowCallableRuleValidation.js.map +1 -1
  504. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.d.ts.map +1 -1
  505. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js +9 -1
  506. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js.map +1 -1
  507. package/dist/infra/config/loaders/workflowPackageScope.d.ts +1 -0
  508. package/dist/infra/config/loaders/workflowPackageScope.d.ts.map +1 -1
  509. package/dist/infra/config/loaders/workflowPackageScope.js +20 -2
  510. package/dist/infra/config/loaders/workflowPackageScope.js.map +1 -1
  511. package/dist/infra/config/loaders/workflowParser.d.ts.map +1 -1
  512. package/dist/infra/config/loaders/workflowParser.js +11 -6
  513. package/dist/infra/config/loaders/workflowParser.js.map +1 -1
  514. package/dist/infra/config/loaders/workflowRuleNormalizer.d.ts +10 -0
  515. package/dist/infra/config/loaders/workflowRuleNormalizer.d.ts.map +1 -1
  516. package/dist/infra/config/loaders/workflowRuleNormalizer.js +70 -1
  517. package/dist/infra/config/loaders/workflowRuleNormalizer.js.map +1 -1
  518. package/dist/infra/config/loaders/workflowStepNormalizer.d.ts.map +1 -1
  519. package/dist/infra/config/loaders/workflowStepNormalizer.js +15 -1
  520. package/dist/infra/config/loaders/workflowStepNormalizer.js.map +1 -1
  521. package/dist/infra/config/project/sessionStore.d.ts +2 -2
  522. package/dist/infra/config/project/sessionStore.d.ts.map +1 -1
  523. package/dist/infra/config/project/sessionStore.js +12 -4
  524. package/dist/infra/config/project/sessionStore.js.map +1 -1
  525. package/dist/infra/config/providerModelRequirements.d.ts +2 -0
  526. package/dist/infra/config/providerModelRequirements.d.ts.map +1 -0
  527. package/dist/infra/config/providerModelRequirements.js +2 -0
  528. package/dist/infra/config/providerModelRequirements.js.map +1 -0
  529. package/dist/infra/git/format.d.ts +1 -0
  530. package/dist/infra/git/format.d.ts.map +1 -1
  531. package/dist/infra/git/format.js +21 -0
  532. package/dist/infra/git/format.js.map +1 -1
  533. package/dist/infra/git/index.d.ts +1 -1
  534. package/dist/infra/git/index.d.ts.map +1 -1
  535. package/dist/infra/git/types.d.ts +16 -4
  536. package/dist/infra/git/types.d.ts.map +1 -1
  537. package/dist/infra/github/GitHubProvider.d.ts +2 -1
  538. package/dist/infra/github/GitHubProvider.d.ts.map +1 -1
  539. package/dist/infra/github/GitHubProvider.js +4 -1
  540. package/dist/infra/github/GitHubProvider.js.map +1 -1
  541. package/dist/infra/github/issue.d.ts +2 -1
  542. package/dist/infra/github/issue.d.ts.map +1 -1
  543. package/dist/infra/github/issue.js +23 -2
  544. package/dist/infra/github/issue.js.map +1 -1
  545. package/dist/infra/gitlab/GitLabProvider.d.ts +2 -1
  546. package/dist/infra/gitlab/GitLabProvider.d.ts.map +1 -1
  547. package/dist/infra/gitlab/GitLabProvider.js +4 -1
  548. package/dist/infra/gitlab/GitLabProvider.js.map +1 -1
  549. package/dist/infra/gitlab/issue.d.ts +2 -1
  550. package/dist/infra/gitlab/issue.d.ts.map +1 -1
  551. package/dist/infra/gitlab/issue.js +30 -2
  552. package/dist/infra/gitlab/issue.js.map +1 -1
  553. package/dist/infra/opencode/OpenCodeStreamHandler.d.ts +4 -0
  554. package/dist/infra/opencode/OpenCodeStreamHandler.d.ts.map +1 -1
  555. package/dist/infra/opencode/OpenCodeStreamHandler.js.map +1 -1
  556. package/dist/infra/opencode/allowedTools.d.ts.map +1 -1
  557. package/dist/infra/opencode/allowedTools.js +0 -1
  558. package/dist/infra/opencode/allowedTools.js.map +1 -1
  559. package/dist/infra/opencode/client.d.ts +2 -0
  560. package/dist/infra/opencode/client.d.ts.map +1 -1
  561. package/dist/infra/opencode/client.js +346 -169
  562. package/dist/infra/opencode/client.js.map +1 -1
  563. package/dist/infra/opencode/types.d.ts +34 -0
  564. package/dist/infra/opencode/types.d.ts.map +1 -1
  565. package/dist/infra/opencode/types.js +88 -1
  566. package/dist/infra/opencode/types.js.map +1 -1
  567. package/dist/infra/opencode/unavailable-tool-loop.d.ts +13 -0
  568. package/dist/infra/opencode/unavailable-tool-loop.d.ts.map +1 -1
  569. package/dist/infra/opencode/unavailable-tool-loop.js +46 -0
  570. package/dist/infra/opencode/unavailable-tool-loop.js.map +1 -1
  571. package/dist/infra/providers/claude-headless.d.ts.map +1 -1
  572. package/dist/infra/providers/claude-headless.js +0 -2
  573. package/dist/infra/providers/claude-headless.js.map +1 -1
  574. package/dist/infra/providers/claude-terminal.d.ts.map +1 -1
  575. package/dist/infra/providers/claude-terminal.js +0 -2
  576. package/dist/infra/providers/claude-terminal.js.map +1 -1
  577. package/dist/infra/providers/claude.d.ts.map +1 -1
  578. package/dist/infra/providers/claude.js +0 -2
  579. package/dist/infra/providers/claude.js.map +1 -1
  580. package/dist/infra/providers/opencode.d.ts +1 -1
  581. package/dist/infra/providers/opencode.d.ts.map +1 -1
  582. package/dist/infra/providers/opencode.js +2 -1
  583. package/dist/infra/providers/opencode.js.map +1 -1
  584. package/dist/infra/task/clone-exec.d.ts.map +1 -1
  585. package/dist/infra/task/clone-exec.js +31 -0
  586. package/dist/infra/task/clone-exec.js.map +1 -1
  587. package/dist/infra/task/enqueueService.d.ts +115 -0
  588. package/dist/infra/task/enqueueService.d.ts.map +1 -0
  589. package/dist/infra/task/enqueueService.js +191 -0
  590. package/dist/infra/task/enqueueService.js.map +1 -0
  591. package/dist/infra/task/enqueuedTaskFile.d.ts +6 -0
  592. package/dist/infra/task/enqueuedTaskFile.d.ts.map +1 -0
  593. package/dist/infra/task/enqueuedTaskFile.js +55 -0
  594. package/dist/infra/task/enqueuedTaskFile.js.map +1 -0
  595. package/dist/infra/task/issueTask.d.ts +20 -0
  596. package/dist/infra/task/issueTask.d.ts.map +1 -0
  597. package/dist/{features/tasks/add → infra/task}/issueTask.js +61 -43
  598. package/dist/infra/task/issueTask.js.map +1 -0
  599. package/dist/infra/task/listSerializer.d.ts +1 -0
  600. package/dist/infra/task/listSerializer.d.ts.map +1 -1
  601. package/dist/infra/task/listSerializer.js +1 -0
  602. package/dist/infra/task/listSerializer.js.map +1 -1
  603. package/dist/infra/task/mapper.d.ts.map +1 -1
  604. package/dist/infra/task/mapper.js +1 -0
  605. package/dist/infra/task/mapper.js.map +1 -1
  606. package/dist/infra/task/taskExecutionSchemas.d.ts +3 -0
  607. package/dist/infra/task/taskExecutionSchemas.d.ts.map +1 -1
  608. package/dist/infra/task/taskExecutionSchemas.js +4 -2
  609. package/dist/infra/task/taskExecutionSchemas.js.map +1 -1
  610. package/dist/infra/task/taskRecordSchemas.d.ts +2 -0
  611. package/dist/infra/task/taskRecordSchemas.d.ts.map +1 -1
  612. package/dist/infra/workflow/system/DefaultSystemStepServices.d.ts.map +1 -1
  613. package/dist/infra/workflow/system/DefaultSystemStepServices.js +7 -7
  614. package/dist/infra/workflow/system/DefaultSystemStepServices.js.map +1 -1
  615. package/dist/infra/workflow/system/system-enqueue-effect.d.ts.map +1 -1
  616. package/dist/infra/workflow/system/system-enqueue-effect.js +78 -20
  617. package/dist/infra/workflow/system/system-enqueue-effect.js.map +1 -1
  618. package/dist/infra/workflow/system/system-git-context.d.ts +6 -6
  619. package/dist/infra/workflow/system/system-git-context.d.ts.map +1 -1
  620. package/dist/infra/workflow/system/system-git-context.js +13 -13
  621. package/dist/infra/workflow/system/system-git-context.js.map +1 -1
  622. package/dist/infra/workflow/system/system-issue-input-resolver.d.ts +3 -3
  623. package/dist/infra/workflow/system/system-issue-input-resolver.d.ts.map +1 -1
  624. package/dist/infra/workflow/system/system-issue-input-resolver.js +8 -8
  625. package/dist/infra/workflow/system/system-issue-input-resolver.js.map +1 -1
  626. package/dist/infra/workflow/system/system-pr-effects.d.ts.map +1 -1
  627. package/dist/infra/workflow/system/system-pr-effects.js +6 -3
  628. package/dist/infra/workflow/system/system-pr-effects.js.map +1 -1
  629. package/dist/infra/workflow/system/system-pr-input-resolver.d.ts +3 -3
  630. package/dist/infra/workflow/system/system-pr-input-resolver.d.ts.map +1 -1
  631. package/dist/infra/workflow/system/system-pr-input-resolver.js +8 -8
  632. package/dist/infra/workflow/system/system-pr-input-resolver.js.map +1 -1
  633. package/dist/infra/workflow/system/system-sync-effects.js +2 -2
  634. package/dist/infra/workflow/system/system-sync-effects.js.map +1 -1
  635. package/dist/shared/package-info.d.ts +2 -0
  636. package/dist/shared/package-info.d.ts.map +1 -0
  637. package/dist/shared/package-info.js +5 -0
  638. package/dist/shared/package-info.js.map +1 -0
  639. package/dist/shared/prompts/en/finding_manager_instruction.md +9 -2
  640. package/dist/shared/prompts/en/opencode_review_agent_prompt.md +20 -23
  641. package/dist/shared/prompts/ja/finding_manager_instruction.md +9 -2
  642. package/dist/shared/prompts/ja/opencode_review_agent_prompt.md +20 -23
  643. package/dist/shared/utils/entrypoint.d.ts +2 -0
  644. package/dist/shared/utils/entrypoint.d.ts.map +1 -0
  645. package/dist/shared/utils/entrypoint.js +15 -0
  646. package/dist/shared/utils/entrypoint.js.map +1 -0
  647. package/dist/shared/utils/index.d.ts +1 -0
  648. package/dist/shared/utils/index.d.ts.map +1 -1
  649. package/dist/shared/utils/index.js +1 -0
  650. package/dist/shared/utils/index.js.map +1 -1
  651. package/dist/shared/utils/safeExternalErrorMessage.d.ts +2 -0
  652. package/dist/shared/utils/safeExternalErrorMessage.d.ts.map +1 -0
  653. package/dist/shared/utils/safeExternalErrorMessage.js +22 -0
  654. package/dist/shared/utils/safeExternalErrorMessage.js.map +1 -0
  655. package/package.json +29 -10
  656. package/builtins/en/facets/instructions/review-pure.md +0 -9
  657. package/builtins/en/facets/personas/pure-reviewer.md +0 -22
  658. package/builtins/ja/facets/instructions/review-pure.md +0 -9
  659. package/builtins/ja/facets/personas/pure-reviewer.md +0 -22
  660. package/dist/core/workflow/claude-effort-compatibility.d.ts +0 -3
  661. package/dist/core/workflow/claude-effort-compatibility.d.ts.map +0 -1
  662. package/dist/core/workflow/claude-effort-compatibility.js +0 -28
  663. package/dist/core/workflow/claude-effort-compatibility.js.map +0 -1
  664. package/dist/core/workflow/provider-model-compatibility.d.ts +0 -6
  665. package/dist/core/workflow/provider-model-compatibility.d.ts.map +0 -1
  666. package/dist/core/workflow/provider-model-compatibility.js +0 -20
  667. package/dist/core/workflow/provider-model-compatibility.js.map +0 -1
  668. package/dist/features/tasks/add/issueTask.d.ts +0 -7
  669. package/dist/features/tasks/add/issueTask.d.ts.map +0 -1
  670. package/dist/features/tasks/add/issueTask.js.map +0 -1
  671. package/dist/infra/config/providerModelCompatibility.d.ts +0 -2
  672. package/dist/infra/config/providerModelCompatibility.d.ts.map +0 -1
  673. package/dist/infra/config/providerModelCompatibility.js +0 -2
  674. package/dist/infra/config/providerModelCompatibility.js.map +0 -1
@@ -13,10 +13,12 @@ Define the shared judgment criteria and behavioral principles for all reviewers.
13
13
  | State consistency | For side effects and state changes, verify that success, failure, and interruption paths have no missing, duplicated, or inconsistent effects |
14
14
  | Contract coverage | Verify new contracts across normal entries, derived conditions, validation, evaluation, output, and re-injection paths |
15
15
  | Contract consistency | Verify that contracts carried by consolidation or abstraction are applied to existing equivalent branches by the same standard |
16
+ | Semantic contract | For meaningful fields such as IDs, source, trace, and issue/PR numbers, verify not only the storage shape but also the meaning interpreted downstream |
16
17
  | External contract verification | Verify semantic contracts of external services, SDKs, and generated artifacts from primary evidence or actual types |
17
18
  | Specification completeness | When changing a user-facing contract, verify that implementation, tests, and documentation describe the same lookup order, override rules, special syntax, and failure conditions |
18
19
  | Requirement anchoring | Do not reinterpret required task items as optional, out of scope, or different requirements for implementation convenience |
19
20
  | Resolution judgment | Judge `resolved` against the original finding acceptance criteria and original task requirements, not merely against the presence of a fix |
21
+ | Concern handling | Any concern recognized in the prose must either become a finding or be explicitly classified with evidence as non-finding |
20
22
  | Behavior evidence | Verify what behavior the tests or logs prove, not merely that they exist |
21
23
  | Boy Scout | Have problems fixed within the task scope when they are in changed code or in areas directly affecting correctness, contracts, or wiring of the change |
22
24
 
@@ -27,6 +29,7 @@ Define the shared judgment criteria and behavioral principles for all reviewers.
27
29
  | Problem introduced by this change | Blocking | REJECT |
28
30
  | Code made unused by this change (arguments, imports, variables, functions) | Blocking | REJECT (change-induced problem) |
29
31
  | Existing problem in changed or directly related code | Blocking | REJECT (Boy Scout rule) |
32
+ | Existing ambiguous or incorrect contract exposed through a new public entry, adapter, or tool | Blocking | REJECT (existing behavior is not an exemption) |
30
33
  | Structural problem directly affecting correctness of the change | Blocking | REJECT if within scope |
31
34
  | Problem in an unchanged file | Non-blocking | Record only (informational) |
32
35
  | Existing problem that merely shares a changed file but does not directly affect correctness of the change | Non-blocking | Record only (informational) |
@@ -55,12 +58,15 @@ REJECT without exception if any of the following apply.
55
58
  - Replaced code/exports surviving after refactoring
56
59
  - Missing cross-validation of related fields (invariants of semantically coupled config values left unverified)
57
60
  - Missing caller, producer, consumer, validator, test data, or derived-entry updates after a contract change
61
+ - Meaningful fields such as IDs, source, trace, or issue/PR numbers are added, forwarded, or persisted while only the storage shape is checked, without verifying downstream interpretation or confusion with existing fields
58
62
  - User-facing contract changes for configuration, CLI, or file formats where documentation or examples omit priority, first-match/merge behavior, inline overrides, scoped/special references, or failure conditions
59
63
  - Existing branches with the same contract remain on the old implementation after adding or changing a shared helper, normalizer, builder, or adapter
64
+ - A new public entry, adapter, or tool republishes an existing ambiguous or incorrect contract as an external contract
60
65
  - Fields, attributes, outputs, settings, or identifiers requested by the task are treated as optional, unset, out of scope, or missing for some entry point or execution mode without explicit evidence
61
66
  - Operation-specific error types, statuses, return values, or idempotency of an external service, SDK, or generated artifact are not verified, and another operation's contract or mock success is used instead
62
67
  - Missing, duplicated, or incorrectly ordered effects in side-effect or state-change paths
63
68
  - Sensitive data exposed in logs, error responses, or test output
69
+ - Review prose recognizes a contract mismatch, side effect, boundary value, or unverified risk but does not turn it into a finding and does not classify it as a non-finding with evidence
64
70
 
65
71
  A DRY finding is not complete unless the proposed consolidation target is also sound. A consolidation proposal is invalid unless all of the following hold.
66
72
 
@@ -121,6 +127,11 @@ If tool output is unreadable, re-read using a reliable method before making any
121
127
 
122
128
  Every issue raised must include the following.
123
129
 
130
+ When the same kind of problem appears in multiple locations, report one representative finding and list the other locations inline as `also: src/store.ts:L232, src/projection.ts:L243`. Do not spend rows enumerating the same kind of issue; use the remaining attention to hunt different kinds of problems. Do not merge, however, in these cases:
131
+
132
+ - Findings already tracked under separate `finding_id`s (do not break the tracking unit)
133
+ - When a Finding Contract is in use (report every observed problem as an individual raw finding; deduplication is the responsibility of the findings-manager and the ledger)
134
+
124
135
  - **Which file and line number**
125
136
  - **What the problem is**
126
137
  - **How to fix it**
@@ -257,6 +268,8 @@ Do not tolerate problems just because existing code does the same. If existing c
257
268
  - Issues detected in changed code or in areas directly affecting correctness, contracts, or wiring of the change are blocking (REJECT targets), even if the code existed before the change
258
269
  - Only issues not directly related to the change may be classified as "existing problems" or "non-blocking"
259
270
  - "The code itself existed before" is not a valid reason for non-blocking when the issue is in changed or directly related code
271
+ - "Same as existing behavior" is not an approval reason when a new public entry, adapter, or tool exposes that contract
272
+ - When a concern mentioned in prose is not made a finding, classify it as `false_positive` / `overreach` / `out_of_scope` / `no_issue_after_verification` and provide evidence
260
273
  - If even one issue exists, REJECT. "APPROVE with warnings" or "APPROVE with suggestions" is prohibited
261
274
 
262
275
  ## Basic Review Procedure
@@ -292,6 +305,7 @@ When the diff adds or changes a contract such as a config value, state, conditio
292
305
  - Verify that definition, production, normalization, validation, evaluation, persistence, output, and event emission all apply the same contract
293
306
  - Check derived paths as well as the normal entry: derived conditions, aggregate conditions, parent/child workflows, loop decisions, early exits, and exception paths
294
307
  - When persisted data or externally supplied data is re-injected into JSON, Markdown, logs, events, or later instructions, include escaping, boundary handling, and failure behavior in the contract
308
+ - Verify that values normalized or validated at a boundary propagate as the same normalized value through persistence, execution, external calls, and event emission. Treat reuse of pre-normalized values in later stages as a contract inconsistency
295
309
  - Search for existing returns, throws, catches, early returns, branches, and call sites with the same responsibility
296
310
  - If an existing branch does not satisfy the new contract, treat it as related code even if the code itself predates the change
297
311
  - If tests cover only the new path and do not verify existing equivalent branches or derived entries, treat it as a coverage gap
@@ -305,6 +319,7 @@ When a change involves side effects or state changes such as external calls, con
305
319
  - Trace entry, normal completion, early return, exception, retry, interruption, and cleanup paths
306
320
  - Verify that anything acquired, started, registered, or applied is handled exactly as required on the corresponding paths
307
321
  - Verify that the same side effect is not executed more than once, and that required effects are not skipped on failure paths
322
+ - Verify that no new side effect, such as an external notification, confirmation request, tool call, or persistence write, is started after interruption, cancellation, timeout, or any other condition has made continuation invalid
308
323
  - For changes that affect shared state or downstream execution, verify that partial failure does not leave state that breaks the next run
309
324
  - If these checks have not been performed, do not treat the behavior as functionally verified
310
325
 
@@ -165,9 +165,9 @@ Test data should explicitly generate the minimum facts needed by each test. Muta
165
165
  | Factories provide defaults and each test overrides only relevant fields | OK |
166
166
  | Contract changes update fixtures, mocks, and snapshots in the same change | OK |
167
167
 
168
- ## External Contract Mocks
168
+ ## Contract Mocks and Test Doubles
169
169
 
170
- When mocking an external SDK, external API, generated client, or CLI, align mocked exception types, statuses, return values, missing values, partial successes, and idempotency with the real contract. Type compatibility alone does not verify the semantic contract.
170
+ When mocking an external SDK, external API, generated client, or CLI, align mocked exception types, statuses, return values, missing values, partial successes, and idempotency with the real contract. When using test doubles for internal builders, runners, or adapters, also match production semantics for permissions, capabilities, overrides, missing values, and side effects. Type compatibility alone does not verify the semantic contract.
171
171
 
172
172
  | Criteria | Verdict |
173
173
  |----------|---------|
@@ -175,6 +175,7 @@ When mocking an external SDK, external API, generated client, or CLI, align mock
175
175
  | The mock throws the exception or return value expected by the implementation, and test success is used as proof of the external contract | REJECT |
176
176
  | Error types or response shapes from a different operation in the same service are reused | REJECT |
177
177
  | The mock is type-safe but operation-specific semantic contracts, such as existing-resource behavior, partial success, or missing detection, are not verified | REJECT |
178
+ | Internal test double drops constraints, overrides, or side effects that production always passes | REJECT |
178
179
  | When real integration is stubbed, the report separates what the mock verifies from the unverified real-integration scope | OK |
179
180
 
180
181
  ### Naming
@@ -4,6 +4,7 @@ workflow_categories:
4
4
  - default
5
5
  - default-mini
6
6
  - default-high
7
+ - cli
7
8
  - frontend
8
9
  - backend
9
10
  - dual
@@ -20,6 +21,7 @@ workflow_categories:
20
21
  - frontend
21
22
  - frontend-mini
22
23
  - frontend-maintenance
24
+ - frontend-for-local-llm
23
25
  ⚙️ Backend:
24
26
  workflows:
25
27
  - backend
@@ -27,12 +29,15 @@ workflow_categories:
27
29
  - backend-maintenance
28
30
  - backend-cqrs
29
31
  - backend-cqrs-mini
32
+ - backend-for-local-llm
33
+ - backend-cqrs-for-local-llm
30
34
  🔧 Dual:
31
35
  workflows:
32
36
  - dual
33
37
  - dual-mini
34
38
  - dual-cqrs
35
39
  - dual-cqrs-mini
40
+ - dual-for-local-llm
36
41
  🏗️ Infrastructure:
37
42
  workflows:
38
43
  - terraform
@@ -62,12 +67,19 @@ workflow_categories:
62
67
  🎵 TAKT Development:
63
68
  workflows:
64
69
  - takt-default
65
- - takt-default-with-fc
66
70
  - takt-default-refresh-all
67
71
  - takt-default-refresh-fast
68
72
  - auto-improvement-loop
69
73
  - review-takt-default
70
74
  - review-fix-takt-default
75
+ - takt-default-for-local-llm
76
+ 🖥️ Local LLM:
77
+ workflows:
78
+ - takt-default-for-local-llm
79
+ - frontend-for-local-llm
80
+ - backend-for-local-llm
81
+ - backend-cqrs-for-local-llm
82
+ - dual-for-local-llm
71
83
  Others:
72
84
  workflows:
73
85
  - research
@@ -66,6 +66,7 @@ steps:
66
66
  - name: supervise
67
67
  tags:
68
68
  - review
69
+ - supervise
69
70
  persona: supervisor
70
71
  policy: review
71
72
  knowledge:
@@ -68,6 +68,7 @@ steps:
68
68
  - name: supervise
69
69
  tags:
70
70
  - review
71
+ - supervise
71
72
  persona: supervisor
72
73
  policy: review
73
74
  knowledge:
@@ -68,6 +68,7 @@ steps:
68
68
  - name: supervise
69
69
  tags:
70
70
  - review
71
+ - supervise
71
72
  persona: supervisor
72
73
  policy: review
73
74
  knowledge:
@@ -62,6 +62,7 @@ steps:
62
62
  - name: supervise
63
63
  tags:
64
64
  - review
65
+ - supervise
65
66
  persona: supervisor
66
67
  policy: review
67
68
  knowledge: architecture
@@ -75,6 +75,7 @@ steps:
75
75
  - name: supervise
76
76
  tags:
77
77
  - review
78
+ - supervise
78
79
  edit: false
79
80
  persona: supervisor
80
81
  policy: review
@@ -58,6 +58,7 @@ steps:
58
58
  - name: supervise
59
59
  tags:
60
60
  - review
61
+ - supervise
61
62
  persona: supervisor
62
63
  knowledge: security
63
64
  instruction: audit-security-supervise
@@ -77,6 +77,7 @@ steps:
77
77
  - name: supervise
78
78
  tags:
79
79
  - review
80
+ - supervise
80
81
  edit: false
81
82
  persona: supervisor
82
83
  policy: review
@@ -0,0 +1,288 @@
1
+ name: backend-cqrs-for-local-llm
2
+ description: CQRS+ES backend development workflow for local LLMs. Four parallel specialist reviewers plus the Finding Contract build discipline for weak models structurally
3
+ finding_contract:
4
+ ledger_path: .takt/findings/backend-cqrs-for-local-llm.json
5
+ raw_findings_path: .takt/findings/backend-cqrs-for-local-llm/raw
6
+ manager:
7
+ persona: findings-manager
8
+ instruction: findings-manager
9
+ output_contract: findings-manager
10
+ max_steps: 50
11
+ initial_step: plan
12
+ workflow_config:
13
+ provider_options:
14
+ codex:
15
+ network_access: true
16
+ opencode:
17
+ network_access: true
18
+
19
+ loop_monitors:
20
+ - cycle:
21
+ - plan
22
+ - write_tests
23
+ - implement
24
+ - reviewers
25
+ - fix
26
+ threshold: 2
27
+ judge:
28
+ persona: supervisor
29
+ instruction: loop-monitor-fix-replan
30
+ rules:
31
+ - condition: The latest fix ended with fixes complete (not a dead end)
32
+ next: reviewers
33
+ - condition: Healthy (each replan moves the blocker toward resolution)
34
+ next: plan
35
+ - condition: Unproductive (the same dead end repeats)
36
+ next: ABORT
37
+ - cycle:
38
+ - reviewers
39
+ - fix
40
+ threshold: 3
41
+ judge:
42
+ persona: supervisor
43
+ instruction: loop-monitor-reviewers-fix
44
+ rules:
45
+ - condition: converging (findings decreasing, fixes applied)
46
+ next: reviewers
47
+ - condition: unproductive (the same findings repeat), but replanning could break the deadlock
48
+ next: plan
49
+ - condition: unproductive (the same findings repeat), and replanning is unlikely to help
50
+ next: ABORT
51
+ - cycle:
52
+ - reviewers
53
+ - final-gate
54
+ - fix
55
+ threshold: 3
56
+ judge:
57
+ persona: supervisor
58
+ instruction: loop-monitor-reviewers-fix
59
+ rules:
60
+ - condition: converging (findings decreasing, fixes applied)
61
+ next: reviewers
62
+ - condition: unproductive (the same findings repeat), but replanning could break the deadlock
63
+ next: plan
64
+ - condition: unproductive (the same findings repeat), and replanning is unlikely to help
65
+ next: ABORT
66
+
67
+ steps:
68
+ - name: plan
69
+ tags:
70
+ - plan
71
+ edit: false
72
+ persona: planner
73
+ knowledge:
74
+ - backend
75
+ - cqrs-es
76
+ - architecture
77
+ provider_options:
78
+ extends: review-readonly
79
+ instruction: plan
80
+ rules:
81
+ - condition: Task analysis and planning is complete
82
+ next: write_tests
83
+ - condition: The user is asking a question (not an implementation task)
84
+ next: COMPLETE
85
+ - condition: Requirements are unclear and planning cannot proceed
86
+ next: ABORT
87
+ output_contracts:
88
+ report:
89
+ - name: plan.md
90
+ format: plan
91
+
92
+ - name: write_tests
93
+ tags:
94
+ - coding
95
+ - test-planning
96
+ edit: true
97
+ persona: coder
98
+ policy:
99
+ - coding
100
+ - testing
101
+ knowledge:
102
+ - backend
103
+ - cqrs-es
104
+ - architecture
105
+ - unit-testing
106
+ - e2e-testing
107
+ - implementation-semantics
108
+ provider_options:
109
+ extends: edit
110
+ required_permission_mode: edit
111
+ instruction: write-tests-first
112
+ rules:
113
+ - condition: Test creation is complete
114
+ next: implement
115
+ - condition: Skipping test creation as target is not yet implemented
116
+ next: implement
117
+ - condition: Cannot proceed with test creation
118
+ next: plan
119
+ - condition: User input required for clarification
120
+ next: write_tests
121
+ requires_user_input: true
122
+ interactive_only: true
123
+ output_contracts:
124
+ report:
125
+ - name: test-report.md
126
+ format: test-report
127
+
128
+ - name: implement
129
+ tags:
130
+ - coding
131
+ edit: true
132
+ persona: coder
133
+ policy:
134
+ - coding
135
+ knowledge:
136
+ - backend
137
+ - cqrs-es
138
+ - architecture
139
+ - implementation-semantics
140
+ provider_options:
141
+ extends: edit
142
+ required_permission_mode: edit
143
+ instruction: implement
144
+ rules:
145
+ - condition: Implementation is complete
146
+ next: reviewers
147
+ - condition: Cannot proceed with implementation (environment issue or missing information)
148
+ next: ABORT
149
+
150
+ - name: reviewers
151
+ tags:
152
+ - review
153
+ parallel:
154
+ - name: cqrs-es-review
155
+ tags:
156
+ - review
157
+ edit: false
158
+ persona: cqrs-es-reviewer
159
+ policy:
160
+ - review
161
+ knowledge:
162
+ - cqrs-es
163
+ instruction: review-cqrs-es
164
+ rules:
165
+ - condition: approved
166
+ - condition: needs_fix
167
+ output_contracts:
168
+ report:
169
+ - name: cqrs-es-review.md
170
+ format: cqrs-es-review-finding-contract
171
+
172
+ - name: ai-antipattern-review
173
+ tags:
174
+ - review
175
+ edit: false
176
+ persona: ai-antipattern-reviewer
177
+ policy:
178
+ - review
179
+ - ai-antipattern
180
+ pass_previous_response: false
181
+ instruction: ai-antipattern-review
182
+ rules:
183
+ - condition: No AI-specific issues
184
+ - condition: AI-specific issues found
185
+ output_contracts:
186
+ report:
187
+ - name: ai-antipattern-review.md
188
+ format: ai-antipattern-review-finding-contract
189
+
190
+ - name: coding-review
191
+ tags:
192
+ - review
193
+ edit: false
194
+ persona: coding-reviewer
195
+ policy:
196
+ - review
197
+ - coding
198
+ pass_previous_response: false
199
+ instruction: review-coding
200
+ rules:
201
+ - condition: approved
202
+ - condition: needs_fix
203
+ output_contracts:
204
+ report:
205
+ - name: coding-review.md
206
+ format: coding-review-finding-contract
207
+
208
+ - name: implementation-semantics-review
209
+ tags:
210
+ - review
211
+ edit: false
212
+ persona: implementation-semantics-reviewer
213
+ policy:
214
+ - review
215
+ knowledge:
216
+ - implementation-semantics
217
+ pass_previous_response: false
218
+ instruction: review-implementation-semantics
219
+ rules:
220
+ - condition: approved
221
+ - condition: needs_fix
222
+ output_contracts:
223
+ report:
224
+ - name: implementation-semantics-review.md
225
+ format: implementation-semantics-review-finding-contract
226
+ rules:
227
+ - condition: all("approved", "No AI-specific issues", "approved", "approved") && when(findings.open.count == 0 && findings.conflicts.count == 0)
228
+ next: final-gate
229
+ - condition: any("needs_fix", "AI-specific issues found", "needs_fix", "needs_fix") && when(findings.conflicts.count == 0)
230
+ next: fix
231
+ - condition: when(findings.conflicts.count == 0 && findings.open.count > 0)
232
+ next: fix
233
+ - condition: ai("There are unadjudicated findings.conflicts. Choose fix only when a concrete code change by the coder can resolve them. Do not choose it for reviewer disagreements or anything requiring human judgment.")
234
+ next: fix
235
+ - condition: when(findings.conflicts.count > 0)
236
+ next: ABORT
237
+
238
+ - name: final-gate
239
+ tags:
240
+ - review
241
+ - final-gate
242
+ edit: false
243
+ persona: merge-readiness-reviewer
244
+ policy: review
245
+ pass_previous_response: false
246
+ instruction: review-merge-readiness
247
+ output_contracts:
248
+ report:
249
+ - name: merge-readiness-review.md
250
+ format: merge-readiness-review-finding-contract
251
+ rules:
252
+ - condition: approved && when(findings.open.count == 0 && findings.conflicts.count == 0)
253
+ next: COMPLETE
254
+ - condition: needs_fix && when(findings.conflicts.count == 0)
255
+ next: fix
256
+ - condition: when(findings.conflicts.count == 0 && findings.open.count > 0)
257
+ next: fix
258
+ - condition: ai("There are unadjudicated findings.conflicts. Choose fix only when a concrete code change by the coder can resolve them. Do not choose it for reviewer disagreements or anything requiring human judgment.")
259
+ next: fix
260
+ - condition: when(findings.conflicts.count > 0)
261
+ next: ABORT
262
+
263
+ - name: fix
264
+ tags:
265
+ - coding
266
+ edit: true
267
+ persona: coder
268
+ policy:
269
+ - coding
270
+ knowledge:
271
+ - backend
272
+ - cqrs-es
273
+ - architecture
274
+ - implementation-semantics
275
+ provider_options:
276
+ extends: edit
277
+ required_permission_mode: edit
278
+ instruction: fix
279
+ rules:
280
+ - condition: Fixes are complete
281
+ next: reviewers
282
+ - condition: Cannot proceed with fixes, or human judgment is required
283
+ next: plan
284
+ appendix: |
285
+ The fix attempt is stuck. Read the rejection details and the stated
286
+ blocker, decompose the work again, and replan. Declare planning
287
+ impossible only if human judgment is genuinely required, with the
288
+ reasons stated explicitly.
@@ -125,6 +125,7 @@ steps:
125
125
  - name: supervise
126
126
  tags:
127
127
  - review
128
+ - supervise
128
129
  edit: false
129
130
  persona: supervisor
130
131
  policy: review
@@ -23,6 +23,8 @@ loop_monitors:
23
23
  next: reviewers_1
24
24
  - cycle:
25
25
  - reviewers_1
26
+ - reviewers_2
27
+ - final-gate
26
28
  - fix
27
29
  threshold: 3
28
30
  judge:
@@ -32,7 +34,7 @@ loop_monitors:
32
34
  - condition: converging (findings decreasing, fixes applied)
33
35
  next: reviewers_1
34
36
  - condition: unproductive (same findings repeating)
35
- next: supervise
37
+ next: final-gate
36
38
  steps:
37
39
  - name: plan
38
40
  tags:
@@ -65,6 +67,7 @@ steps:
65
67
  - name: write_tests
66
68
  tags:
67
69
  - coding
70
+ - test-planning
68
71
  edit: true
69
72
  persona: coder
70
73
  policy:
@@ -361,29 +364,6 @@ steps:
361
364
  report:
362
365
  - name: qa-review.md
363
366
  format: qa-review
364
- - name: pure-review
365
- tags:
366
- - review
367
- edit: false
368
- persona: pure-reviewer
369
- policy: review
370
- provider_options:
371
- claude:
372
- allowed_tools:
373
- - Read
374
- - Glob
375
- - Grep
376
- - Bash
377
- - WebSearch
378
- - WebFetch
379
- rules:
380
- - condition: approved
381
- - condition: needs_fix
382
- instruction: review-pure
383
- output_contracts:
384
- report:
385
- - name: pure-review.md
386
- format: pure-review
387
367
  - name: coding-review
388
368
  tags:
389
369
  - review
@@ -411,9 +391,32 @@ steps:
411
391
  - condition: needs_fix
412
392
  rules:
413
393
  - condition: all("approved")
414
- next: supervise
394
+ next: final-gate
415
395
  - condition: any("needs_fix")
416
396
  next: fix
397
+ - name: final-gate
398
+ kind: workflow_call
399
+ call: merge-readiness-dual-final-gate
400
+ args:
401
+ merge_readiness_knowledge:
402
+ - backend
403
+ - cqrs-es
404
+ - security
405
+ - architecture
406
+ supervise_knowledge:
407
+ - backend
408
+ - cqrs-es
409
+ - security
410
+ - architecture
411
+ rules:
412
+ - condition: COMPLETE
413
+ next: COMPLETE
414
+ - condition: needs_fix
415
+ next: fix
416
+ - condition: need_replan
417
+ next: plan
418
+ - condition: ABORT
419
+ next: ABORT
417
420
  - name: fix
418
421
  tags:
419
422
  - coding
@@ -446,62 +449,3 @@ steps:
446
449
  - condition: Cannot proceed, insufficient info
447
450
  next: plan
448
451
  instruction: fix
449
- - name: supervise
450
- tags:
451
- - review
452
- edit: false
453
- persona: dual-supervisor
454
- policy: review
455
- provider_options:
456
- claude:
457
- allowed_tools:
458
- - Read
459
- - Glob
460
- - Grep
461
- - WebSearch
462
- - WebFetch
463
- instruction: supervise
464
- pass_previous_response: false
465
- rules:
466
- - condition: All validations pass and ready to merge
467
- next: COMPLETE
468
- - condition: Issues detected during final review
469
- next: fix_supervisor
470
- output_contracts:
471
- report:
472
- - name: supervisor-validation.md
473
- format: supervisor-validation
474
- - name: summary.md
475
- format: summary
476
- use_judge: false
477
- - name: fix_supervisor
478
- tags:
479
- - coding
480
- edit: true
481
- persona: coder
482
- policy:
483
- - coding
484
- - testing
485
- knowledge:
486
- - backend
487
- - cqrs-es
488
- - security
489
- - architecture
490
- provider_options:
491
- claude:
492
- allowed_tools:
493
- - Read
494
- - Glob
495
- - Grep
496
- - Edit
497
- - Write
498
- - Bash
499
- - WebSearch
500
- - WebFetch
501
- instruction: fix-supervisor
502
- pass_previous_response: false
503
- rules:
504
- - condition: Supervisor's issues have been fixed
505
- next: supervise
506
- - condition: Unable to proceed with fixes
507
- next: plan