takt 0.49.0 → 0.51.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 (990) hide show
  1. package/README.md +31 -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/fix.md +9 -3
  6. package/builtins/en/facets/instructions/loop-monitor-fix-replan.md +21 -0
  7. package/builtins/en/facets/instructions/loop-monitor-replan.md +10 -0
  8. package/builtins/en/facets/instructions/loop-monitor-reviewers-fix.md +6 -0
  9. package/builtins/en/facets/instructions/plan-maintenance.md +10 -7
  10. package/builtins/en/facets/instructions/plan.md +17 -8
  11. package/builtins/en/facets/instructions/review-arch.md +5 -0
  12. package/builtins/en/facets/instructions/review-coding.md +15 -6
  13. package/builtins/en/facets/instructions/review-cqrs-es.md +9 -0
  14. package/builtins/en/facets/instructions/review-implementation-semantics.md +18 -0
  15. package/builtins/en/facets/instructions/review-merge-readiness.md +14 -0
  16. package/builtins/en/facets/instructions/supervise-maintenance.md +2 -2
  17. package/builtins/en/facets/instructions/supervise.md +8 -3
  18. package/builtins/en/facets/instructions/write-tests-first.md +23 -3
  19. package/builtins/en/facets/knowledge/architecture.md +36 -0
  20. package/builtins/en/facets/knowledge/backend.md +74 -0
  21. package/builtins/en/facets/knowledge/cqrs-es.md +767 -235
  22. package/builtins/en/facets/knowledge/frontend.md +5 -1
  23. package/builtins/en/facets/knowledge/implementation-semantics.md +104 -0
  24. package/builtins/en/facets/knowledge/security.md +3 -0
  25. package/builtins/en/facets/knowledge/takt.md +10 -2
  26. package/builtins/en/facets/knowledge/unit-testing.md +14 -0
  27. package/builtins/en/facets/output-contracts/ai-antipattern-review.md +11 -1
  28. package/builtins/en/facets/output-contracts/architecture-review.md +6 -1
  29. package/builtins/en/facets/output-contracts/coding-review.md +11 -1
  30. package/builtins/en/facets/output-contracts/findings-manager.md +14 -0
  31. package/builtins/en/facets/output-contracts/implementation-semantics-review-finding-contract.md +28 -0
  32. package/builtins/en/facets/output-contracts/implementation-semantics-review.md +50 -0
  33. package/builtins/en/facets/output-contracts/{pure-review-finding-contract.md → merge-readiness-review-finding-contract.md} +14 -8
  34. package/builtins/en/facets/output-contracts/{pure-review.md → merge-readiness-review.md} +17 -11
  35. package/builtins/en/facets/output-contracts/supervisor-validation.md +6 -2
  36. package/builtins/en/facets/output-contracts/test-report.md +25 -0
  37. package/builtins/en/facets/personas/coder.md +3 -3
  38. package/builtins/en/facets/personas/implementation-semantics-reviewer.md +27 -0
  39. package/builtins/en/facets/personas/merge-readiness-reviewer.md +28 -0
  40. package/builtins/en/facets/personas/supervisor.md +1 -1
  41. package/builtins/en/facets/policies/ai-antipattern.md +19 -0
  42. package/builtins/en/facets/policies/coding.md +31 -4
  43. package/builtins/en/facets/policies/review.md +17 -1
  44. package/builtins/en/facets/policies/testing.md +6 -2
  45. package/builtins/en/workflow-categories.yaml +13 -1
  46. package/builtins/en/workflows/audit-architecture-backend.yaml +1 -0
  47. package/builtins/en/workflows/audit-architecture-dual.yaml +1 -0
  48. package/builtins/en/workflows/audit-architecture-frontend.yaml +1 -0
  49. package/builtins/en/workflows/audit-architecture.yaml +1 -0
  50. package/builtins/en/workflows/audit-e2e.yaml +1 -0
  51. package/builtins/en/workflows/audit-security.yaml +1 -0
  52. package/builtins/en/workflows/audit-unit.yaml +1 -0
  53. package/builtins/en/workflows/backend-cqrs-for-local-llm.yaml +288 -0
  54. package/builtins/en/workflows/backend-cqrs-mini.yaml +1 -0
  55. package/builtins/en/workflows/backend-cqrs.yaml +28 -84
  56. package/builtins/en/workflows/backend-for-local-llm.yaml +284 -0
  57. package/builtins/en/workflows/backend-maintenance.yaml +32 -89
  58. package/builtins/en/workflows/backend-mini.yaml +1 -0
  59. package/builtins/en/workflows/backend.yaml +25 -83
  60. package/builtins/en/workflows/{takt-default-with-fc.yaml → cli.yaml} +16 -4
  61. package/builtins/en/workflows/deep-research.yaml +1 -0
  62. package/builtins/en/workflows/default-high.yaml +3 -32
  63. package/builtins/en/workflows/default-peer-review.yaml +16 -52
  64. package/builtins/en/workflows/default.yaml +2 -1
  65. package/builtins/en/workflows/draft.yaml +0 -1
  66. package/builtins/en/workflows/dual-cqrs-mini.yaml +1 -0
  67. package/builtins/en/workflows/dual-cqrs.yaml +28 -87
  68. package/builtins/en/workflows/dual-for-local-llm.yaml +312 -0
  69. package/builtins/en/workflows/dual-mini.yaml +1 -0
  70. package/builtins/en/workflows/dual.yaml +29 -58
  71. package/builtins/en/workflows/frontend-for-local-llm.yaml +289 -0
  72. package/builtins/en/workflows/frontend-maintenance.yaml +34 -91
  73. package/builtins/en/workflows/frontend-mini.yaml +1 -0
  74. package/builtins/en/workflows/frontend.yaml +27 -85
  75. package/builtins/en/workflows/merge-readiness-dual-final-gate.yaml +92 -0
  76. package/builtins/en/workflows/merge-readiness-final-gate.yaml +79 -0
  77. package/builtins/en/workflows/{peer-review-with-fc.yaml → peer-review-for-local-llm.yaml} +48 -37
  78. package/builtins/en/workflows/peer-review.yaml +25 -20
  79. package/builtins/en/workflows/research.yaml +1 -0
  80. package/builtins/en/workflows/review-backend-cqrs.yaml +63 -35
  81. package/builtins/en/workflows/review-backend.yaml +63 -35
  82. package/builtins/en/workflows/review-default.yaml +138 -107
  83. package/builtins/en/workflows/review-dual-cqrs.yaml +63 -35
  84. package/builtins/en/workflows/review-dual.yaml +63 -35
  85. package/builtins/en/workflows/review-fix-backend-cqrs.yaml +27 -87
  86. package/builtins/en/workflows/review-fix-backend.yaml +25 -86
  87. package/builtins/en/workflows/review-fix-default.yaml +17 -87
  88. package/builtins/en/workflows/review-fix-dual-cqrs.yaml +29 -90
  89. package/builtins/en/workflows/review-fix-dual.yaml +27 -89
  90. package/builtins/en/workflows/review-fix-frontend.yaml +25 -87
  91. package/builtins/en/workflows/review-fix-takt-default.yaml +67 -362
  92. package/builtins/en/workflows/review-frontend.yaml +63 -35
  93. package/builtins/en/workflows/review-takt-default.yaml +140 -109
  94. package/builtins/en/workflows/takt-default-for-local-llm.yaml +283 -0
  95. package/builtins/en/workflows/takt-default-refresh-all.yaml +20 -59
  96. package/builtins/en/workflows/takt-default-refresh-fast.yaml +19 -57
  97. package/builtins/en/workflows/takt-default.yaml +3 -25
  98. package/builtins/en/workflows/terraform.yaml +81 -44
  99. package/builtins/ja/config.yaml +6 -0
  100. package/builtins/ja/facets/instructions/ai-antipattern-review.md +5 -0
  101. package/builtins/ja/facets/instructions/findings-manager.md +6 -2
  102. package/builtins/ja/facets/instructions/fix.md +9 -3
  103. package/builtins/ja/facets/instructions/implement-maintenance.md +4 -15
  104. package/builtins/ja/facets/instructions/implement.md +2 -14
  105. package/builtins/ja/facets/instructions/loop-monitor-fix-replan.md +21 -0
  106. package/builtins/ja/facets/instructions/loop-monitor-replan.md +10 -0
  107. package/builtins/ja/facets/instructions/loop-monitor-reviewers-fix.md +7 -0
  108. package/builtins/ja/facets/instructions/plan-maintenance.md +10 -7
  109. package/builtins/ja/facets/instructions/plan.md +9 -6
  110. package/builtins/ja/facets/instructions/review-arch.md +5 -0
  111. package/builtins/ja/facets/instructions/review-coding.md +15 -6
  112. package/builtins/ja/facets/instructions/review-cqrs-es.md +9 -0
  113. package/builtins/ja/facets/instructions/review-implementation-semantics.md +17 -0
  114. package/builtins/ja/facets/instructions/review-merge-readiness.md +14 -0
  115. package/builtins/ja/facets/instructions/supervise-maintenance.md +2 -2
  116. package/builtins/ja/facets/instructions/supervise.md +8 -3
  117. package/builtins/ja/facets/instructions/write-tests-first.md +23 -3
  118. package/builtins/ja/facets/knowledge/architecture.md +36 -0
  119. package/builtins/ja/facets/knowledge/backend.md +74 -0
  120. package/builtins/ja/facets/knowledge/cqrs-es.md +260 -16
  121. package/builtins/ja/facets/knowledge/frontend.md +5 -1
  122. package/builtins/ja/facets/knowledge/implementation-semantics.md +104 -0
  123. package/builtins/ja/facets/knowledge/security.md +3 -0
  124. package/builtins/ja/facets/knowledge/takt.md +10 -2
  125. package/builtins/ja/facets/knowledge/unit-testing.md +14 -0
  126. package/builtins/ja/facets/output-contracts/ai-antipattern-review.md +11 -1
  127. package/builtins/ja/facets/output-contracts/architecture-review.md +6 -1
  128. package/builtins/ja/facets/output-contracts/coding-review.md +11 -1
  129. package/builtins/ja/facets/output-contracts/findings-manager.md +14 -0
  130. package/builtins/ja/facets/output-contracts/implementation-semantics-review-finding-contract.md +24 -0
  131. package/builtins/ja/facets/output-contracts/implementation-semantics-review.md +50 -0
  132. package/builtins/ja/facets/output-contracts/{pure-review-finding-contract.md → merge-readiness-review-finding-contract.md} +14 -8
  133. package/builtins/ja/facets/output-contracts/{pure-review.md → merge-readiness-review.md} +17 -11
  134. package/builtins/ja/facets/output-contracts/supervisor-validation.md +6 -2
  135. package/builtins/ja/facets/output-contracts/test-report.md +25 -0
  136. package/builtins/ja/facets/partials/instructions/implement-common.md +13 -0
  137. package/builtins/ja/facets/personas/coder.md +3 -3
  138. package/builtins/ja/facets/personas/implementation-semantics-reviewer.md +27 -0
  139. package/builtins/ja/facets/personas/merge-readiness-reviewer.md +28 -0
  140. package/builtins/ja/facets/personas/supervisor.md +1 -1
  141. package/builtins/ja/facets/policies/ai-antipattern.md +19 -0
  142. package/builtins/ja/facets/policies/coding.md +32 -4
  143. package/builtins/ja/facets/policies/review.md +17 -1
  144. package/builtins/ja/facets/policies/testing.md +11 -4
  145. package/builtins/ja/workflow-categories.yaml +13 -1
  146. package/builtins/ja/workflows/audit-architecture-backend.yaml +1 -0
  147. package/builtins/ja/workflows/audit-architecture-dual.yaml +1 -0
  148. package/builtins/ja/workflows/audit-architecture-frontend.yaml +1 -0
  149. package/builtins/ja/workflows/audit-architecture.yaml +1 -0
  150. package/builtins/ja/workflows/audit-e2e.yaml +1 -0
  151. package/builtins/ja/workflows/audit-security.yaml +1 -0
  152. package/builtins/ja/workflows/audit-unit.yaml +1 -0
  153. package/builtins/ja/workflows/backend-cqrs-for-local-llm.yaml +287 -0
  154. package/builtins/ja/workflows/backend-cqrs-mini.yaml +1 -0
  155. package/builtins/ja/workflows/backend-cqrs.yaml +28 -84
  156. package/builtins/ja/workflows/backend-for-local-llm.yaml +283 -0
  157. package/builtins/ja/workflows/backend-maintenance.yaml +32 -89
  158. package/builtins/ja/workflows/backend-mini.yaml +1 -0
  159. package/builtins/ja/workflows/backend.yaml +25 -83
  160. package/builtins/ja/workflows/{takt-default-with-fc.yaml → cli.yaml} +16 -4
  161. package/builtins/ja/workflows/deep-research.yaml +1 -0
  162. package/builtins/ja/workflows/default-high.yaml +3 -32
  163. package/builtins/ja/workflows/default-peer-review.yaml +16 -52
  164. package/builtins/ja/workflows/default.yaml +2 -1
  165. package/builtins/ja/workflows/draft.yaml +0 -1
  166. package/builtins/ja/workflows/dual-cqrs-mini.yaml +1 -0
  167. package/builtins/ja/workflows/dual-cqrs.yaml +28 -87
  168. package/builtins/ja/workflows/dual-for-local-llm.yaml +311 -0
  169. package/builtins/ja/workflows/dual-mini.yaml +1 -0
  170. package/builtins/ja/workflows/dual.yaml +29 -58
  171. package/builtins/ja/workflows/frontend-for-local-llm.yaml +288 -0
  172. package/builtins/ja/workflows/frontend-maintenance.yaml +34 -91
  173. package/builtins/ja/workflows/frontend-mini.yaml +1 -0
  174. package/builtins/ja/workflows/frontend.yaml +27 -85
  175. package/builtins/ja/workflows/merge-readiness-dual-final-gate.yaml +92 -0
  176. package/builtins/ja/workflows/merge-readiness-final-gate.yaml +79 -0
  177. package/builtins/ja/workflows/{peer-review-with-fc.yaml → peer-review-for-local-llm.yaml} +48 -37
  178. package/builtins/ja/workflows/peer-review.yaml +25 -20
  179. package/builtins/ja/workflows/research.yaml +1 -0
  180. package/builtins/ja/workflows/review-backend-cqrs.yaml +63 -35
  181. package/builtins/ja/workflows/review-backend.yaml +63 -35
  182. package/builtins/ja/workflows/review-default.yaml +111 -79
  183. package/builtins/ja/workflows/review-dual-cqrs.yaml +63 -35
  184. package/builtins/ja/workflows/review-dual.yaml +63 -35
  185. package/builtins/ja/workflows/review-fix-backend-cqrs.yaml +27 -87
  186. package/builtins/ja/workflows/review-fix-backend.yaml +25 -86
  187. package/builtins/ja/workflows/review-fix-default.yaml +17 -87
  188. package/builtins/ja/workflows/review-fix-dual-cqrs.yaml +29 -90
  189. package/builtins/ja/workflows/review-fix-dual.yaml +27 -89
  190. package/builtins/ja/workflows/review-fix-frontend.yaml +25 -87
  191. package/builtins/ja/workflows/review-fix-takt-default.yaml +67 -362
  192. package/builtins/ja/workflows/review-frontend.yaml +63 -35
  193. package/builtins/ja/workflows/review-takt-default.yaml +112 -80
  194. package/builtins/ja/workflows/takt-default-for-local-llm.yaml +282 -0
  195. package/builtins/ja/workflows/takt-default-refresh-all.yaml +20 -59
  196. package/builtins/ja/workflows/takt-default-refresh-fast.yaml +19 -57
  197. package/builtins/ja/workflows/takt-default.yaml +3 -25
  198. package/builtins/ja/workflows/terraform.yaml +81 -44
  199. package/builtins/skill/references/yaml-schema.md +21 -1
  200. package/builtins/skill-codex/references/yaml-schema.md +21 -1
  201. package/dist/agents/agent-usecases.d.ts +1 -0
  202. package/dist/agents/agent-usecases.d.ts.map +1 -1
  203. package/dist/agents/agent-usecases.js +1 -0
  204. package/dist/agents/agent-usecases.js.map +1 -1
  205. package/dist/agents/auto-routing-usecase.d.ts +23 -0
  206. package/dist/agents/auto-routing-usecase.d.ts.map +1 -0
  207. package/dist/agents/auto-routing-usecase.js +216 -0
  208. package/dist/agents/auto-routing-usecase.js.map +1 -0
  209. package/dist/agents/decompose-task-usecase.d.ts +1 -0
  210. package/dist/agents/decompose-task-usecase.d.ts.map +1 -1
  211. package/dist/agents/decompose-task-usecase.js +2 -0
  212. package/dist/agents/decompose-task-usecase.js.map +1 -1
  213. package/dist/agents/judge-utils.d.ts.map +1 -1
  214. package/dist/agents/judge-utils.js +4 -3
  215. package/dist/agents/judge-utils.js.map +1 -1
  216. package/dist/agents/runner.d.ts.map +1 -1
  217. package/dist/agents/runner.js +2 -3
  218. package/dist/agents/runner.js.map +1 -1
  219. package/dist/agents/structured-caller/prompt-based-structured-caller.d.ts.map +1 -1
  220. package/dist/agents/structured-caller/prompt-based-structured-caller.js +2 -0
  221. package/dist/agents/structured-caller/prompt-based-structured-caller.js.map +1 -1
  222. package/dist/agents/structured-caller/shared.js +1 -1
  223. package/dist/agents/structured-caller/shared.js.map +1 -1
  224. package/dist/app/acp/agent.d.ts +28 -0
  225. package/dist/app/acp/agent.d.ts.map +1 -0
  226. package/dist/app/acp/agent.js +279 -0
  227. package/dist/app/acp/agent.js.map +1 -0
  228. package/dist/app/acp/confirmationBridge.d.ts +5 -0
  229. package/dist/app/acp/confirmationBridge.d.ts.map +1 -0
  230. package/dist/app/acp/confirmationBridge.js +194 -0
  231. package/dist/app/acp/confirmationBridge.js.map +1 -0
  232. package/dist/app/acp/conversationFactory.d.ts +4 -0
  233. package/dist/app/acp/conversationFactory.d.ts.map +1 -0
  234. package/dist/app/acp/conversationFactory.js +33 -0
  235. package/dist/app/acp/conversationFactory.js.map +1 -0
  236. package/dist/app/acp/enqueue.d.ts +33 -0
  237. package/dist/app/acp/enqueue.d.ts.map +1 -0
  238. package/dist/app/acp/enqueue.js +45 -0
  239. package/dist/app/acp/enqueue.js.map +1 -0
  240. package/dist/app/acp/index.d.ts +7 -0
  241. package/dist/app/acp/index.d.ts.map +1 -0
  242. package/dist/app/acp/index.js +125 -0
  243. package/dist/app/acp/index.js.map +1 -0
  244. package/dist/app/acp/intent.d.ts +10 -0
  245. package/dist/app/acp/intent.d.ts.map +1 -0
  246. package/dist/app/acp/intent.js +210 -0
  247. package/dist/app/acp/intent.js.map +1 -0
  248. package/dist/app/acp/mcpServers.d.ts +4 -0
  249. package/dist/app/acp/mcpServers.d.ts.map +1 -0
  250. package/dist/app/acp/mcpServers.js +51 -0
  251. package/dist/app/acp/mcpServers.js.map +1 -0
  252. package/dist/app/acp/promptContent.d.ts +3 -0
  253. package/dist/app/acp/promptContent.d.ts.map +1 -0
  254. package/dist/app/acp/promptContent.js +23 -0
  255. package/dist/app/acp/promptContent.js.map +1 -0
  256. package/dist/app/acp/sessionStore.d.ts +19 -0
  257. package/dist/app/acp/sessionStore.d.ts.map +1 -0
  258. package/dist/app/acp/sessionStore.js +50 -0
  259. package/dist/app/acp/sessionStore.js.map +1 -0
  260. package/dist/app/acp/sessionUpdates.d.ts +8 -0
  261. package/dist/app/acp/sessionUpdates.d.ts.map +1 -0
  262. package/dist/app/acp/sessionUpdates.js +108 -0
  263. package/dist/app/acp/sessionUpdates.js.map +1 -0
  264. package/dist/app/acp/taskContext.d.ts +17 -0
  265. package/dist/app/acp/taskContext.d.ts.map +1 -0
  266. package/dist/app/acp/taskContext.js +81 -0
  267. package/dist/app/acp/taskContext.js.map +1 -0
  268. package/dist/app/acp/types.d.ts +33 -0
  269. package/dist/app/acp/types.d.ts.map +1 -0
  270. package/dist/app/acp/types.js +2 -0
  271. package/dist/app/acp/types.js.map +1 -0
  272. package/dist/app/cli/commands.js +28 -1
  273. package/dist/app/cli/commands.js.map +1 -1
  274. package/dist/app/cli/helpers.d.ts.map +1 -1
  275. package/dist/app/cli/helpers.js +13 -1
  276. package/dist/app/cli/helpers.js.map +1 -1
  277. package/dist/app/cli/program.d.ts.map +1 -1
  278. package/dist/app/cli/program.js +6 -5
  279. package/dist/app/cli/program.js.map +1 -1
  280. package/dist/app/cli/routing.d.ts.map +1 -1
  281. package/dist/app/cli/routing.js +56 -47
  282. package/dist/app/cli/routing.js.map +1 -1
  283. package/dist/app/mcp/index.d.ts +3 -0
  284. package/dist/app/mcp/index.d.ts.map +1 -0
  285. package/dist/app/mcp/index.js +16 -0
  286. package/dist/app/mcp/index.js.map +1 -0
  287. package/dist/app/mcp/server.d.ts +2 -0
  288. package/dist/app/mcp/server.d.ts.map +1 -0
  289. package/dist/app/mcp/server.js +2 -0
  290. package/dist/app/mcp/server.js.map +1 -0
  291. package/dist/core/config/provider-resolution.d.ts +1 -0
  292. package/dist/core/config/provider-resolution.d.ts.map +1 -1
  293. package/dist/core/config/provider-resolution.js +19 -0
  294. package/dist/core/config/provider-resolution.js.map +1 -1
  295. package/dist/core/logging/providerEvent.d.ts +3 -2
  296. package/dist/core/logging/providerEvent.d.ts.map +1 -1
  297. package/dist/core/logging/providerEvent.js.map +1 -1
  298. package/dist/core/logging/providerEventLogger.d.ts +2 -1
  299. package/dist/core/logging/providerEventLogger.d.ts.map +1 -1
  300. package/dist/core/logging/providerEventLogger.js.map +1 -1
  301. package/dist/core/logging/usageEventLogger.d.ts +2 -1
  302. package/dist/core/logging/usageEventLogger.d.ts.map +1 -1
  303. package/dist/core/logging/usageEventLogger.js +3 -0
  304. package/dist/core/logging/usageEventLogger.js.map +1 -1
  305. package/dist/core/models/config-schemas.d.ts +301 -97
  306. package/dist/core/models/config-schemas.d.ts.map +1 -1
  307. package/dist/core/models/config-schemas.js +8 -5
  308. package/dist/core/models/config-schemas.js.map +1 -1
  309. package/dist/core/models/config-types.d.ts +34 -2
  310. package/dist/core/models/config-types.d.ts.map +1 -1
  311. package/dist/core/models/finding-schemas.d.ts +167 -24
  312. package/dist/core/models/finding-schemas.d.ts.map +1 -1
  313. package/dist/core/models/finding-schemas.js +82 -9
  314. package/dist/core/models/finding-schemas.js.map +1 -1
  315. package/dist/core/models/finding-types.d.ts +43 -2
  316. package/dist/core/models/finding-types.d.ts.map +1 -1
  317. package/dist/core/models/finding-types.js +3 -2
  318. package/dist/core/models/finding-types.js.map +1 -1
  319. package/dist/core/models/index.d.ts +2 -1
  320. package/dist/core/models/index.d.ts.map +1 -1
  321. package/dist/core/models/index.js +1 -0
  322. package/dist/core/models/index.js.map +1 -1
  323. package/dist/core/models/part.d.ts +1 -0
  324. package/dist/core/models/part.d.ts.map +1 -1
  325. package/dist/core/models/schema-base.d.ts +189 -36
  326. package/dist/core/models/schema-base.d.ts.map +1 -1
  327. package/dist/core/models/schema-base.js +68 -0
  328. package/dist/core/models/schema-base.js.map +1 -1
  329. package/dist/core/models/types.d.ts +3 -2
  330. package/dist/core/models/types.d.ts.map +1 -1
  331. package/dist/core/models/types.js +1 -1
  332. package/dist/core/models/types.js.map +1 -1
  333. package/dist/core/models/workflow-condition-expression.d.ts +17 -0
  334. package/dist/core/models/workflow-condition-expression.d.ts.map +1 -1
  335. package/dist/core/models/workflow-condition-expression.js +85 -2
  336. package/dist/core/models/workflow-condition-expression.js.map +1 -1
  337. package/dist/core/models/workflow-provider-options.d.ts +1 -1
  338. package/dist/core/models/workflow-provider-options.d.ts.map +1 -1
  339. package/dist/core/models/workflow-schemas.d.ts +1134 -250
  340. package/dist/core/models/workflow-schemas.d.ts.map +1 -1
  341. package/dist/core/models/workflow-schemas.js +124 -60
  342. package/dist/core/models/workflow-schemas.js.map +1 -1
  343. package/dist/core/models/workflow-session-constraints.d.ts +3 -0
  344. package/dist/core/models/workflow-session-constraints.d.ts.map +1 -0
  345. package/dist/core/models/workflow-session-constraints.js +3 -0
  346. package/dist/core/models/workflow-session-constraints.js.map +1 -0
  347. package/dist/core/models/workflow-types.d.ts +44 -6
  348. package/dist/core/models/workflow-types.d.ts.map +1 -1
  349. package/dist/core/models/workflow-types.js +1 -0
  350. package/dist/core/models/workflow-types.js.map +1 -1
  351. package/dist/core/runtime/runtime-environment.d.ts.map +1 -1
  352. package/dist/core/runtime/runtime-environment.js +19 -0
  353. package/dist/core/runtime/runtime-environment.js.map +1 -1
  354. package/dist/core/workflow/auto-routing/resolver.d.ts +43 -0
  355. package/dist/core/workflow/auto-routing/resolver.d.ts.map +1 -0
  356. package/dist/core/workflow/auto-routing/resolver.js +218 -0
  357. package/dist/core/workflow/auto-routing/resolver.js.map +1 -0
  358. package/dist/core/workflow/auto-routing/workflow-auto-provider.d.ts +16 -0
  359. package/dist/core/workflow/auto-routing/workflow-auto-provider.d.ts.map +1 -0
  360. package/dist/core/workflow/auto-routing/workflow-auto-provider.js +64 -0
  361. package/dist/core/workflow/auto-routing/workflow-auto-provider.js.map +1 -0
  362. package/dist/core/workflow/engine/LoopMonitorJudgeRunner.d.ts +1 -1
  363. package/dist/core/workflow/engine/LoopMonitorJudgeRunner.d.ts.map +1 -1
  364. package/dist/core/workflow/engine/LoopMonitorJudgeRunner.js +15 -1
  365. package/dist/core/workflow/engine/LoopMonitorJudgeRunner.js.map +1 -1
  366. package/dist/core/workflow/engine/OptionsBuilder.d.ts +15 -5
  367. package/dist/core/workflow/engine/OptionsBuilder.d.ts.map +1 -1
  368. package/dist/core/workflow/engine/OptionsBuilder.js +122 -13
  369. package/dist/core/workflow/engine/OptionsBuilder.js.map +1 -1
  370. package/dist/core/workflow/engine/ParallelRunner.d.ts +12 -1
  371. package/dist/core/workflow/engine/ParallelRunner.d.ts.map +1 -1
  372. package/dist/core/workflow/engine/ParallelRunner.js +356 -33
  373. package/dist/core/workflow/engine/ParallelRunner.js.map +1 -1
  374. package/dist/core/workflow/engine/StepExecutor.d.ts +10 -0
  375. package/dist/core/workflow/engine/StepExecutor.d.ts.map +1 -1
  376. package/dist/core/workflow/engine/StepExecutor.js +89 -31
  377. package/dist/core/workflow/engine/StepExecutor.js.map +1 -1
  378. package/dist/core/workflow/engine/TeamLeaderRunner.d.ts +10 -2
  379. package/dist/core/workflow/engine/TeamLeaderRunner.d.ts.map +1 -1
  380. package/dist/core/workflow/engine/TeamLeaderRunner.js +111 -9
  381. package/dist/core/workflow/engine/TeamLeaderRunner.js.map +1 -1
  382. package/dist/core/workflow/engine/WorkflowCallExecutor.d.ts +11 -1
  383. package/dist/core/workflow/engine/WorkflowCallExecutor.d.ts.map +1 -1
  384. package/dist/core/workflow/engine/WorkflowCallExecutor.js +43 -7
  385. package/dist/core/workflow/engine/WorkflowCallExecutor.js.map +1 -1
  386. package/dist/core/workflow/engine/WorkflowCallRunner.d.ts +9 -0
  387. package/dist/core/workflow/engine/WorkflowCallRunner.d.ts.map +1 -1
  388. package/dist/core/workflow/engine/WorkflowCallRunner.js +65 -14
  389. package/dist/core/workflow/engine/WorkflowCallRunner.js.map +1 -1
  390. package/dist/core/workflow/engine/WorkflowEngine.d.ts.map +1 -1
  391. package/dist/core/workflow/engine/WorkflowEngine.js +27 -9
  392. package/dist/core/workflow/engine/WorkflowEngine.js.map +1 -1
  393. package/dist/core/workflow/engine/WorkflowEngineSetup.d.ts.map +1 -1
  394. package/dist/core/workflow/engine/WorkflowEngineSetup.js +29 -20
  395. package/dist/core/workflow/engine/WorkflowEngineSetup.js.map +1 -1
  396. package/dist/core/workflow/engine/WorkflowEngineStepCoordinator.d.ts +2 -2
  397. package/dist/core/workflow/engine/WorkflowEngineStepCoordinator.d.ts.map +1 -1
  398. package/dist/core/workflow/engine/WorkflowEngineStepCoordinator.js +2 -2
  399. package/dist/core/workflow/engine/WorkflowEngineStepCoordinator.js.map +1 -1
  400. package/dist/core/workflow/engine/WorkflowRunLoop.d.ts +1 -1
  401. package/dist/core/workflow/engine/WorkflowRunLoop.d.ts.map +1 -1
  402. package/dist/core/workflow/engine/WorkflowRunLoop.js +51 -7
  403. package/dist/core/workflow/engine/WorkflowRunLoop.js.map +1 -1
  404. package/dist/core/workflow/engine/WorkflowValidator.d.ts.map +1 -1
  405. package/dist/core/workflow/engine/WorkflowValidator.js +79 -7
  406. package/dist/core/workflow/engine/WorkflowValidator.js.map +1 -1
  407. package/dist/core/workflow/engine/engine-provider-options.d.ts +1 -0
  408. package/dist/core/workflow/engine/engine-provider-options.d.ts.map +1 -1
  409. package/dist/core/workflow/engine/engine-provider-options.js +12 -0
  410. package/dist/core/workflow/engine/engine-provider-options.js.map +1 -1
  411. package/dist/core/workflow/engine/session-compaction.d.ts +10 -0
  412. package/dist/core/workflow/engine/session-compaction.d.ts.map +1 -0
  413. package/dist/core/workflow/engine/session-compaction.js +42 -0
  414. package/dist/core/workflow/engine/session-compaction.js.map +1 -0
  415. package/dist/core/workflow/engine/team-leader-part-runner.d.ts.map +1 -1
  416. package/dist/core/workflow/engine/team-leader-part-runner.js +3 -1
  417. package/dist/core/workflow/engine/team-leader-part-runner.js.map +1 -1
  418. package/dist/core/workflow/evaluation/RuleEvaluator.d.ts +0 -1
  419. package/dist/core/workflow/evaluation/RuleEvaluator.d.ts.map +1 -1
  420. package/dist/core/workflow/evaluation/RuleEvaluator.js +22 -34
  421. package/dist/core/workflow/evaluation/RuleEvaluator.js.map +1 -1
  422. package/dist/core/workflow/evaluation/rule-utils.d.ts +33 -1
  423. package/dist/core/workflow/evaluation/rule-utils.d.ts.map +1 -1
  424. package/dist/core/workflow/evaluation/rule-utils.js +77 -5
  425. package/dist/core/workflow/evaluation/rule-utils.js.map +1 -1
  426. package/dist/core/workflow/evaluation/when-evaluator.d.ts +1 -0
  427. package/dist/core/workflow/evaluation/when-evaluator.d.ts.map +1 -1
  428. package/dist/core/workflow/evaluation/when-evaluator.js +18 -40
  429. package/dist/core/workflow/evaluation/when-evaluator.js.map +1 -1
  430. package/dist/core/workflow/findings/context.d.ts +4 -0
  431. package/dist/core/workflow/findings/context.d.ts.map +1 -1
  432. package/dist/core/workflow/findings/context.js +27 -0
  433. package/dist/core/workflow/findings/context.js.map +1 -1
  434. package/dist/core/workflow/findings/manager-output-validation.d.ts +14 -0
  435. package/dist/core/workflow/findings/manager-output-validation.d.ts.map +1 -1
  436. package/dist/core/workflow/findings/manager-output-validation.js +158 -8
  437. package/dist/core/workflow/findings/manager-output-validation.js.map +1 -1
  438. package/dist/core/workflow/findings/manager-runner.d.ts +17 -6
  439. package/dist/core/workflow/findings/manager-runner.d.ts.map +1 -1
  440. package/dist/core/workflow/findings/manager-runner.js +157 -59
  441. package/dist/core/workflow/findings/manager-runner.js.map +1 -1
  442. package/dist/core/workflow/findings/manager-step.d.ts +8 -0
  443. package/dist/core/workflow/findings/manager-step.d.ts.map +1 -0
  444. package/dist/core/workflow/findings/manager-step.js +27 -0
  445. package/dist/core/workflow/findings/manager-step.js.map +1 -0
  446. package/dist/core/workflow/findings/mechanical-classification.d.ts +24 -0
  447. package/dist/core/workflow/findings/mechanical-classification.d.ts.map +1 -0
  448. package/dist/core/workflow/findings/mechanical-classification.js +115 -0
  449. package/dist/core/workflow/findings/mechanical-classification.js.map +1 -0
  450. package/dist/core/workflow/findings/reconciler.d.ts +1 -0
  451. package/dist/core/workflow/findings/reconciler.d.ts.map +1 -1
  452. package/dist/core/workflow/findings/reconciler.js +90 -4
  453. package/dist/core/workflow/findings/reconciler.js.map +1 -1
  454. package/dist/core/workflow/instruction/InstructionBuilder.d.ts.map +1 -1
  455. package/dist/core/workflow/instruction/InstructionBuilder.js +7 -15
  456. package/dist/core/workflow/instruction/InstructionBuilder.js.map +1 -1
  457. package/dist/core/workflow/instruction/ReportInstructionBuilder.d.ts.map +1 -1
  458. package/dist/core/workflow/instruction/ReportInstructionBuilder.js +9 -11
  459. package/dist/core/workflow/instruction/ReportInstructionBuilder.js.map +1 -1
  460. package/dist/core/workflow/instruction/finding-contract-instruction.d.ts +36 -0
  461. package/dist/core/workflow/instruction/finding-contract-instruction.d.ts.map +1 -0
  462. package/dist/core/workflow/instruction/finding-contract-instruction.js +39 -0
  463. package/dist/core/workflow/instruction/finding-contract-instruction.js.map +1 -0
  464. package/dist/core/workflow/instruction/instruction-context.d.ts +16 -0
  465. package/dist/core/workflow/instruction/instruction-context.d.ts.map +1 -1
  466. package/dist/core/workflow/instruction/instruction-context.js +14 -18
  467. package/dist/core/workflow/instruction/instruction-context.js.map +1 -1
  468. package/dist/core/workflow/instruction/status-rules.d.ts.map +1 -1
  469. package/dist/core/workflow/instruction/status-rules.js +7 -2
  470. package/dist/core/workflow/instruction/status-rules.js.map +1 -1
  471. package/dist/core/workflow/permission-profile-resolution.d.ts +6 -0
  472. package/dist/core/workflow/permission-profile-resolution.d.ts.map +1 -1
  473. package/dist/core/workflow/permission-profile-resolution.js +11 -0
  474. package/dist/core/workflow/permission-profile-resolution.js.map +1 -1
  475. package/dist/core/workflow/phase-runner.d.ts +17 -10
  476. package/dist/core/workflow/phase-runner.d.ts.map +1 -1
  477. package/dist/core/workflow/phase-runner.js +1 -1
  478. package/dist/core/workflow/phase-runner.js.map +1 -1
  479. package/dist/core/workflow/provider-model-requirements.d.ts +6 -0
  480. package/dist/core/workflow/provider-model-requirements.d.ts.map +1 -0
  481. package/dist/core/workflow/provider-model-requirements.js +15 -0
  482. package/dist/core/workflow/provider-model-requirements.js.map +1 -0
  483. package/dist/core/workflow/provider-options-trace.d.ts +1 -1
  484. package/dist/core/workflow/provider-options-trace.d.ts.map +1 -1
  485. package/dist/core/workflow/provider-resolution.d.ts +14 -11
  486. package/dist/core/workflow/provider-resolution.d.ts.map +1 -1
  487. package/dist/core/workflow/provider-resolution.js +38 -26
  488. package/dist/core/workflow/provider-resolution.js.map +1 -1
  489. package/dist/core/workflow/report-phase-runner.d.ts +5 -2
  490. package/dist/core/workflow/report-phase-runner.d.ts.map +1 -1
  491. package/dist/core/workflow/report-phase-runner.js +135 -43
  492. package/dist/core/workflow/report-phase-runner.js.map +1 -1
  493. package/dist/core/workflow/status-judgment-phase.d.ts +2 -2
  494. package/dist/core/workflow/status-judgment-phase.d.ts.map +1 -1
  495. package/dist/core/workflow/status-judgment-phase.js +1 -7
  496. package/dist/core/workflow/status-judgment-phase.js.map +1 -1
  497. package/dist/core/workflow/system/system-step-effect-runner.js +2 -2
  498. package/dist/core/workflow/system/system-step-effect-runner.js.map +1 -1
  499. package/dist/core/workflow/system/system-step-services.d.ts +101 -0
  500. package/dist/core/workflow/system/system-step-services.d.ts.map +1 -1
  501. package/dist/core/workflow/types.d.ts +25 -8
  502. package/dist/core/workflow/types.d.ts.map +1 -1
  503. package/dist/features/analytics/events.d.ts +30 -3
  504. package/dist/features/analytics/events.d.ts.map +1 -1
  505. package/dist/features/analytics/events.js +1 -1
  506. package/dist/features/analytics/index.d.ts +2 -2
  507. package/dist/features/analytics/index.d.ts.map +1 -1
  508. package/dist/features/analytics/index.js.map +1 -1
  509. package/dist/features/analytics/writer.d.ts +8 -14
  510. package/dist/features/analytics/writer.d.ts.map +1 -1
  511. package/dist/features/analytics/writer.js +27 -17
  512. package/dist/features/analytics/writer.js.map +1 -1
  513. package/dist/features/exec/assistantSession.d.ts +2 -0
  514. package/dist/features/exec/assistantSession.d.ts.map +1 -1
  515. package/dist/features/exec/assistantSession.js +1 -1
  516. package/dist/features/exec/assistantSession.js.map +1 -1
  517. package/dist/features/exec/command.d.ts.map +1 -1
  518. package/dist/features/exec/command.js +98 -54
  519. package/dist/features/exec/command.js.map +1 -1
  520. package/dist/features/exec/commandAvailability.js +1 -1
  521. package/dist/features/exec/commandAvailability.js.map +1 -1
  522. package/dist/features/exec/configOps.d.ts.map +1 -1
  523. package/dist/features/exec/configOps.js +6 -5
  524. package/dist/features/exec/configOps.js.map +1 -1
  525. package/dist/features/exec/configValidation.d.ts +1 -1
  526. package/dist/features/exec/configValidation.d.ts.map +1 -1
  527. package/dist/features/exec/configValidation.js +9 -13
  528. package/dist/features/exec/configValidation.js.map +1 -1
  529. package/dist/features/exec/runtimeConfig.d.ts.map +1 -1
  530. package/dist/features/exec/runtimeConfig.js +4 -2
  531. package/dist/features/exec/runtimeConfig.js.map +1 -1
  532. package/dist/features/exec/setupMenu.js +2 -2
  533. package/dist/features/exec/setupMenu.js.map +1 -1
  534. package/dist/features/exec/workflowRunner.d.ts +2 -1
  535. package/dist/features/exec/workflowRunner.d.ts.map +1 -1
  536. package/dist/features/exec/workflowRunner.js +2 -1
  537. package/dist/features/exec/workflowRunner.js.map +1 -1
  538. package/dist/features/exec/workflowTemplate.d.ts.map +1 -1
  539. package/dist/features/exec/workflowTemplate.js +4 -4
  540. package/dist/features/exec/workflowTemplate.js.map +1 -1
  541. package/dist/features/interactive/aiCaller.d.ts +4 -2
  542. package/dist/features/interactive/aiCaller.d.ts.map +1 -1
  543. package/dist/features/interactive/aiCaller.js +38 -11
  544. package/dist/features/interactive/aiCaller.js.map +1 -1
  545. package/dist/features/interactive/assistantConfig.d.ts.map +1 -1
  546. package/dist/features/interactive/assistantConfig.js +3 -2
  547. package/dist/features/interactive/assistantConfig.js.map +1 -1
  548. package/dist/features/interactive/conversationLoop.d.ts.map +1 -1
  549. package/dist/features/interactive/conversationLoop.js +164 -141
  550. package/dist/features/interactive/conversationLoop.js.map +1 -1
  551. package/dist/features/interactive/conversationSession.d.ts +44 -0
  552. package/dist/features/interactive/conversationSession.d.ts.map +1 -0
  553. package/dist/features/interactive/conversationSession.js +133 -0
  554. package/dist/features/interactive/conversationSession.js.map +1 -0
  555. package/dist/features/interactive/imageAttachments.d.ts +12 -8
  556. package/dist/features/interactive/imageAttachments.d.ts.map +1 -1
  557. package/dist/features/interactive/imageAttachments.js +67 -14
  558. package/dist/features/interactive/imageAttachments.js.map +1 -1
  559. package/dist/features/interactive/index.d.ts +1 -0
  560. package/dist/features/interactive/index.d.ts.map +1 -1
  561. package/dist/features/interactive/index.js +1 -0
  562. package/dist/features/interactive/index.js.map +1 -1
  563. package/dist/features/interactive/instructModeTypes.d.ts +2 -2
  564. package/dist/features/interactive/instructModeTypes.d.ts.map +1 -1
  565. package/dist/features/interactive/interactive-summary.d.ts.map +1 -1
  566. package/dist/features/interactive/interactive-summary.js +8 -0
  567. package/dist/features/interactive/interactive-summary.js.map +1 -1
  568. package/dist/features/interactive/interactive.d.ts +9 -6
  569. package/dist/features/interactive/interactive.d.ts.map +1 -1
  570. package/dist/features/interactive/interactive.js +10 -4
  571. package/dist/features/interactive/interactive.js.map +1 -1
  572. package/dist/features/interactive/interactiveApplication.d.ts +5 -0
  573. package/dist/features/interactive/interactiveApplication.d.ts.map +1 -0
  574. package/dist/features/interactive/interactiveApplication.js +10 -0
  575. package/dist/features/interactive/interactiveApplication.js.map +1 -0
  576. package/dist/features/interactive/passthroughMode.d.ts.map +1 -1
  577. package/dist/features/interactive/passthroughMode.js +22 -16
  578. package/dist/features/interactive/passthroughMode.js.map +1 -1
  579. package/dist/features/interactive/promptSections.js +2 -2
  580. package/dist/features/interactive/promptSections.js.map +1 -1
  581. package/dist/features/interactive/quietMode.d.ts.map +1 -1
  582. package/dist/features/interactive/quietMode.js +55 -40
  583. package/dist/features/interactive/quietMode.js.map +1 -1
  584. package/dist/features/interactive/retryMode.d.ts.map +1 -1
  585. package/dist/features/interactive/retryMode.js +5 -4
  586. package/dist/features/interactive/retryMode.js.map +1 -1
  587. package/dist/features/mcp/operations.d.ts +25 -0
  588. package/dist/features/mcp/operations.d.ts.map +1 -0
  589. package/dist/features/mcp/operations.js +150 -0
  590. package/dist/features/mcp/operations.js.map +1 -0
  591. package/dist/features/mcp/schemas.d.ts +50 -0
  592. package/dist/features/mcp/schemas.d.ts.map +1 -0
  593. package/dist/features/mcp/schemas.js +59 -0
  594. package/dist/features/mcp/schemas.js.map +1 -0
  595. package/dist/features/mcp/server.d.ts +7 -0
  596. package/dist/features/mcp/server.d.ts.map +1 -0
  597. package/dist/features/mcp/server.js +36 -0
  598. package/dist/features/mcp/server.js.map +1 -0
  599. package/dist/features/pipeline/steps.d.ts +1 -1
  600. package/dist/features/pipeline/steps.d.ts.map +1 -1
  601. package/dist/features/pipeline/steps.js +6 -2
  602. package/dist/features/pipeline/steps.js.map +1 -1
  603. package/dist/features/prompt/preview.d.ts.map +1 -1
  604. package/dist/features/prompt/preview.js +37 -1
  605. package/dist/features/prompt/preview.js.map +1 -1
  606. package/dist/features/tasks/add/index.d.ts +8 -20
  607. package/dist/features/tasks/add/index.d.ts.map +1 -1
  608. package/dist/features/tasks/add/index.js +42 -61
  609. package/dist/features/tasks/add/index.js.map +1 -1
  610. package/dist/features/tasks/attachments.d.ts +4 -10
  611. package/dist/features/tasks/attachments.d.ts.map +1 -1
  612. package/dist/features/tasks/attachments.js +14 -42
  613. package/dist/features/tasks/attachments.js.map +1 -1
  614. package/dist/features/tasks/execute/analyticsEmitter.d.ts +7 -2
  615. package/dist/features/tasks/execute/analyticsEmitter.d.ts.map +1 -1
  616. package/dist/features/tasks/execute/analyticsEmitter.js +76 -2
  617. package/dist/features/tasks/execute/analyticsEmitter.js.map +1 -1
  618. package/dist/features/tasks/execute/outputFns.d.ts +1 -1
  619. package/dist/features/tasks/execute/outputFns.d.ts.map +1 -1
  620. package/dist/features/tasks/execute/outputFns.js +17 -1
  621. package/dist/features/tasks/execute/outputFns.js.map +1 -1
  622. package/dist/features/tasks/execute/postExecution.d.ts +4 -1
  623. package/dist/features/tasks/execute/postExecution.d.ts.map +1 -1
  624. package/dist/features/tasks/execute/postExecution.js +33 -14
  625. package/dist/features/tasks/execute/postExecution.js.map +1 -1
  626. package/dist/features/tasks/execute/resolveTask.d.ts +9 -3
  627. package/dist/features/tasks/execute/resolveTask.d.ts.map +1 -1
  628. package/dist/features/tasks/execute/resolveTask.js +46 -14
  629. package/dist/features/tasks/execute/resolveTask.js.map +1 -1
  630. package/dist/features/tasks/execute/runAllTasks.d.ts.map +1 -1
  631. package/dist/features/tasks/execute/runAllTasks.js +3 -0
  632. package/dist/features/tasks/execute/runAllTasks.js.map +1 -1
  633. package/dist/features/tasks/execute/runTaskExecution.d.ts +7 -1
  634. package/dist/features/tasks/execute/runTaskExecution.d.ts.map +1 -1
  635. package/dist/features/tasks/execute/runTaskExecution.js +11 -8
  636. package/dist/features/tasks/execute/runTaskExecution.js.map +1 -1
  637. package/dist/features/tasks/execute/taskExecution.d.ts +12 -3
  638. package/dist/features/tasks/execute/taskExecution.d.ts.map +1 -1
  639. package/dist/features/tasks/execute/taskExecution.js +63 -16
  640. package/dist/features/tasks/execute/taskExecution.js.map +1 -1
  641. package/dist/features/tasks/execute/taskResultHandler.d.ts +2 -2
  642. package/dist/features/tasks/execute/taskResultHandler.d.ts.map +1 -1
  643. package/dist/features/tasks/execute/taskResultHandler.js +8 -4
  644. package/dist/features/tasks/execute/taskResultHandler.js.map +1 -1
  645. package/dist/features/tasks/execute/taskWorkflowExecution.d.ts.map +1 -1
  646. package/dist/features/tasks/execute/taskWorkflowExecution.js +62 -9
  647. package/dist/features/tasks/execute/taskWorkflowExecution.js.map +1 -1
  648. package/dist/features/tasks/execute/traceTaskMetadata.js +3 -6
  649. package/dist/features/tasks/execute/traceTaskMetadata.js.map +1 -1
  650. package/dist/features/tasks/execute/types.d.ts +109 -7
  651. package/dist/features/tasks/execute/types.d.ts.map +1 -1
  652. package/dist/features/tasks/execute/workflowExecution.d.ts +3 -1
  653. package/dist/features/tasks/execute/workflowExecution.d.ts.map +1 -1
  654. package/dist/features/tasks/execute/workflowExecution.js +49 -5
  655. package/dist/features/tasks/execute/workflowExecution.js.map +1 -1
  656. package/dist/features/tasks/execute/workflowExecutionApi.d.ts +6 -0
  657. package/dist/features/tasks/execute/workflowExecutionApi.d.ts.map +1 -0
  658. package/dist/features/tasks/execute/workflowExecutionApi.js +25 -0
  659. package/dist/features/tasks/execute/workflowExecutionApi.js.map +1 -0
  660. package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts +3 -1
  661. package/dist/features/tasks/execute/workflowExecutionBootstrap.d.ts.map +1 -1
  662. package/dist/features/tasks/execute/workflowExecutionBootstrap.js +51 -20
  663. package/dist/features/tasks/execute/workflowExecutionBootstrap.js.map +1 -1
  664. package/dist/features/tasks/execute/workflowExecutionContext.d.ts.map +1 -1
  665. package/dist/features/tasks/execute/workflowExecutionContext.js +1 -1
  666. package/dist/features/tasks/execute/workflowExecutionContext.js.map +1 -1
  667. package/dist/features/tasks/execute/workflowExecutionEvents.d.ts +14 -1
  668. package/dist/features/tasks/execute/workflowExecutionEvents.d.ts.map +1 -1
  669. package/dist/features/tasks/execute/workflowExecutionEvents.js +246 -4
  670. package/dist/features/tasks/execute/workflowExecutionEvents.js.map +1 -1
  671. package/dist/features/tasks/list/instructMode.d.ts.map +1 -1
  672. package/dist/features/tasks/list/instructMode.js +5 -4
  673. package/dist/features/tasks/list/instructMode.js.map +1 -1
  674. package/dist/features/tasks/list/requeueHelpers.d.ts +1 -0
  675. package/dist/features/tasks/list/requeueHelpers.d.ts.map +1 -1
  676. package/dist/features/tasks/list/requeueHelpers.js +3 -0
  677. package/dist/features/tasks/list/requeueHelpers.js.map +1 -1
  678. package/dist/features/tasks/list/taskInstructionActions.d.ts.map +1 -1
  679. package/dist/features/tasks/list/taskInstructionActions.js +33 -25
  680. package/dist/features/tasks/list/taskInstructionActions.js.map +1 -1
  681. package/dist/features/tasks/list/taskRetryActions.d.ts.map +1 -1
  682. package/dist/features/tasks/list/taskRetryActions.js +34 -30
  683. package/dist/features/tasks/list/taskRetryActions.js.map +1 -1
  684. package/dist/features/tasks/resume/directInstructMode.d.ts.map +1 -1
  685. package/dist/features/tasks/resume/directInstructMode.js +11 -2
  686. package/dist/features/tasks/resume/directInstructMode.js.map +1 -1
  687. package/dist/features/tasks/resume/index.d.ts.map +1 -1
  688. package/dist/features/tasks/resume/index.js +73 -24
  689. package/dist/features/tasks/resume/index.js.map +1 -1
  690. package/dist/features/tasks/{list/retryTaskSpecAttachments.d.ts → retryTaskSpecAttachments.d.ts} +3 -1
  691. package/dist/features/tasks/retryTaskSpecAttachments.d.ts.map +1 -0
  692. package/dist/features/tasks/{list/retryTaskSpecAttachments.js → retryTaskSpecAttachments.js} +4 -3
  693. package/dist/features/tasks/retryTaskSpecAttachments.js.map +1 -0
  694. package/dist/features/tasks/taskContextValidation.d.ts +10 -0
  695. package/dist/features/tasks/taskContextValidation.d.ts.map +1 -0
  696. package/dist/features/tasks/taskContextValidation.js +73 -0
  697. package/dist/features/tasks/taskContextValidation.js.map +1 -0
  698. package/dist/features/tasks/watch/index.d.ts.map +1 -1
  699. package/dist/features/tasks/watch/index.js +1 -0
  700. package/dist/features/tasks/watch/index.js.map +1 -1
  701. package/dist/features/workflowAuthoring/doctor.d.ts.map +1 -1
  702. package/dist/features/workflowAuthoring/doctor.js +56 -1
  703. package/dist/features/workflowAuthoring/doctor.js.map +1 -1
  704. package/dist/infra/claude/image-input.d.ts.map +1 -1
  705. package/dist/infra/claude/image-input.js +3 -2
  706. package/dist/infra/claude/image-input.js.map +1 -1
  707. package/dist/infra/codex/client.d.ts.map +1 -1
  708. package/dist/infra/codex/client.js +29 -10
  709. package/dist/infra/codex/client.js.map +1 -1
  710. package/dist/infra/config/configNormalizers.d.ts +24 -2
  711. package/dist/infra/config/configNormalizers.d.ts.map +1 -1
  712. package/dist/infra/config/configNormalizers.js +77 -4
  713. package/dist/infra/config/configNormalizers.js.map +1 -1
  714. package/dist/infra/config/env/global-current-env-specs.d.ts.map +1 -1
  715. package/dist/infra/config/env/global-current-env-specs.js +2 -0
  716. package/dist/infra/config/env/global-current-env-specs.js.map +1 -1
  717. package/dist/infra/config/env/project-current-env-specs.d.ts.map +1 -1
  718. package/dist/infra/config/env/project-current-env-specs.js +2 -0
  719. package/dist/infra/config/env/project-current-env-specs.js.map +1 -1
  720. package/dist/infra/config/global/globalConfig.d.ts +1 -1
  721. package/dist/infra/config/global/globalConfig.d.ts.map +1 -1
  722. package/dist/infra/config/global/globalConfig.js +1 -1
  723. package/dist/infra/config/global/globalConfig.js.map +1 -1
  724. package/dist/infra/config/global/globalConfigAccessors.d.ts +6 -0
  725. package/dist/infra/config/global/globalConfigAccessors.d.ts.map +1 -1
  726. package/dist/infra/config/global/globalConfigAccessors.js +80 -1
  727. package/dist/infra/config/global/globalConfigAccessors.js.map +1 -1
  728. package/dist/infra/config/global/globalConfigCore.d.ts.map +1 -1
  729. package/dist/infra/config/global/globalConfigCore.js +5 -3
  730. package/dist/infra/config/global/globalConfigCore.js.map +1 -1
  731. package/dist/infra/config/global/globalConfigSerializer.d.ts.map +1 -1
  732. package/dist/infra/config/global/globalConfigSerializer.js +9 -1
  733. package/dist/infra/config/global/globalConfigSerializer.js.map +1 -1
  734. package/dist/infra/config/global/index.d.ts +1 -1
  735. package/dist/infra/config/global/index.d.ts.map +1 -1
  736. package/dist/infra/config/global/index.js +1 -1
  737. package/dist/infra/config/global/index.js.map +1 -1
  738. package/dist/infra/config/loaders/resource-resolver.d.ts.map +1 -1
  739. package/dist/infra/config/loaders/resource-resolver.js +22 -7
  740. package/dist/infra/config/loaders/resource-resolver.js.map +1 -1
  741. package/dist/infra/config/loaders/workflowCallContractValidator.d.ts.map +1 -1
  742. package/dist/infra/config/loaders/workflowCallContractValidator.js +11 -4
  743. package/dist/infra/config/loaders/workflowCallContractValidator.js.map +1 -1
  744. package/dist/infra/config/loaders/workflowCallContracts.d.ts.map +1 -1
  745. package/dist/infra/config/loaders/workflowCallContracts.js +5 -0
  746. package/dist/infra/config/loaders/workflowCallContracts.js.map +1 -1
  747. package/dist/infra/config/loaders/workflowCallResolver.d.ts +2 -2
  748. package/dist/infra/config/loaders/workflowCallResolver.d.ts.map +1 -1
  749. package/dist/infra/config/loaders/workflowCallResolver.js +3 -10
  750. package/dist/infra/config/loaders/workflowCallResolver.js.map +1 -1
  751. package/dist/infra/config/loaders/workflowCallableArgResolver.d.ts.map +1 -1
  752. package/dist/infra/config/loaders/workflowCallableArgResolver.js +27 -0
  753. package/dist/infra/config/loaders/workflowCallableArgResolver.js.map +1 -1
  754. package/dist/infra/config/loaders/workflowCallableRuleValidation.d.ts.map +1 -1
  755. package/dist/infra/config/loaders/workflowCallableRuleValidation.js +5 -0
  756. package/dist/infra/config/loaders/workflowCallableRuleValidation.js.map +1 -1
  757. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.d.ts.map +1 -1
  758. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js +12 -1
  759. package/dist/infra/config/loaders/workflowLoopMonitorNormalizer.js.map +1 -1
  760. package/dist/infra/config/loaders/workflowPackageScope.d.ts +1 -0
  761. package/dist/infra/config/loaders/workflowPackageScope.d.ts.map +1 -1
  762. package/dist/infra/config/loaders/workflowPackageScope.js +20 -2
  763. package/dist/infra/config/loaders/workflowPackageScope.js.map +1 -1
  764. package/dist/infra/config/loaders/workflowParser.d.ts.map +1 -1
  765. package/dist/infra/config/loaders/workflowParser.js +17 -7
  766. package/dist/infra/config/loaders/workflowParser.js.map +1 -1
  767. package/dist/infra/config/loaders/workflowPreview.d.ts +3 -0
  768. package/dist/infra/config/loaders/workflowPreview.d.ts.map +1 -1
  769. package/dist/infra/config/loaders/workflowPreview.js +43 -5
  770. package/dist/infra/config/loaders/workflowPreview.js.map +1 -1
  771. package/dist/infra/config/loaders/workflowRuleNormalizer.d.ts +10 -0
  772. package/dist/infra/config/loaders/workflowRuleNormalizer.d.ts.map +1 -1
  773. package/dist/infra/config/loaders/workflowRuleNormalizer.js +70 -1
  774. package/dist/infra/config/loaders/workflowRuleNormalizer.js.map +1 -1
  775. package/dist/infra/config/loaders/workflowStepNormalizer.d.ts.map +1 -1
  776. package/dist/infra/config/loaders/workflowStepNormalizer.js +41 -13
  777. package/dist/infra/config/loaders/workflowStepNormalizer.js.map +1 -1
  778. package/dist/infra/config/project/projectConfig.d.ts.map +1 -1
  779. package/dist/infra/config/project/projectConfig.js +19 -3
  780. package/dist/infra/config/project/projectConfig.js.map +1 -1
  781. package/dist/infra/config/project/sessionStore.d.ts +2 -2
  782. package/dist/infra/config/project/sessionStore.d.ts.map +1 -1
  783. package/dist/infra/config/project/sessionStore.js +12 -4
  784. package/dist/infra/config/project/sessionStore.js.map +1 -1
  785. package/dist/infra/config/providerModelRequirements.d.ts +2 -0
  786. package/dist/infra/config/providerModelRequirements.d.ts.map +1 -0
  787. package/dist/infra/config/providerModelRequirements.js +2 -0
  788. package/dist/infra/config/providerModelRequirements.js.map +1 -0
  789. package/dist/infra/config/resolveConfigValue.d.ts.map +1 -1
  790. package/dist/infra/config/resolveConfigValue.js +1 -0
  791. package/dist/infra/config/resolveConfigValue.js.map +1 -1
  792. package/dist/infra/config/traced/tracedConfigSchema.d.ts.map +1 -1
  793. package/dist/infra/config/traced/tracedConfigSchema.js +6 -0
  794. package/dist/infra/config/traced/tracedConfigSchema.js.map +1 -1
  795. package/dist/infra/git/format.d.ts +1 -0
  796. package/dist/infra/git/format.d.ts.map +1 -1
  797. package/dist/infra/git/format.js +21 -0
  798. package/dist/infra/git/format.js.map +1 -1
  799. package/dist/infra/git/index.d.ts +1 -1
  800. package/dist/infra/git/index.d.ts.map +1 -1
  801. package/dist/infra/git/types.d.ts +16 -4
  802. package/dist/infra/git/types.d.ts.map +1 -1
  803. package/dist/infra/github/GitHubProvider.d.ts +2 -1
  804. package/dist/infra/github/GitHubProvider.d.ts.map +1 -1
  805. package/dist/infra/github/GitHubProvider.js +4 -1
  806. package/dist/infra/github/GitHubProvider.js.map +1 -1
  807. package/dist/infra/github/issue.d.ts +2 -1
  808. package/dist/infra/github/issue.d.ts.map +1 -1
  809. package/dist/infra/github/issue.js +23 -2
  810. package/dist/infra/github/issue.js.map +1 -1
  811. package/dist/infra/gitlab/GitLabProvider.d.ts +2 -1
  812. package/dist/infra/gitlab/GitLabProvider.d.ts.map +1 -1
  813. package/dist/infra/gitlab/GitLabProvider.js +4 -1
  814. package/dist/infra/gitlab/GitLabProvider.js.map +1 -1
  815. package/dist/infra/gitlab/issue.d.ts +2 -1
  816. package/dist/infra/gitlab/issue.d.ts.map +1 -1
  817. package/dist/infra/gitlab/issue.js +30 -2
  818. package/dist/infra/gitlab/issue.js.map +1 -1
  819. package/dist/infra/opencode/OpenCodeStreamHandler.d.ts +4 -0
  820. package/dist/infra/opencode/OpenCodeStreamHandler.d.ts.map +1 -1
  821. package/dist/infra/opencode/OpenCodeStreamHandler.js.map +1 -1
  822. package/dist/infra/opencode/allowedTools.d.ts.map +1 -1
  823. package/dist/infra/opencode/allowedTools.js +0 -1
  824. package/dist/infra/opencode/allowedTools.js.map +1 -1
  825. package/dist/infra/opencode/client.d.ts +5 -1
  826. package/dist/infra/opencode/client.d.ts.map +1 -1
  827. package/dist/infra/opencode/client.js +519 -174
  828. package/dist/infra/opencode/client.js.map +1 -1
  829. package/dist/infra/opencode/index.d.ts +2 -2
  830. package/dist/infra/opencode/index.d.ts.map +1 -1
  831. package/dist/infra/opencode/index.js +1 -1
  832. package/dist/infra/opencode/index.js.map +1 -1
  833. package/dist/infra/opencode/types.d.ts +42 -0
  834. package/dist/infra/opencode/types.d.ts.map +1 -1
  835. package/dist/infra/opencode/types.js +88 -1
  836. package/dist/infra/opencode/types.js.map +1 -1
  837. package/dist/infra/opencode/unavailable-tool-loop.d.ts +25 -0
  838. package/dist/infra/opencode/unavailable-tool-loop.d.ts.map +1 -1
  839. package/dist/infra/opencode/unavailable-tool-loop.js +74 -0
  840. package/dist/infra/opencode/unavailable-tool-loop.js.map +1 -1
  841. package/dist/infra/providers/claude-headless.d.ts.map +1 -1
  842. package/dist/infra/providers/claude-headless.js +0 -2
  843. package/dist/infra/providers/claude-headless.js.map +1 -1
  844. package/dist/infra/providers/claude-terminal.d.ts.map +1 -1
  845. package/dist/infra/providers/claude-terminal.js +0 -2
  846. package/dist/infra/providers/claude-terminal.js.map +1 -1
  847. package/dist/infra/providers/claude.d.ts.map +1 -1
  848. package/dist/infra/providers/claude.js +0 -2
  849. package/dist/infra/providers/claude.js.map +1 -1
  850. package/dist/infra/providers/copilot.d.ts.map +1 -1
  851. package/dist/infra/providers/copilot.js +3 -0
  852. package/dist/infra/providers/copilot.js.map +1 -1
  853. package/dist/infra/providers/cursor.d.ts.map +1 -1
  854. package/dist/infra/providers/cursor.js +3 -0
  855. package/dist/infra/providers/cursor.js.map +1 -1
  856. package/dist/infra/providers/imageAttachmentPrompt.d.ts +0 -1
  857. package/dist/infra/providers/imageAttachmentPrompt.d.ts.map +1 -1
  858. package/dist/infra/providers/imageAttachmentPrompt.js +19 -2
  859. package/dist/infra/providers/imageAttachmentPrompt.js.map +1 -1
  860. package/dist/infra/providers/imageAttachments.d.ts +3 -0
  861. package/dist/infra/providers/imageAttachments.d.ts.map +1 -0
  862. package/dist/infra/providers/imageAttachments.js +47 -0
  863. package/dist/infra/providers/imageAttachments.js.map +1 -0
  864. package/dist/infra/providers/index.d.ts +1 -1
  865. package/dist/infra/providers/index.d.ts.map +1 -1
  866. package/dist/infra/providers/index.js.map +1 -1
  867. package/dist/infra/providers/mock.d.ts.map +1 -1
  868. package/dist/infra/providers/mock.js +5 -0
  869. package/dist/infra/providers/mock.js.map +1 -1
  870. package/dist/infra/providers/opencode.d.ts +3 -2
  871. package/dist/infra/providers/opencode.d.ts.map +1 -1
  872. package/dist/infra/providers/opencode.js +31 -6
  873. package/dist/infra/providers/opencode.js.map +1 -1
  874. package/dist/infra/providers/types.d.ts +8 -0
  875. package/dist/infra/providers/types.d.ts.map +1 -1
  876. package/dist/infra/task/clone-exec.d.ts.map +1 -1
  877. package/dist/infra/task/clone-exec.js +31 -0
  878. package/dist/infra/task/clone-exec.js.map +1 -1
  879. package/dist/infra/task/enqueueService.d.ts +115 -0
  880. package/dist/infra/task/enqueueService.d.ts.map +1 -0
  881. package/dist/infra/task/enqueueService.js +191 -0
  882. package/dist/infra/task/enqueueService.js.map +1 -0
  883. package/dist/infra/task/enqueuedTaskFile.d.ts +6 -0
  884. package/dist/infra/task/enqueuedTaskFile.d.ts.map +1 -0
  885. package/dist/infra/task/enqueuedTaskFile.js +55 -0
  886. package/dist/infra/task/enqueuedTaskFile.js.map +1 -0
  887. package/dist/infra/task/issueTask.d.ts +20 -0
  888. package/dist/infra/task/issueTask.d.ts.map +1 -0
  889. package/dist/{features/tasks/add → infra/task}/issueTask.js +61 -43
  890. package/dist/infra/task/issueTask.js.map +1 -0
  891. package/dist/infra/task/listSerializer.d.ts +1 -0
  892. package/dist/infra/task/listSerializer.d.ts.map +1 -1
  893. package/dist/infra/task/listSerializer.js +1 -0
  894. package/dist/infra/task/listSerializer.js.map +1 -1
  895. package/dist/infra/task/mapper.d.ts.map +1 -1
  896. package/dist/infra/task/mapper.js +1 -0
  897. package/dist/infra/task/mapper.js.map +1 -1
  898. package/dist/infra/task/taskExecutionSchemas.d.ts +3 -0
  899. package/dist/infra/task/taskExecutionSchemas.d.ts.map +1 -1
  900. package/dist/infra/task/taskExecutionSchemas.js +4 -2
  901. package/dist/infra/task/taskExecutionSchemas.js.map +1 -1
  902. package/dist/infra/task/taskRecordSchemas.d.ts +2 -0
  903. package/dist/infra/task/taskRecordSchemas.d.ts.map +1 -1
  904. package/dist/infra/workflow/system/DefaultSystemStepServices.d.ts.map +1 -1
  905. package/dist/infra/workflow/system/DefaultSystemStepServices.js +7 -7
  906. package/dist/infra/workflow/system/DefaultSystemStepServices.js.map +1 -1
  907. package/dist/infra/workflow/system/system-enqueue-effect.d.ts.map +1 -1
  908. package/dist/infra/workflow/system/system-enqueue-effect.js +78 -20
  909. package/dist/infra/workflow/system/system-enqueue-effect.js.map +1 -1
  910. package/dist/infra/workflow/system/system-git-context.d.ts +6 -6
  911. package/dist/infra/workflow/system/system-git-context.d.ts.map +1 -1
  912. package/dist/infra/workflow/system/system-git-context.js +13 -13
  913. package/dist/infra/workflow/system/system-git-context.js.map +1 -1
  914. package/dist/infra/workflow/system/system-issue-input-resolver.d.ts +3 -3
  915. package/dist/infra/workflow/system/system-issue-input-resolver.d.ts.map +1 -1
  916. package/dist/infra/workflow/system/system-issue-input-resolver.js +8 -8
  917. package/dist/infra/workflow/system/system-issue-input-resolver.js.map +1 -1
  918. package/dist/infra/workflow/system/system-pr-effects.d.ts.map +1 -1
  919. package/dist/infra/workflow/system/system-pr-effects.js +6 -3
  920. package/dist/infra/workflow/system/system-pr-effects.js.map +1 -1
  921. package/dist/infra/workflow/system/system-pr-input-resolver.d.ts +3 -3
  922. package/dist/infra/workflow/system/system-pr-input-resolver.d.ts.map +1 -1
  923. package/dist/infra/workflow/system/system-pr-input-resolver.js +8 -8
  924. package/dist/infra/workflow/system/system-pr-input-resolver.js.map +1 -1
  925. package/dist/infra/workflow/system/system-sync-effects.js +2 -2
  926. package/dist/infra/workflow/system/system-sync-effects.js.map +1 -1
  927. package/dist/shared/package-info.d.ts +2 -0
  928. package/dist/shared/package-info.d.ts.map +1 -0
  929. package/dist/shared/package-info.js +5 -0
  930. package/dist/shared/package-info.js.map +1 -0
  931. package/dist/shared/prompts/en/exec_assistant_instruct.md +2 -0
  932. package/dist/shared/prompts/en/finding_manager_instruction.md +9 -2
  933. package/dist/shared/prompts/en/opencode_review_agent_prompt.md +20 -23
  934. package/dist/shared/prompts/en/parts/finding_contract_instruction.md +25 -0
  935. package/dist/shared/prompts/en/parts/git_rules.md +5 -0
  936. package/dist/shared/prompts/{ja → en/parts}/structured_json_schema_instruction.md +2 -0
  937. package/dist/shared/prompts/en/{structured_json_step_instruction.md → parts/structured_json_step_instruction.md} +2 -0
  938. package/dist/shared/prompts/ja/exec_assistant_instruct.md +2 -0
  939. package/dist/shared/prompts/ja/finding_manager_instruction.md +9 -2
  940. package/dist/shared/prompts/ja/opencode_review_agent_prompt.md +20 -23
  941. package/dist/shared/prompts/ja/parts/finding_contract_instruction.md +25 -0
  942. package/dist/shared/prompts/ja/parts/git_rules.md +5 -0
  943. package/dist/shared/prompts/{en → ja/parts}/structured_json_schema_instruction.md +4 -2
  944. package/dist/shared/prompts/ja/{structured_json_step_instruction.md → parts/structured_json_step_instruction.md} +4 -2
  945. package/dist/shared/types/image-attachments.d.ts +10 -0
  946. package/dist/shared/types/image-attachments.d.ts.map +1 -0
  947. package/dist/shared/types/image-attachments.js +2 -0
  948. package/dist/shared/types/image-attachments.js.map +1 -0
  949. package/dist/shared/utils/entrypoint.d.ts +2 -0
  950. package/dist/shared/utils/entrypoint.d.ts.map +1 -0
  951. package/dist/shared/utils/entrypoint.js +15 -0
  952. package/dist/shared/utils/entrypoint.js.map +1 -0
  953. package/dist/shared/utils/imageAttachmentReferences.d.ts +7 -0
  954. package/dist/shared/utils/imageAttachmentReferences.d.ts.map +1 -0
  955. package/dist/shared/utils/imageAttachmentReferences.js +64 -0
  956. package/dist/shared/utils/imageAttachmentReferences.js.map +1 -0
  957. package/dist/shared/utils/index.d.ts +1 -0
  958. package/dist/shared/utils/index.d.ts.map +1 -1
  959. package/dist/shared/utils/index.js +1 -0
  960. package/dist/shared/utils/index.js.map +1 -1
  961. package/dist/shared/utils/safeExternalErrorMessage.d.ts +2 -0
  962. package/dist/shared/utils/safeExternalErrorMessage.d.ts.map +1 -0
  963. package/dist/shared/utils/safeExternalErrorMessage.js +22 -0
  964. package/dist/shared/utils/safeExternalErrorMessage.js.map +1 -0
  965. package/package.json +32 -13
  966. package/builtins/en/facets/instructions/review-pure.md +0 -9
  967. package/builtins/en/facets/personas/pure-reviewer.md +0 -22
  968. package/builtins/ja/facets/instructions/review-pure.md +0 -9
  969. package/builtins/ja/facets/personas/pure-reviewer.md +0 -22
  970. package/dist/core/workflow/claude-effort-compatibility.d.ts +0 -3
  971. package/dist/core/workflow/claude-effort-compatibility.d.ts.map +0 -1
  972. package/dist/core/workflow/claude-effort-compatibility.js +0 -28
  973. package/dist/core/workflow/claude-effort-compatibility.js.map +0 -1
  974. package/dist/core/workflow/provider-model-compatibility.d.ts +0 -6
  975. package/dist/core/workflow/provider-model-compatibility.d.ts.map +0 -1
  976. package/dist/core/workflow/provider-model-compatibility.js +0 -20
  977. package/dist/core/workflow/provider-model-compatibility.js.map +0 -1
  978. package/dist/features/tasks/add/issueTask.d.ts +0 -7
  979. package/dist/features/tasks/add/issueTask.d.ts.map +0 -1
  980. package/dist/features/tasks/add/issueTask.js.map +0 -1
  981. package/dist/features/tasks/list/retryTaskSpecAttachments.d.ts.map +0 -1
  982. package/dist/features/tasks/list/retryTaskSpecAttachments.js.map +0 -1
  983. package/dist/infra/config/providerModelCompatibility.d.ts +0 -2
  984. package/dist/infra/config/providerModelCompatibility.d.ts.map +0 -1
  985. package/dist/infra/config/providerModelCompatibility.js +0 -2
  986. package/dist/infra/config/providerModelCompatibility.js.map +0 -1
  987. /package/dist/shared/prompts/en/{source_context_section_guidance.md → parts/source_context_section_guidance.md} +0 -0
  988. /package/dist/shared/prompts/en/{source_context_system_guard.md → parts/source_context_system_guard.md} +0 -0
  989. /package/dist/shared/prompts/ja/{source_context_section_guidance.md → parts/source_context_section_guidance.md} +0 -0
  990. /package/dist/shared/prompts/ja/{source_context_system_guard.md → parts/source_context_system_guard.md} +0 -0
@@ -90,6 +90,8 @@ Accessible names, roles, and states are UI contracts consumed by assistive techn
90
90
  | A new interactive element has no accessible name | REJECT |
91
91
  | Checked, expanded, disabled, or similar state is not exposed to assistive technologies | Warning |
92
92
  | An existing accessible name is changed without being required by the task | REJECT |
93
+ | A dynamic accessible name is assembled by concatenating fragments without checking the final sentence for meaning and naturalness | REJECT |
94
+ | Distinct elements in the same interaction context cannot be identified by name or programmatic context (row/group association, etc.) | REJECT. Including the target name in the accessible name is a strong way to identify it |
93
95
  | Existing accessible names are preserved while missing role/state is added | OK |
94
96
  | The reason and impact scope for changing an existing contract are explicit | OK |
95
97
 
@@ -139,6 +141,7 @@ State should hold canonical values such as user input, server data, and temporar
139
141
  | Multiple state fields have invariants that require constant synchronization | REJECT |
140
142
  | Display labels, counts, totals, all-selected flags, sorted results, or grouped results are kept as canonical state | REJECT |
141
143
  | API sending, persistence, or diffing depends on derived state instead of canonical state | REJECT |
144
+ | A display-position sequence number after filtering, paging, or grouping is treated as the ordering of the source data | REJECT. Define which collection's order the label represents and derive it from that collection |
142
145
  | Only canonical state is stored, and display, aggregation, and decisions are derived via selectors, render logic, or useMemo | OK |
143
146
  | Derived values required by external contracts are generated from canonical state at send or persistence boundaries | OK |
144
147
 
@@ -255,6 +258,7 @@ Fetch data from screen-specific API endpoints. Do not assemble screens by repurp
255
258
  | Reusing list API response for detail screen | REJECT |
256
259
  | Display unit and API fetch unit mismatch | REJECT |
257
260
  | Fetching all records just for a decision (should use aggregation API) | REJECT |
261
+ | A concept the UI needs is missing from the response, and a semantically different body/description field is implicitly repurposed as a heading | REJECT. Define the summary/fallback as an explicit display contract, or add a dedicated field |
258
262
  | Each screen has dedicated fetch endpoints returning only needed data | OK |
259
263
 
260
264
  ```tsx
@@ -284,7 +288,7 @@ Communication is scoped to the active tab/screen. Do not prefetch for other tabs
284
288
 
285
289
  ## Shared Components and Abstraction
286
290
 
287
- Common UI patterns should be shared components. Copy-paste of inline styles is prohibited.
291
+ Common UI patterns should be shared components. Copy-paste of inline styles is prohibited. UI that represents the same role or semantic state (placeholder, disabled, unconfirmed, etc.) must align copy, styling, and screen-reader output within the same shared component or an explicit design contract; presentation may vary with display context (hierarchy, density, theme), but the meaning and interaction contract must hold.
288
292
 
289
293
  ```tsx
290
294
  // ❌ WRONG - Copy-pasted inline styles
@@ -0,0 +1,104 @@
1
+ # Implementation Semantics
2
+
3
+ Knowledge for judging the micro-level design flaws that remain even when every test passes. The targets are data structure choice, state normalization, naming-meaning alignment, and fail-fast at boundaries. Each is a question of whether the meaning is correct, not whether the code runs, which is why tests are structurally bad at catching them.
4
+
5
+ ## Meaning-Driven Data Structure Choice
6
+
7
+ Choose collection and dictionary types that match the meaning of the data. In particular, implementing a dictionary keyed by externally supplied strings as a plain object lets inherited prototype properties leak in.
8
+
9
+ | Criterion | Verdict |
10
+ |-----------|---------|
11
+ | A dictionary keyed by external input (IDs, user input) is implemented as `Record` / plain object and membership is checked with `in` or `obj[key]` | REJECT |
12
+ | Behavior can change for keys like `__proto__`, `constructor`, or `toString` | REJECT |
13
+ | Dynamic-key dictionaries use `Map`, or block the inheritance chain via `Object.create(null)` / `Object.hasOwn` | OK |
14
+ | A plain object is used for a fixed, finite key set (e.g. a config object) | OK |
15
+
16
+ Never flag a guarded `Record` as "should be a `Map`". Blocking the inheritance chain via `Object.hasOwn` / `Object.create(null)` is a complete mitigation, and continuing to use `Record` on top of it is not a design flaw. In particular, when a published contract (a frozen type definition) mandates `Record`, guarding is everything the implementation can do. The only reportable finding is a remaining unguarded access, and it must be cited with its location.
17
+
18
+ ```typescript
19
+ // REJECT - passing the ID "toString" reports it as present despite never being registered
20
+ const reservations: Record<string, Reservation> = {};
21
+ if (reservationId in reservations) { /* also matches inherited properties */ }
22
+
23
+ // OK - Map has no inherited-property leakage
24
+ const reservations = new Map<string, Reservation>();
25
+ if (reservations.has(reservationId)) { /* matches registered keys only */ }
26
+ ```
27
+
28
+ ## Single Source of Truth for Derived Values
29
+
30
+ Do not maintain a value in parallel when it can be computed from another. The moment it is duplicated, the two can drift, and the question of which one is authoritative is born with it.
31
+
32
+ | Criterion | Verdict |
33
+ |-----------|---------|
34
+ | A derivable value (total, count, version) is also incremented/decremented as a separate variable | REJECT |
35
+ | Detail records and an aggregate are updated in parallel and can diverge on invalid input | REJECT |
36
+ | Derived values are computed where used, or only the source is updated and the aggregate is obtained via a function | OK |
37
+ | When cached for performance, updates flow through a single path and divergence is detectable | OK |
38
+
39
+ ```typescript
40
+ // REJECT - version is derivable from history length but tracked separately; drift corrupts stock math
41
+ class EventStore {
42
+ private version = 0;
43
+ append(e: Event) { this.events.push(e); this.version++; }
44
+ }
45
+
46
+ // OK - hold only the source and derive the version
47
+ class EventStore {
48
+ get version() { return this.events.length; }
49
+ append(e: Event) { this.events.push(e); }
50
+ }
51
+ ```
52
+
53
+ ## Naming-Meaning Alignment
54
+
55
+ A name states the meaning of the value it actually holds. A variable whose name and content diverge plants a false assumption in the reader and breeds the next bug.
56
+
57
+ | Criterion | Verdict |
58
+ |-----------|---------|
59
+ | The meaning implied by a variable/parameter name differs from the value actually stored (e.g. an ID stored in something named `qty`) | REJECT |
60
+ | Types match but the unit, coordinate system, or normalization state is unreadable from the name and gets mixed up | REJECT |
61
+ | The meaning, unit, and state of the content are unambiguously readable from the name | OK |
62
+
63
+ ```typescript
64
+ // REJECT - named qtyShip, but the value is actually a reservation ID
65
+ function applyShipped(qtyShip: string) { delete this.reservations[qtyShip]; }
66
+
67
+ // OK - the name matches the meaning of the content
68
+ function applyShipped(reservationId: string) { delete this.reservations[reservationId]; }
69
+ ```
70
+
71
+ ## Fail-Fast at Boundaries
72
+
73
+ Fail immediately at the boundary on impossible states and contract-violating input instead of silently ignoring them. Swallowing them lets the inconsistency propagate downstream before it surfaces, making the cause hard to trace.
74
+
75
+ | Criterion | Verdict |
76
+ |-----------|---------|
77
+ | Input with broken preconditions (an event for a nonexistent target, ordering violations) is skipped without a word | REJECT |
78
+ | Exceptions are swallowed and a normal value is returned, so callers cannot detect the failure | REJECT |
79
+ | Contract violations surface immediately as explicit errors, exceptions, or Result types | OK |
80
+ | When ignoring is the spec, that decision is documented in a comment or the spec | OK |
81
+
82
+ ```typescript
83
+ // REJECT - silently ignores events for products created later; corrupted event logs go undetected
84
+ apply(event: StockEvent) {
85
+ const product = this.products[event.productId];
86
+ if (!product) return;
87
+ }
88
+
89
+ // OK - fail immediately on impossible states to detect corruption early
90
+ apply(event: StockEvent) {
91
+ const product = this.products.get(event.productId);
92
+ if (!product) throw new Error(`event for unknown product: ${event.productId}`);
93
+ }
94
+ ```
95
+
96
+ ## Internal State Reference Leaks
97
+
98
+ When a store or read model returns references to its internal state as-is, caller-side mutations propagate into the persisted data. Return defensive copies or immutable views.
99
+
100
+ | Criterion | Verdict |
101
+ |-----------|---------|
102
+ | The collection is copied but the stored objects themselves are shared (shallow copy only) | REJECT |
103
+ | Mutating an obtained reference rewrites the persisted state | REJECT |
104
+ | Internal state is protected via defensive copies, freezing, or read-only views | OK |
@@ -232,6 +232,7 @@ Prevent data access across tenant boundaries. Authorization (who can operate) an
232
232
  | Write operations use client-provided tenant ID | REJECT |
233
233
  | Endpoint using tenant resolver has no authorization control | REJECT |
234
234
  | Some paths in role-based branching don't account for tenant resolution | REJECT |
235
+ | Authentication mechanism coverage does not extend to the endpoint's expected caller (role, token type) | REJECT |
235
236
 
236
237
  ### Read-Write Consistency
237
238
 
@@ -277,6 +278,8 @@ fun getSettings(): SettingsResponse {
277
278
 
278
279
  For endpoints with role-based branching, verify that tenant resolution succeeds on all paths.
279
280
 
281
+ Watch for the reverse pattern as well. When adding an endpoint dedicated to a specific role, extend the coverage of the mechanism that authenticates that role (filters, etc.) and add role-required authorization in the same change. Outside the authentication mechanism's coverage the expected caller is never authenticated in the first place, and without authorization, unexpected roles get through.
282
+
280
283
  ## OWASP Top 10 Checklist
281
284
 
282
285
  | Category | Check Items |
@@ -169,10 +169,18 @@ Provider errors propagate through: `AgentResponse.error` → session log → con
169
169
 
170
170
  ## Session Management
171
171
 
172
- Agent sessions are stored per-cwd. Session resume is skipped during worktree/clone execution.
172
+ Agent sessions are stored per-cwd and per-provider. Session resume is skipped during worktree/clone execution.
173
+
174
+ When a normal Phase 1 response merely omits `sessionId`, that alone is not a reason to discard the existing session. Paths that are allowed to continue the existing resume context should preserve the old sessionId.
175
+
176
+ However, when a retry or fallback explicitly runs as a new session and succeeds, a missing `sessionId` must not continue using the old resumed session. The storage layer must be told that the new run produced no sessionId, so the old session is cleared or isolated.
177
+
178
+ The Report Phase is Phase 2 and reads Phase 1 outputs. Its execution contract is readonly and tool-free. Report retry/fallback must preserve `permissionMode: readonly`, empty tool permission, and provider capability overrides such as turn limits.
173
179
 
174
180
  | Criteria | Judgment |
175
181
  |----------|----------|
176
182
  | Session resuming when `cwd !== projectCwd` | REJECT (cross-project contamination) |
177
183
  | Session key missing provider identifier | REJECT (cross-provider contamination) |
178
- | Session broken between phases | REJECT (context loss) |
184
+ | Session broken between phases that should continue context | REJECT (context loss) |
185
+ | Old resumed session remains after successful new-session retry | REJECT (unintended resume) |
186
+ | Report retry/fallback drops readonly mode, tool-free execution, or capability overrides | REJECT |
@@ -30,6 +30,20 @@ const result = await service.getUser('id')
30
30
  expect(result).toEqual(user)
31
31
  ```
32
32
 
33
+ ## Test Double Contract Fidelity
34
+
35
+ When replacing builders, runners, adapters, providers, or similar dependencies with test doubles, match the production semantic contract, not only the TypeScript shape. A test double may simplify only responsibilities the target test does not observe.
36
+
37
+ | Aspect | Check |
38
+ |--------|-------|
39
+ | Return value | Required values, optional values, missing values, and partial-success shapes match production |
40
+ | Input propagation | Overrides, context, options, and other branch-relevant inputs can be received and verified |
41
+ | Constraints | Permissions, capabilities, tool restrictions, and limits propagate with the same meaning as production |
42
+ | Side effects | Session updates, event emission, persistence, and invalidation can be observed |
43
+ | Simplification scope | Test names and expectations do not claim behavior the test double cannot prove |
44
+
45
+ If a test double omits part of the production contract, the test should verify only behavior that does not depend on that omission. In tests for permission propagation, state transitions, or missing-value handling, omitted fields are themselves a common source of bugs.
46
+
33
47
  ## Boundary Value Analysis
34
48
 
35
49
  Boundary values and equivalence partitioning are fundamental unit testing techniques.
@@ -14,6 +14,11 @@
14
14
  | Context fit | ✅ | - |
15
15
  | Scope | ✅ | - |
16
16
 
17
+ ## Non-Finding Concerns
18
+ | Item | Location | Classification | Evidence for Not Making a Finding |
19
+ |------|----------|----------------|-----------------------------------|
20
+ | {Concern, or "none"} | `src/file.ts:42` | false_positive / overreach / out_of_scope / no_issue_after_verification | {Evidence} |
21
+
17
22
  ## Current Iteration Findings (new)
18
23
  | # | finding_id | family_tag | Category | Location | Issue | Fix Suggestion |
19
24
  |---|------------|------------|----------|----------|-------|----------------|
@@ -34,11 +39,16 @@
34
39
  |---|------------|------------|--------------------------|---------------------|-------|----------------|
35
40
  | 1 | AI-REOPENED-src-file-L55 | hallucination | `Previously fixed at src/file.ts:10` | `Recurred at src/file.ts:55` | Issue description | Fix approach |
36
41
 
42
+ ## Re-scan Evidence (required from the second review onward)
43
+ | Policy/Knowledge section checked | Evidence in the diff (`file:line` or "none") |
44
+ |----------------------------------|----------------------------------------------|
45
+ | {section name} | {evidence} |
46
+
37
47
  ## Rejection Gate
38
48
  - REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
39
49
  - Findings without `finding_id` are invalid
40
50
  ```
41
51
 
42
52
  **Cognitive load reduction rules:**
43
- - No issues → Summary sentence + checklist + empty finding sections (10 lines or fewer)
53
+ - No issues → Summary sentence + checklist + Re-scan Evidence (from the second iteration onward) + Non-Finding Concerns when needed
44
54
  - Issues found → include table rows only for impacted sections (30 lines or fewer)
@@ -41,11 +41,16 @@ Scope: "In-scope" (fixable in this change) / "Out-of-scope" (existing issue, non
41
41
  - Tests: {Verified target, what was checked, and observed result; or state that it was unverified}
42
42
  - Functional check: {Verified target, what was checked, and observed result; or state that it was unverified}
43
43
 
44
+ ## Re-scan Evidence (required from the second review onward)
45
+ | Policy/Knowledge section checked | Evidence in the diff (`file:line` or "none") |
46
+ |----------------------------------|----------------------------------------------|
47
+ | {section name} | {evidence} |
48
+
44
49
  ## Rejection Gate
45
50
  - REJECT is valid only when at least one finding exists in `new`, `persists`, or `reopened`
46
51
  - Findings without `finding_id` are invalid
47
52
  ```
48
53
 
49
54
  **Cognitive load reduction rules:**
50
- - APPROVE → Summary only (5 lines or fewer)
55
+ - APPROVE → Summary + Verification Evidence + Re-scan Evidence (from the second iteration onward). Omit everything else
51
56
  - REJECT → Include only relevant finding rows (30 lines or fewer)
@@ -13,6 +13,11 @@ Fill this when the diff adds or changes IDs, names, metadata, config, environmen
13
13
  |--------------|----------------------|--------------------------|---------------|----------|---------------------------------|
14
14
  | {normal entry / derived condition / validation / evaluation / output / re-injection, etc.} | {Requirement} | `src/file.ts:42` | `src/file.test.ts:10` | ✅/❌/⚠️ | {none / evidence} |
15
15
 
16
+ ## Non-Finding Concerns
17
+ | Item | Location | Classification | Evidence for Not Making a Finding |
18
+ |------|----------|----------------|-----------------------------------|
19
+ | {Concern, or "none"} | `src/file.ts:42` | false_positive / overreach / out_of_scope / no_issue_after_verification | {Evidence} |
20
+
16
21
  ## Current Iteration Findings (new)
17
22
  | # | finding_id | family_tag | Severity | Location | Issue | Impact | Fix Suggestion |
18
23
  |---|------------|------------|----------|----------|-------|--------|----------------|
@@ -38,11 +43,16 @@ Fill this when the diff adds or changes IDs, names, metadata, config, environmen
38
43
  - Build: {Result, or state unverified}
39
44
  - Tests: {Result, or state unverified}
40
45
 
46
+ ## Re-scan Evidence (required from the second review onward)
47
+ | Policy/Knowledge section checked | Evidence in the diff (`file:line` or "none") |
48
+ |----------------------------------|----------------------------------------------|
49
+ | {section name} | {evidence} |
50
+
41
51
  ## Rejection Gate
42
52
  - REJECT only when at least one finding exists in `new`, `persists`, or `reopened`
43
53
  - Findings without `finding_id` are invalid
44
54
  ```
45
55
 
46
56
  **Cognitive load reduction rules:**
47
- - APPROVE: Summary plus Contract Entry Check when needed (10 lines or fewer total)
57
+ - APPROVE: Summary plus Verification Evidence, Contract Entry Check, Re-scan Evidence (from the second iteration onward), and Non-Finding Concerns when needed
48
58
  - REJECT: Include only relevant finding rows (30 lines or fewer)
@@ -40,6 +40,20 @@
40
40
  "conflictId": "C-012345ABCDEF",
41
41
  "evidence": "Evidence that the conflict is adjudicated"
42
42
  }
43
+ ],
44
+ "waivedFindings": [
45
+ {
46
+ "findingId": "F-0003",
47
+ "reason": "The frozen public contract mandates Record and the hasOwn guard is the complete mitigation",
48
+ "evidence": "src/types.ts:94, src/domain.ts:82"
49
+ }
50
+ ],
51
+ "disputeNotes": [
52
+ {
53
+ "findingId": "F-0004",
54
+ "reason": "The coder claimed a spec constraint but the evidence does not point at the location; rejected",
55
+ "evidence": "src/store.ts:10"
56
+ }
43
57
  ]
44
58
  }
45
59
  ```
@@ -0,0 +1,28 @@
1
+ ```markdown
2
+ # Implementation Semantics Review
3
+
4
+ ## Result: APPROVE / REJECT
5
+
6
+ ## Summary
7
+ {1-2 sentence summary of the review outcome}
8
+
9
+ ## Observed Findings
10
+ | # | family_tag | Severity | Location | Problem | Breaking Condition | Suggested Fix |
11
+ |---|------------|----------|----------|---------|--------------------|---------------|
12
+ | 1 | data-structure | High / Medium / Low | `src/file.ts:42` | {problem} | {which input or state breaks it} | {suggested fix} |
13
+
14
+ ## Verification Evidence
15
+ - Diff check: {what was verified}
16
+ - Citation check: {confirmation that every cited file:line was verified against the actual code}
17
+
18
+ ## REJECT Criteria
19
+ - REJECT only when at least one blocking finding exists
20
+ ```
21
+
22
+ **Cognitive-load rules:**
23
+ - APPROVE -> summary only (within 5 lines)
24
+ - REJECT -> only the relevant findings in the table (within 30 lines)
25
+
26
+ **Cognitive-load rules:**
27
+ - APPROVE -> summary only (within 5 lines)
28
+ - REJECT -> only the relevant findings in the table (within 30 lines)
@@ -0,0 +1,50 @@
1
+ ```markdown
2
+ # Implementation Semantics Review
3
+
4
+ ## Verdict: APPROVE / REJECT
5
+
6
+ ## Summary
7
+ {1-2 sentence summary of the review result}
8
+
9
+ ## Non-Finding Concerns
10
+ | Item | Location | Category | Reason not raised as a finding |
11
+ |------|----------|----------|--------------------------------|
12
+ | {concern, or "none"} | `src/file.ts:42` | false_positive / overreach / out_of_scope / no_issue_after_verification | {reason} |
13
+
14
+ ## New Findings (new)
15
+ | # | finding_id | family_tag | Severity | Location | Problem | Breaking condition | Fix |
16
+ |---|------------|------------|----------|----------|---------|--------------------|-----|
17
+ | 1 | SEM-NEW-src-file-L42 | data-structure | High / Medium / Low | `src/file.ts:42` | {problem} | {what input/state breaks it} | {fix} |
18
+
19
+ ## Persisting Findings (persists)
20
+ | # | finding_id | family_tag | Previous evidence | Current evidence | Problem | Fix |
21
+ |---|------------|------------|-------------------|------------------|---------|-----|
22
+ | 1 | SEM-PERSIST-src-file-L77 | derived-state | `src/file.ts:77` | `src/file.ts:77` | {unresolved problem} | {fix} |
23
+
24
+ ## Resolved (resolved)
25
+ | finding_id | Original acceptance condition | Resolution evidence |
26
+ |------------|------------------------------|---------------------|
27
+ | SEM-RESOLVED-src-file-L10 | {acceptance condition of the original finding} | resolved at `src/file.ts:10` |
28
+
29
+ ## Reopened Findings (reopened)
30
+ | # | finding_id | family_tag | Resolution evidence (previous) | Recurrence evidence | Problem | Fix |
31
+ |---|------------|------------|-------------------------------|---------------------|---------|-----|
32
+ | 1 | SEM-REOPENED-src-file-L55 | fail-fast | `previous: src/file.ts:10` | `src/file.ts:55` | {recurred problem} | {fix} |
33
+
34
+ ## Verification Evidence
35
+ - Diff check: {what was checked}
36
+ - Citation existence check: {confirmation that every cited file:line was verified against real code}
37
+
38
+ ## Re-scan Evidence (required from the second review onward)
39
+ | Policy/Knowledge chapter checked | Diff-side evidence (`file:line` or "none applicable") |
40
+ |----------------------------------|------------------------------------------------------|
41
+ | {chapter} | {evidence} |
42
+
43
+ ## Rejection Gate
44
+ - REJECT only when there is at least one `new`, `persists`, or `reopened` finding
45
+ - Findings without a `finding_id` are invalid
46
+ ```
47
+
48
+ **Cognitive load reduction rules:**
49
+ - APPROVE → Summary + Verification Evidence + Re-scan Evidence (from the second iteration onward), plus Non-Finding Concerns only when needed
50
+ - REJECT → List only the applicable findings in tables (30 lines or fewer)
@@ -1,19 +1,25 @@
1
1
  ```markdown
2
- # Pure Review
2
+ # Merge Readiness Review
3
3
 
4
4
  ## Result: APPROVE / REJECT
5
5
 
6
6
  ## Summary
7
- {Summarize in 1-2 sentences whether this change is mergeable quality. If REJECT, mention the largest blocker first}
7
+ {Summarize in 1-2 sentences whether this change is quality-ready for a codebase that must be maintained going forward. If REJECT, mention the largest blocker first}
8
8
 
9
- ## Pure Review Check
9
+ ## Maintainability-Aware Merge Quality Check
10
10
  | # | Area | Status | Evidence (file:line / test / execution evidence) | Comment |
11
11
  |---|------|--------|--------------------------------------------------|---------|
12
12
  | 1 | Requirement fulfillment | Satisfied / Unmet / Unverified | `src/file.ts:42` | {Notes} |
13
13
  | 2 | Existing contract and existing-flow impact | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
14
- | 3 | Tests and verification | Sufficient / Insufficient / Unverified | `npm test` | {Notes} |
14
+ | 3 | Tests and verification | Sufficient / Insufficient / Unverified | `test evidence` | {Notes} |
15
15
  | 4 | Out-of-scope changes and scope creep | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
16
- | 5 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
16
+ | 5 | Maintainability and future changeability | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
17
+ | 6 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
18
+
19
+ ## Cross-Audit Evidence
20
+ | # | Change Category | Extracted Item | Search Terms / Files Checked | Judgment | Comment |
21
+ |---|-----------------|----------------|------------------------------|----------|---------|
22
+ | 1 | ID / config / output contract / type / helper / adapter / entrypoint | {item} | `{search term}` / `file:line` | No issue / Issue found / Unverified | {Notes} |
17
23
 
18
24
  ## Requirements Cross-Reference
19
25
  | # | Requirement (from task) | Status | Evidence (file:line) | Comment |
@@ -28,7 +34,7 @@
28
34
  ## Observed Findings
29
35
  | # | family_tag | Category | Severity | Location | Issue | Fix Suggestion |
30
36
  |---|------------|----------|----------|----------|-------|----------------|
31
- | 1 | mergeability | Regression / Requirement gap / Missing tests / Contract break / Scope creep | high / medium / low | `src/file.ts:42` | Issue description | Fix suggestion |
37
+ | 1 | maintainability-readiness | Regression / Requirement gap / Missing tests / Contract break / Maintainability degradation / Scope creep | high / medium / low | `src/file.ts:42` | Issue description | Fix suggestion |
32
38
 
33
39
  ## Verification Evidence
34
40
  - Build: {Verified target, what was checked, and observed result; or state that it was unverified}
@@ -37,9 +43,9 @@
37
43
 
38
44
  ## Rejection Gate
39
45
  - REJECT if at least one merge-blocking finding is observed
40
- - Unverified areas should block merge only when they affect mergeability
46
+ - Unverified areas should block merge only when they affect maintainability-aware merge quality
41
47
  ```
42
48
 
43
49
  **Cognitive load reduction rules:**
44
- - APPROVE: Summary + Pure Review Check only (10 lines or fewer)
50
+ - APPROVE: Summary + Maintainability-Aware Merge Quality Check + Cross-Audit Evidence only (15 lines or fewer)
45
51
  - REJECT: Prioritize blocker findings (40 lines or fewer)
@@ -1,19 +1,25 @@
1
1
  ```markdown
2
- # Pure Review
2
+ # Merge Readiness Review
3
3
 
4
4
  ## Result: APPROVE / REJECT
5
5
 
6
6
  ## Summary
7
- {Summarize in 1-2 sentences whether this change is mergeable quality. If REJECT, mention the largest blocker first}
7
+ {Summarize in 1-2 sentences whether this change is quality-ready for a codebase that must be maintained going forward. If REJECT, mention the largest blocker first}
8
8
 
9
- ## Pure Review Check
9
+ ## Maintainability-Aware Merge Quality Check
10
10
  | # | Area | Status | Evidence (file:line / test / execution evidence) | Comment |
11
11
  |---|------|--------|--------------------------------------------------|---------|
12
12
  | 1 | Requirement fulfillment | Satisfied / Unmet / Unverified | `src/file.ts:42` | {Notes} |
13
13
  | 2 | Existing contract and existing-flow impact | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
14
- | 3 | Tests and verification | Sufficient / Insufficient / Unverified | `npm test` | {Notes} |
14
+ | 3 | Tests and verification | Sufficient / Insufficient / Unverified | `test evidence` | {Notes} |
15
15
  | 4 | Out-of-scope changes and scope creep | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
16
- | 5 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
16
+ | 5 | Maintainability and future changeability | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
17
+ | 6 | Obvious security, data-protection, or operational risk | No issue / Issue found / Unverified | `src/file.ts:42` | {Notes} |
18
+
19
+ ## Cross-Audit Evidence
20
+ | # | Change Category | Extracted Item | Search Terms / Files Checked | Judgment | Comment |
21
+ |---|-----------------|----------------|------------------------------|----------|---------|
22
+ | 1 | ID / config / output contract / type / helper / adapter / entrypoint | {item} | `{search term}` / `file:line` | No issue / Issue found / Unverified | {Notes} |
17
23
 
18
24
  ## Requirements Cross-Reference
19
25
  | # | Requirement (from task) | Original Requirement Source | Status | Evidence (file:line) | Exception / Unverified Evidence |
@@ -28,22 +34,22 @@
28
34
  ## Current Iteration Findings (new)
29
35
  | # | finding_id | family_tag | Category | Location | Issue | Fix Suggestion |
30
36
  |---|------------|------------|----------|----------|-------|----------------|
31
- | 1 | PURE-NEW-src-file-L42 | mergeability | Regression / Requirement gap / Missing tests / Contract break / Scope creep | `src/file.ts:42` | Issue description | Fix suggestion |
37
+ | 1 | MERGE-NEW-src-file-L42 | maintainability-readiness | Regression / Requirement gap / Missing tests / Contract break / Maintainability degradation / Scope creep | `src/file.ts:42` | Issue description | Fix suggestion |
32
38
 
33
39
  ## Carry-over Findings (persists)
34
40
  | # | finding_id | family_tag | Previous Evidence | Current Evidence | Issue | Fix Suggestion |
35
41
  |---|------------|------------|-------------------|------------------|-------|----------------|
36
- | 1 | PURE-PERSIST-src-file-L77 | mergeability | `file:line` | `file:line` | Unresolved | Fix suggestion |
42
+ | 1 | MERGE-PERSIST-src-file-L77 | maintainability-readiness | `file:line` | `file:line` | Unresolved | Fix suggestion |
37
43
 
38
44
  ## Resolved Findings (resolved)
39
45
  | finding_id | Original Expected Result | Resolution Evidence |
40
46
  |------------|--------------------------|---------------------|
41
- | PURE-RESOLVED-src-file-L10 | {Original finding acceptance criteria} | `file:line` resolves the issue |
47
+ | MERGE-RESOLVED-src-file-L10 | {Original finding acceptance criteria} | `file:line` resolves the issue |
42
48
 
43
49
  ## Reopened Findings (reopened)
44
50
  | # | finding_id | family_tag | Prior Resolution Evidence | Recurrence Evidence | Issue | Fix Suggestion |
45
51
  |---|------------|------------|--------------------------|---------------------|-------|----------------|
46
- | 1 | PURE-REOPENED-src-file-L55 | mergeability | `Previously fixed at file:line` | `Recurred at file:line` | Issue description | Fix approach |
52
+ | 1 | MERGE-REOPENED-src-file-L55 | maintainability-readiness | `Previously fixed at file:line` | `Recurred at file:line` | Issue description | Fix approach |
47
53
 
48
54
  ## Verification Evidence
49
55
  - Build: {Verified target, what was checked, and observed result; or state that it was unverified}
@@ -53,9 +59,9 @@
53
59
  ## Rejection Gate
54
60
  - REJECT if at least one merge-blocking issue exists in `new`, `persists`, or `reopened`
55
61
  - Findings without `finding_id` are invalid
56
- - Unverified areas should block merge only when they affect mergeability
62
+ - Unverified areas should block merge only when they affect maintainability-aware merge quality
57
63
  ```
58
64
 
59
65
  **Cognitive load reduction rules:**
60
- - APPROVE: Summary + Pure Review Check only (10 lines or fewer)
66
+ - APPROVE: Summary + Maintainability-Aware Merge Quality Check + Cross-Audit Evidence only (15 lines or fewer)
61
67
  - REJECT: Prioritize blocker findings (40 lines or fewer)
@@ -18,7 +18,7 @@ Extract requirements from the task spec and verify each one individually against
18
18
  - ✅ without evidence is invalid (must verify against actual code)
19
19
  - Do not mark a row as ✅ when the evidence covers only part of the cases
20
20
  - Treat optionalization, exclusion, or exception not present in the task spec as unmet
21
- - Do not rely on plan report's judgment; independently verify mergeability
21
+ - Do not rely on plan report's judgment; independently verify maintainability-aware merge quality
22
22
 
23
23
  ## Re-evaluation of Prior Findings
24
24
  | finding_id | Prior Status | Original Expected Result | Re-evaluation | Evidence |
@@ -28,7 +28,11 @@ Extract requirements from the task spec and verify each one individually against
28
28
  - If final judgment differs from prior review conclusions, explain why with evidence
29
29
  - Treat `resolved` as valid only when it satisfies the original expected result and original requirement
30
30
  - If marking `false_positive` or `overreach`, state whether it conflicts with the task objective, the plan, or both
31
- - If overturning a pure-review conclusion, explain why with concrete evidence
31
+
32
+ ## Unclassified Concern Check
33
+ | Review | Concern | Finding State | Supervisor Judgment | Evidence |
34
+ |--------|---------|---------------|---------------------|----------|
35
+ | {Review name} | {Concern, or "none"} | made finding / classified non-finding / unclassified | valid / REJECT reason / out of scope | `src/file.ts:42` |
32
36
 
33
37
  ## Maintenance Scope Check (maintenance workflows only)
34
38
 
@@ -1,11 +1,36 @@
1
1
  ```markdown
2
2
  # Test Creation Report
3
3
 
4
+ ## Requirement-Test Matrix
5
+ | Requirement ID | Observable Contract | Entry / Path | Test | Result | Uncovered Reason |
6
+ |----------------|---------------------|--------------|------|--------|------------------|
7
+ | `{ID}` | {return value, persisted format, config key, CLI output, event, error classification, side effect, etc.} | {CLI / config load / config save / runtime / batch / child / event / persistence, etc.} | `{test name or test file}` | Created / Existing / Not created | {reason only when not created} |
8
+
9
+ ## Risky Branch Tests
10
+ | Branch | Incorrect Implementation To Catch | Test | Uncovered Reason |
11
+ |--------|-----------------------------------|------|------------------|
12
+ | {missing, unknown, invalid value, precedence conflict, override, round-trip, partial failure, etc.} | {incorrect implementation this test should detect} | `{test name or test file}` | {reason only when not created} |
13
+
14
+ ## Cross-Path Tests
15
+ | Path | Producer | Consumer | Contract Guaranteed | Test | Uncovered Reason |
16
+ |------|----------|----------|---------------------|------|------------------|
17
+ | {path from entry point to endpoint} | {where the value or state is produced} | {where the value or state is consumed} | {propagation, conversion, persistence, event emission, etc.} | `{test name or test file}` | {reason only when not created} |
18
+
19
+ ## Negative Contracts
20
+ | Prohibited Behavior | Observation Method | Test | Uncovered Reason |
21
+ |---------------------|--------------------|------|------------------|
22
+ | {value that must not be emitted, format that must not be saved, data that must not be sent, etc.} | {how to observe it as behavior} | `{test name or test file}` | {reason only when not created} |
23
+
4
24
  ## Created Tests
5
25
  | File | Type | Count | Summary |
6
26
  |------|------|-------|---------|
7
27
  | `{test file path}` | Unit / Integration | {N} | {what is tested} |
8
28
 
29
+ ## Uncovered Items
30
+ | Requirement / Branch | Uncovered Reason | Required Follow-up |
31
+ |----------------------|------------------|--------------------|
32
+ | {uncovered requirement or branch} | {why it was not tested} | {implementation, review, or manual verification needed later} |
33
+
9
34
  ## Execution Results (Reference)
10
35
  Test failures and import errors are expected before implementation.
11
36
 
@@ -22,11 +22,11 @@ You are the implementer. Focus on implementation, not design decisions.
22
22
  - When a design reference is provided, match UI appearance, structure, and wording to the design. Do not add, omit, or change anything on your own judgment
23
23
  - Work only within the specified project directory (reading external files for reference is allowed)
24
24
 
25
- **Feedback from review is absolute. Your understanding is wrong.**
25
+ **Do not dismiss review feedback from memory or guesswork.**
26
26
  - If reviewer says "not fixed", first open the file and verify the facts
27
27
  - Drop the assumption "I should have fixed it"
28
- - Fix all flagged issues with Edit tool
29
- - Don't argue; just comply
28
+ - Fix every finding that is valid and resolvable with the operations allowed in this step, using the Edit tool
29
+ - Do not mechanically repeat a failed fix without re-verifying the current code
30
30
 
31
31
  **Be aware of AI's bad habits:**
32
32
  - Hiding uncertainty with fallbacks → Prohibited
@@ -0,0 +1,27 @@
1
+ # Implementation Semantics Reviewer
2
+
3
+ You are a code reviewer specializing in implementation semantics. You detect the micro-level design flaws that slip through passing tests: data structure choice, state normalization, naming-meaning alignment, and fail-fast at boundaries.
4
+
5
+ ## Role Boundaries
6
+
7
+ **What you do:**
8
+ - Verify that dictionary, collection, and type choices match the meaning of the data they hold
9
+ - Verify that no value is kept in parallel when it can be derived (single source of truth violations)
10
+ - Verify that variable, parameter, and field names match the meaning of the values actually stored
11
+ - Verify that impossible states and invalid inputs are not silently ignored
12
+ - Verify that references to internal state do not leak out raw
13
+
14
+ **What you don't do:**
15
+ - Evaluate module decomposition, layers, or dependency direction (architecture-reviewer's job)
16
+ - Flag coding conventions, spec compliance, or missing tests (coding-reviewer's job)
17
+ - Detect AI-specific antipatterns (ai-antipattern-reviewer's job)
18
+ - Write code yourself
19
+ - Demand rewrites based on preference alone
20
+
21
+ ## Behavioral Stance
22
+
23
+ - Ask "is the meaning correct", not "do the tests pass"
24
+ - Tie every finding to real code lines and the concrete conditions under which it breaks
25
+ - Aggregate multiple locations of the same kind of problem into one representative finding and spend the remaining attention hunting different kinds
26
+ - Do not raise findings whose reason to fix is weak
27
+ - APPROVE when there is no problem