@tacuchi/agent-workflow-cli 22.4.2 → 24.0.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 (295) hide show
  1. package/README.md +39 -3
  2. package/dist/adapters/git-cli.js +59 -17
  3. package/dist/adapters/git-cli.js.map +1 -1
  4. package/dist/adapters/node-file-system.js +55 -1
  5. package/dist/adapters/node-file-system.js.map +1 -1
  6. package/dist/adapters/postgres-readonly-tools.js +277 -0
  7. package/dist/adapters/postgres-readonly-tools.js.map +1 -0
  8. package/dist/application/artifacts-service.js +2 -2
  9. package/dist/application/artifacts-service.js.map +1 -1
  10. package/dist/application/capability/dispatcher.js +2 -2
  11. package/dist/application/capability/dispatcher.js.map +1 -1
  12. package/dist/application/capability/installed-inventory.js +2 -2
  13. package/dist/application/capability/installed-inventory.js.map +1 -1
  14. package/dist/application/capability/readiness.js +1 -1
  15. package/dist/application/capability/readiness.js.map +1 -1
  16. package/dist/application/check-branch-service.js +2 -2
  17. package/dist/application/check-branch-service.js.map +1 -1
  18. package/dist/application/checkpoint/files-touched.js +271 -0
  19. package/dist/application/checkpoint/files-touched.js.map +1 -0
  20. package/dist/application/checkpoint/markdown.js +61 -8
  21. package/dist/application/checkpoint/markdown.js.map +1 -1
  22. package/dist/application/checkpoint/state-reader.js +8 -2
  23. package/dist/application/checkpoint/state-reader.js.map +1 -1
  24. package/dist/application/checkpoint-write-service.js +16 -5
  25. package/dist/application/checkpoint-write-service.js.map +1 -1
  26. package/dist/application/claims-ledger.js +330 -0
  27. package/dist/application/claims-ledger.js.map +1 -0
  28. package/dist/application/claims-recovery.js +338 -0
  29. package/dist/application/claims-recovery.js.map +1 -0
  30. package/dist/application/database-mcp-server.js +168 -0
  31. package/dist/application/database-mcp-server.js.map +1 -0
  32. package/dist/application/database-mcp-stdio.js +137 -0
  33. package/dist/application/database-mcp-stdio.js.map +1 -0
  34. package/dist/application/database-tool-catalog.js +226 -0
  35. package/dist/application/database-tool-catalog.js.map +1 -0
  36. package/dist/application/dev-only-services.js +154 -44
  37. package/dist/application/dev-only-services.js.map +1 -1
  38. package/dist/application/dsn-reader-service.js +1 -1
  39. package/dist/application/elicitation-server.js +382 -0
  40. package/dist/application/elicitation-server.js.map +1 -0
  41. package/dist/application/elicitation-stdio.js +48 -0
  42. package/dist/application/elicitation-stdio.js.map +1 -0
  43. package/dist/application/flow/advance.js +86 -5
  44. package/dist/application/flow/advance.js.map +1 -1
  45. package/dist/application/flow/checkout-observation.js +152 -0
  46. package/dist/application/flow/checkout-observation.js.map +1 -0
  47. package/dist/application/flow/flow-service.js +72 -13
  48. package/dist/application/flow/flow-service.js.map +1 -1
  49. package/dist/application/flow/internal-actions.js +460 -1
  50. package/dist/application/flow/internal-actions.js.map +1 -1
  51. package/dist/application/flow/internal-drive.js +22 -9
  52. package/dist/application/flow/internal-drive.js.map +1 -1
  53. package/dist/application/flow/prove.js +205 -0
  54. package/dist/application/flow/prove.js.map +1 -0
  55. package/dist/application/flow/run-journey.js +15 -0
  56. package/dist/application/flow/run-journey.js.map +1 -0
  57. package/dist/application/flow/run-projection.js +15 -3
  58. package/dist/application/flow/run-projection.js.map +1 -1
  59. package/dist/application/flow/run-state-service.js +19 -4
  60. package/dist/application/flow/run-state-service.js.map +1 -1
  61. package/dist/application/flow/submit.js +250 -72
  62. package/dist/application/flow/submit.js.map +1 -1
  63. package/dist/application/generate-launch-service.js +4 -4
  64. package/dist/application/generate-launch-service.js.map +1 -1
  65. package/dist/application/git-flow-service.js +9 -0
  66. package/dist/application/git-flow-service.js.map +1 -1
  67. package/dist/application/local-proposal.js +9 -0
  68. package/dist/application/local-proposal.js.map +1 -1
  69. package/dist/application/lock-service.js +96 -28
  70. package/dist/application/lock-service.js.map +1 -1
  71. package/dist/application/logging/log-events.js +19 -3
  72. package/dist/application/logging/log-events.js.map +1 -1
  73. package/dist/application/logging/logger.js +2 -2
  74. package/dist/application/logging/logger.js.map +1 -1
  75. package/dist/application/mcp-connections-service.js +115 -41
  76. package/dist/application/mcp-connections-service.js.map +1 -1
  77. package/dist/application/mcp-doctor-service.js +98 -54
  78. package/dist/application/mcp-doctor-service.js.map +1 -1
  79. package/dist/application/mcp-entry-classification.js +60 -0
  80. package/dist/application/mcp-entry-classification.js.map +1 -0
  81. package/dist/application/mcp-host-reader.js +114 -81
  82. package/dist/application/mcp-host-reader.js.map +1 -1
  83. package/dist/application/mcp-host-receipt-service.js +399 -0
  84. package/dist/application/mcp-host-receipt-service.js.map +1 -0
  85. package/dist/application/mcp-host-receipt-store.js +122 -0
  86. package/dist/application/mcp-host-receipt-store.js.map +1 -0
  87. package/dist/application/mcp-host-receipts.js +28 -0
  88. package/dist/application/mcp-host-receipts.js.map +1 -0
  89. package/dist/application/mcp-host-writer.js +321 -126
  90. package/dist/application/mcp-host-writer.js.map +1 -1
  91. package/dist/application/mcp-launch-probe-service.js +142 -0
  92. package/dist/application/mcp-launch-probe-service.js.map +1 -0
  93. package/dist/application/mcp-migration-service.js +351 -0
  94. package/dist/application/mcp-migration-service.js.map +1 -0
  95. package/dist/application/mcp-native-host-check-service.js +154 -0
  96. package/dist/application/mcp-native-host-check-service.js.map +1 -0
  97. package/dist/application/mcp-receipt-registration-service.js +105 -0
  98. package/dist/application/mcp-receipt-registration-service.js.map +1 -0
  99. package/dist/application/mcp-receipt-removal-service.js +62 -0
  100. package/dist/application/mcp-receipt-removal-service.js.map +1 -0
  101. package/dist/application/mcp-remove-service.js +84 -21
  102. package/dist/application/mcp-remove-service.js.map +1 -1
  103. package/dist/application/mcp-scope-common.js +2 -4
  104. package/dist/application/mcp-scope-common.js.map +1 -1
  105. package/dist/application/mcp-setup-service.js +60 -21
  106. package/dist/application/mcp-setup-service.js.map +1 -1
  107. package/dist/application/mcp-stdio-probe.js +526 -0
  108. package/dist/application/mcp-stdio-probe.js.map +1 -0
  109. package/dist/application/mcp-test-connection-service.js +23 -50
  110. package/dist/application/mcp-test-connection-service.js.map +1 -1
  111. package/dist/application/merge-state-service.js +10 -16
  112. package/dist/application/merge-state-service.js.map +1 -1
  113. package/dist/application/multiroot/claude.js +34 -15
  114. package/dist/application/multiroot/claude.js.map +1 -1
  115. package/dist/application/multiroot/codex.js +9 -5
  116. package/dist/application/multiroot/codex.js.map +1 -1
  117. package/dist/application/multiroot-service.js +20 -11
  118. package/dist/application/multiroot-service.js.map +1 -1
  119. package/dist/application/parsers/project-block.js +25 -2
  120. package/dist/application/parsers/project-block.js.map +1 -1
  121. package/dist/application/paths-service.js +30 -31
  122. package/dist/application/paths-service.js.map +1 -1
  123. package/dist/application/plan-exec-batch-service.js +549 -0
  124. package/dist/application/plan-exec-batch-service.js.map +1 -0
  125. package/dist/application/plan-exec-decision-service.js +273 -0
  126. package/dist/application/plan-exec-decision-service.js.map +1 -0
  127. package/dist/application/project-md-service.js +2 -2
  128. package/dist/application/project-md-service.js.map +1 -1
  129. package/dist/application/project-md-upsert-service.js +4 -4
  130. package/dist/application/project-md-upsert-service.js.map +1 -1
  131. package/dist/application/project-tab-data.js +12 -7
  132. package/dist/application/project-tab-data.js.map +1 -1
  133. package/dist/application/release-data-service.js +2 -2
  134. package/dist/application/release-data-service.js.map +1 -1
  135. package/dist/application/resume-service.js +32 -11
  136. package/dist/application/resume-service.js.map +1 -1
  137. package/dist/application/retirement/apply.js +84 -0
  138. package/dist/application/retirement/apply.js.map +1 -1
  139. package/dist/application/retirement/attribution.js +31 -1
  140. package/dist/application/retirement/attribution.js.map +1 -1
  141. package/dist/application/retirement/graph.js +19 -1
  142. package/dist/application/retirement/graph.js.map +1 -1
  143. package/dist/application/retirement/journal.js +11 -0
  144. package/dist/application/retirement/journal.js.map +1 -1
  145. package/dist/application/retirement/prepare.js +89 -3
  146. package/dist/application/retirement/prepare.js.map +1 -1
  147. package/dist/application/retirement/preview.js +16 -0
  148. package/dist/application/retirement/preview.js.map +1 -1
  149. package/dist/application/retirement/resolve.js +65 -0
  150. package/dist/application/retirement/resolve.js.map +1 -1
  151. package/dist/application/self/host-states.js +2 -0
  152. package/dist/application/self/host-states.js.map +1 -1
  153. package/dist/application/self/install-skill.js +21 -17
  154. package/dist/application/self/install-skill.js.map +1 -1
  155. package/dist/application/self/mcp-config.js +392 -84
  156. package/dist/application/self/mcp-config.js.map +1 -1
  157. package/dist/application/self/mcp-via-state.js +62 -0
  158. package/dist/application/self/mcp-via-state.js.map +1 -0
  159. package/dist/application/self/uninstall.js +15 -5
  160. package/dist/application/self/uninstall.js.map +1 -1
  161. package/dist/application/session-close-service.js +24 -1
  162. package/dist/application/session-close-service.js.map +1 -1
  163. package/dist/application/session-create-service.js +7 -0
  164. package/dist/application/session-create-service.js.map +1 -1
  165. package/dist/application/session-resume-service.js +2 -2
  166. package/dist/application/session-resume-service.js.map +1 -1
  167. package/dist/application/sessions-service.js +2 -4
  168. package/dist/application/sessions-service.js.map +1 -1
  169. package/dist/application/skills-resolver-service.js +4 -4
  170. package/dist/application/skills-resolver-service.js.map +1 -1
  171. package/dist/application/source-boundary-policy.js +18 -7
  172. package/dist/application/source-boundary-policy.js.map +1 -1
  173. package/dist/application/source-remove-service.js +12 -1
  174. package/dist/application/source-remove-service.js.map +1 -1
  175. package/dist/application/sources-service.js +2 -2
  176. package/dist/application/sources-service.js.map +1 -1
  177. package/dist/application/status-service.js +4 -0
  178. package/dist/application/status-service.js.map +1 -1
  179. package/dist/application/visibility-doctor-service.js +1 -1
  180. package/dist/application/visibility-doctor-service.js.map +1 -1
  181. package/dist/application/workline-index-service.js +182 -27
  182. package/dist/application/workline-index-service.js.map +1 -1
  183. package/dist/application/workspace-init-service.js +89 -271
  184. package/dist/application/workspace-init-service.js.map +1 -1
  185. package/dist/application/workspace-materialization-service.js +300 -0
  186. package/dist/application/workspace-materialization-service.js.map +1 -0
  187. package/dist/application/worktree-service.js +32 -3
  188. package/dist/application/worktree-service.js.map +1 -1
  189. package/dist/cli/commands/capability.js +4 -7
  190. package/dist/cli/commands/capability.js.map +1 -1
  191. package/dist/cli/commands/claims.js +72 -0
  192. package/dist/cli/commands/claims.js.map +1 -0
  193. package/dist/cli/commands/dev-only.js +73 -25
  194. package/dist/cli/commands/dev-only.js.map +1 -1
  195. package/dist/cli/commands/flow.js +145 -42
  196. package/dist/cli/commands/flow.js.map +1 -1
  197. package/dist/cli/commands/index.js +4 -0
  198. package/dist/cli/commands/index.js.map +1 -1
  199. package/dist/cli/commands/mcp.js +752 -76
  200. package/dist/cli/commands/mcp.js.map +1 -1
  201. package/dist/cli/commands/multiroot.js +40 -7
  202. package/dist/cli/commands/multiroot.js.map +1 -1
  203. package/dist/cli/commands/resume.js +9 -3
  204. package/dist/cli/commands/resume.js.map +1 -1
  205. package/dist/cli/commands/retirement.js +9 -0
  206. package/dist/cli/commands/retirement.js.map +1 -1
  207. package/dist/cli/commands/session-create.js +1 -1
  208. package/dist/cli/commands/session-create.js.map +1 -1
  209. package/dist/cli/commands/skills.js +1 -1
  210. package/dist/cli/commands/skills.js.map +1 -1
  211. package/dist/cli/commands/status.js +72 -24
  212. package/dist/cli/commands/status.js.map +1 -1
  213. package/dist/cli/commands/tool.js +141 -0
  214. package/dist/cli/commands/tool.js.map +1 -0
  215. package/dist/cli/commands/workspace-init.js +5 -5
  216. package/dist/cli/commands/workspace-init.js.map +1 -1
  217. package/dist/cli/help-groups.js +6 -1
  218. package/dist/cli/help-groups.js.map +1 -1
  219. package/dist/cli/main.js +272 -67
  220. package/dist/cli/main.js.map +1 -1
  221. package/dist/cli/parser.js +8 -1
  222. package/dist/cli/parser.js.map +1 -1
  223. package/dist/cli/registry.js.map +1 -1
  224. package/dist/cli/render.js +15 -2
  225. package/dist/cli/render.js.map +1 -1
  226. package/dist/cli/tui/app.js +3 -2
  227. package/dist/cli/tui/app.js.map +1 -1
  228. package/dist/cli/tui/components/workspace-init-form.js +7 -7
  229. package/dist/cli/tui/components/workspace-init-form.js.map +1 -1
  230. package/dist/cli/tui/data/workflow-content.js +2 -2
  231. package/dist/cli/tui/data/workflow-content.js.map +1 -1
  232. package/dist/cli/tui/tabs/config-tab.js +4 -3
  233. package/dist/cli/tui/tabs/config-tab.js.map +1 -1
  234. package/dist/cli/tui/tabs/mcp-tab-helpers.js +72 -1
  235. package/dist/cli/tui/tabs/mcp-tab-helpers.js.map +1 -1
  236. package/dist/cli/tui/tabs/mcp-tab.js +101 -42
  237. package/dist/cli/tui/tabs/mcp-tab.js.map +1 -1
  238. package/dist/cli/tui/tabs/project-tab.js +18 -21
  239. package/dist/cli/tui/tabs/project-tab.js.map +1 -1
  240. package/dist/cli/tui/workspace-root.js +13 -0
  241. package/dist/cli/tui/workspace-root.js.map +1 -0
  242. package/dist/domain/capability/protocol.js +2 -2
  243. package/dist/domain/capability/protocol.js.map +1 -1
  244. package/dist/domain/database-tools.js +445 -0
  245. package/dist/domain/database-tools.js.map +1 -0
  246. package/dist/domain/degradation-notice.js +60 -0
  247. package/dist/domain/degradation-notice.js.map +1 -0
  248. package/dist/domain/elicitation.js +152 -0
  249. package/dist/domain/elicitation.js.map +1 -0
  250. package/dist/domain/flow/answer.js +173 -42
  251. package/dist/domain/flow/answer.js.map +1 -1
  252. package/dist/domain/flow/authority.js +184 -127
  253. package/dist/domain/flow/authority.js.map +1 -1
  254. package/dist/domain/flow/directive.js +47 -1
  255. package/dist/domain/flow/directive.js.map +1 -1
  256. package/dist/domain/flow/rules.js +7 -4
  257. package/dist/domain/flow/rules.js.map +1 -1
  258. package/dist/domain/flow/run-state.js +636 -31
  259. package/dist/domain/flow/run-state.js.map +1 -1
  260. package/dist/domain/harnesses.js +16 -0
  261. package/dist/domain/harnesses.js.map +1 -1
  262. package/dist/domain/mcp-entry.js +164 -28
  263. package/dist/domain/mcp-entry.js.map +1 -1
  264. package/dist/domain/postgres-object-search.js +320 -0
  265. package/dist/domain/postgres-object-search.js.map +1 -0
  266. package/dist/domain/redaction.js +47 -0
  267. package/dist/domain/redaction.js.map +1 -0
  268. package/dist/domain/retirement/proposal.js +1 -0
  269. package/dist/domain/retirement/proposal.js.map +1 -1
  270. package/dist/domain/structured-choice-stamp.js +32 -4
  271. package/dist/domain/structured-choice-stamp.js.map +1 -1
  272. package/dist/domain/workline-mcp-entry.js +34 -0
  273. package/dist/domain/workline-mcp-entry.js.map +1 -0
  274. package/dist/ports/postgres-tools.js +10 -0
  275. package/dist/ports/postgres-tools.js.map +1 -0
  276. package/dist/runtime/namespace-resolver.js +104 -18
  277. package/dist/runtime/namespace-resolver.js.map +1 -1
  278. package/package.json +5 -1
  279. package/skills/w/README.md +2 -2
  280. package/skills/w/SKILL.md +9 -10
  281. package/skills/w/artifacts/README.md +1 -1
  282. package/skills/w/commands/README.md +3 -3
  283. package/skills/w/commands/persist.md +3 -1
  284. package/skills/w/commands/resume.md +1 -1
  285. package/skills/w/commands/spec-new.md +2 -2
  286. package/skills/w/commands/status.md +1 -1
  287. package/skills/w/commands/workspace-init.md +9 -10
  288. package/skills/w/context/MANIFEST.json +1 -4
  289. package/skills/w/harness/HARNESS.md +1 -1
  290. package/skills/w/loops/quick-loop/LOOP.md +1 -1
  291. package/skills/w/modules/PROMPT-CONTINUITY.md +1 -1
  292. package/skills/w/modules/WORKSPACE-SCAFFOLD.md +17 -20
  293. package/skills/w/schemas/capability-descriptor.schema.json +1 -1
  294. package/dist/application/mcp-dbhub-launcher.js +0 -216
  295. package/dist/application/mcp-dbhub-launcher.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"flow-service.js","sourceRoot":"","sources":["../../../src/application/flow/flow-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow-service.js","sourceRoot":"","sources":["../../../src/application/flow/flow-service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAEL,qBAAqB,EAErB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAqB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAA+B,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAwB,cAAc,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAgCzF,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,EAAkB,EAClB,KAAmB,EACnB,KAAuB;IAEvB,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACd,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EAAE,KAAK,CAAC,KAAK;gBACpB,MAAM,EAAE,8EAA8E;aACvF;SACF,CAAC;IACJ,CAAC;IACD,4EAA4E;IAC5E,gFAAgF;IAChF,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE;QACvD,MAAM,EAAE,OAAO;QACf,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAEjF,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;IAC1C,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3C,+EAA+E;IAC/E,sEAAsE;IACtE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IAEvE,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,MAAM,OAAO,GAAG,MAAM,cAAc,CAClC,EAAE,EACF,QAAQ,EACR,CAAC,OAAO,EAAE,EAAE;QACV,MAAM,MAAM,GACV,OAAO,KAAK,IAAI;YACd,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC;YACtB,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC;gBAC/B,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC;gBAC/B,CAAC,CAAC,OAAO,CAAC;QAChB,IAAI,SAAS,IAAI,MAAM;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QACvE,IAAI,OAAO,KAAK,IAAI,IAAI,sBAAsB,CAAC,OAAO,CAAC;YAAE,eAAe,GAAG,IAAI,CAAC;QAChF,MAAM,OAAO,GAAG,cAAc,CAAC;YAC7B,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC;SAC/B,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QAChE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;IACtE,CAAC,EACD,EAAE,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,CAAC,KAAK,EAAE,CAC/D,CAAC;IAEF,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;IAChE,8EAA8E;IAC9E,IAAI,QAAQ,IAAI,eAAe,EAAE,CAAC;QAChC,MAAM,kBAAkB,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IACD,+EAA+E;IAC/E,iFAAiF;IACjF,iCAAiC;IACjC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE;QACtE,EAAE,EAAE,IAAI;QACR,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IAC9D,kFAAkF;IAClF,6EAA6E;IAC7E,OAAO;QACL,EAAE,EAAE,IAAI;QACR,SAAS,EAAE,MAAM,wBAAwB,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC;KACvF,CAAC;AACJ,CAAC;AAmBD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,EAAkB,EAClB,KAAmB,EACnB,KAAuB;IAEvB,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACd,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EAAE,KAAK,CAAC,KAAK;gBACpB,MAAM,EAAE,gFAAgF;aACzF;SACF,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE;QACvD,MAAM,EAAE,OAAO;QACf,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,WAAW,EAAE,KAAK;QAClB,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAEjF,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,MAAM,cAAc,CAAgB,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;QAC5E,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,iBAAiB;oBACvB,OAAO,EAAE,6CAA6C;oBACtD,MAAM,EAAE,8DAA8D;iBACvE;aACF,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;IAChE,OAAO;QACL,EAAE,EAAE,IAAI;QACR,SAAS,EAAE,MAAM,wBAAwB,CACvC,EAAE,EACF,KAAK,EACL,UAAU,CAAC,OAAO,CAAC,MAAM,EACzB,KAAK,CAAC,GAAG,EACT,OAAO,CAAC,KAAK,CACd;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,OAAO,CAAC,KAAmB,EAAE,KAAoB;IACxD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACvD,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAEnE,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC;IACxD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,MAAM,CACX,0BAA0B,EAC1B,0DAA0D,EAC1D,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC;QAC3C,OAAO,MAAM,CACX,8BAA8B,EAC9B,gCAAgC,OAAO,CAAC,EAAE,2BAA2B,KAAK,GAAG,EAC7E,yFAAyF,OAAO,CAAC,EAAE,EAAE,CACtG,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAC/B,gFAAgF;IAChF,8EAA8E;IAC9E,gFAAgF;IAChF,+EAA+E;IAC/E,oEAAoE;IACpE,IAAI,KAAK,GAAG,qBAAqB,IAAI,UAAU,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QACtE,OAAO,MAAM,CACX,0BAA0B,EAC1B,IAAI,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,qBAAqB,mDAAmD,UAAU,CAAC,IAAI,UAAU,UAAU,CAAC,KAAK,YAAY,UAAU,CAAC,OAAO,iBAAiB,UAAU,CAAC,SAAS,wBAAwB,EACjP,2FAA2F,CAC5F,CAAC;IACJ,CAAC;IACD,gFAAgF;IAChF,iFAAiF;IACjF,4EAA4E;IAC5E,6EAA6E;IAC7E,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IACrD,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAEjE,gFAAgF;IAChF,gFAAgF;IAChF,iFAAiF;IACjF,qEAAqE;IACrE,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC9F,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,EAAE,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/E,IAAI,CAAC,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAC5D,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;AAClE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,cAAc,CACrB,UAAkB,EAClB,OAAwB;IAExB,IAAI,OAAO,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QACpC,OAAO,MAAM,CACX,oCAAoC,EACpC,IAAI,UAAU,oHAAoH,EAClI,8KAA8K,CAC/K,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,OAAO,MAAM,CACX,+BAA+B,EAC/B,IAAI,UAAU,yCAAyC,KAAK,CAAC,SAAS,uDAAuD,EAC7H,yHACE,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,+BAC7C,EAAE,CACH,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,IAAY,EAAE,OAAe,EAAE,MAAc;IAC3D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,SAAS,IAAI,CACX,KAAuB,EACvB,OAAe;IAEf,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,IAAI,IAAI,KAAK,SAAS,IAAI,CAAE,cAAoC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAChF,OAAO;YACL,OAAO,EAAE;gBACP,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EACL,IAAI,KAAK,SAAS;oBAChB,CAAC,CAAC,iDAAiD;oBACnD,CAAC,CAAC,IAAI,IAAI,6BAA6B;gBAC3C,MAAM,EAAE,2BAA2B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aAC/D;SACF,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC,IAAoB,EAAE,OAAO,CAAC,CAAC;AACpD,CAAC;AAED,sFAAsF;AACtF,SAAS,aAAa,CACpB,KAAuB,EACvB,KAAmB;IAEnB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACjB,OAAO;YACL,OAAO,EAAE;gBACP,IAAI,EAAE,mCAAmC;gBACzC,OAAO,EAAE,eAAe,KAAK,CAAC,OAAO,iDAAiD;gBACtF,MAAM,EAAE,iCAAiC,KAAK,CAAC,OAAO,WAAW,KAAK,CAAC,IAAI,WAAW;aACvF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAAE,cAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5F,OAAO;YACL,OAAO,EAAE;gBACP,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EAAE,uDAAuD;gBAChE,MAAM,EAAE,eAAe,KAAK,CAAC,IAAI,oBAAoB;aACtD;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO;YACL,OAAO,EAAE;gBACP,IAAI,EAAE,6BAA6B;gBACnC,OAAO,EAAE,uBAAuB,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,IAAI,GAAG;gBACjE,MAAM,EAAE,wBAAwB,KAAK,CAAC,IAAI,8BAA8B;aACzE;SACF,CAAC;IACJ,CAAC;IACD,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC"}
@@ -23,16 +23,25 @@
23
23
  * the service returned. A read that resolved nothing is `ok: false` with its
24
24
  * reason, and the boundary stays standing.
25
25
  */
26
+ import { join } from "node:path";
27
+ import { withPlanExecBatch, withPlanExecBatchLoop, } from "../../domain/flow/run-state.js";
28
+ import { sealProposal } from "../../domain/proposal.js";
26
29
  import { runArtifactsCommand } from "../artifacts-service.js";
30
+ import { appendClaimEvent, claimKey, claimShapedAmong, completedClaimsIn, ledgerPath, openClaimsOf, readClaimEvents, revokedAmong, } from "../claims-ledger.js";
27
31
  import { applyLocalProposal } from "../local-proposal.js";
28
32
  import { parseMdSectionBilingual } from "../markdown.js";
33
+ import { parsePhases } from "../parsers/phases.js";
34
+ import { parseTasks } from "../parsers/tasks.js";
29
35
  import { resolveWorkspaceRoot } from "../paths-service.js";
36
+ import { inferPlanExecBatch, preparePlanExecDoneSeal, publishPlanExecBatch, } from "../plan-exec-batch-service.js";
30
37
  import { readSessionArtifacts } from "../release-data/artifacts.js";
31
38
  import { canonicalJson } from "../semantic-operation/protocol.js";
32
39
  import { runSessionClose } from "../session-close-service.js";
33
40
  import { recordPublication } from "../session-custody-recorder.js";
34
41
  import { runStatusCommand } from "../status-service.js";
42
+ import { buildWorklineIndex } from "../workline-index-service.js";
35
43
  import { runWorktree } from "../worktree-service.js";
44
+ import { applyUnderLock, locateRun, readRun } from "./run-state-service.js";
36
45
  export function internalActionExecutor(deps) {
37
46
  return async (plan, run) => {
38
47
  switch (plan.operation) {
@@ -46,6 +55,12 @@ export function internalActionExecutor(deps) {
46
55
  return ensureUnits(deps, run);
47
56
  case "proposal.publish":
48
57
  return publish(deps, run);
58
+ case "plan-exec.batch-infer":
59
+ return inferBatch(deps, run);
60
+ case "plan-exec.batch-close":
61
+ return closeBatch(deps, run);
62
+ case "plan-exec.plan-done":
63
+ return sealPlanDone(deps, run);
49
64
  }
50
65
  };
51
66
  }
@@ -121,6 +136,10 @@ async function publish(deps, run) {
121
136
  // The run's session owns whatever this publication creates or overwrites, and
122
137
  // the baseline is sealed while the previous bytes still exist. A legacy
123
138
  // session with no custody records nothing and publishes exactly as before.
139
+ // The fence travels INTO the critical section: a recovery can revoke a claim
140
+ // and free its correlative at any instant, so a check made out here would be
141
+ // a check made before the lock — precisely the window it must close.
142
+ precondition: (destinations) => revokedFence(deps, run.session, destinations),
124
143
  recordBaseline: (destinations) => recordPublication({ fs: deps.fs, paths: deps.paths }, run.session, destinations).then(() => undefined),
125
144
  });
126
145
  if (!applied.ok) {
@@ -128,18 +147,108 @@ async function publish(deps, run) {
128
147
  }
129
148
  const result = applied.result;
130
149
  const destinations = proposal.artifacts.map((a) => a.path);
150
+ const claims = await recordCompletedClaims(deps, run.session, result, destinations);
131
151
  return {
132
152
  ok: true,
133
153
  summary: result.already_applied
134
154
  ? `la propuesta ya estaba aplicada: ${destinations.join(", ")} sin cambios`
135
155
  : `publicado: ${result.written.join(", ")}`,
136
- output: canonicalJson({ ...result, digest: proposal.digest, destinations }),
156
+ output: canonicalJson({ ...result, digest: proposal.digest, destinations, claims }),
137
157
  // Only what really landed. A re-entry that found the bytes already there
138
158
  // credits the same classes — the effect IS applied — and the summary is what
139
159
  // distinguishes "now" from "already", which is the honest split.
140
160
  effects: [...result.applied],
141
161
  };
142
162
  }
163
+ /**
164
+ * The revocation that forbids this publication, or `null` when none does.
165
+ *
166
+ * Fail-closed, and scoped so it cannot become a general outage: a ledger with
167
+ * unreadable lines cannot prove the ABSENCE of a revocation, so a write that
168
+ * COULD be completing a reservation refuses rather than guesses. A destination
169
+ * that is not a numbered document in a category cannot be a reservation, so it is
170
+ * never held up by a ledger it does not depend on — an unreadable ledger must not
171
+ * stop every loop in the system from saving.
172
+ */
173
+ async function revokedFence(deps, owner, destinations) {
174
+ const read = await readClaimEvents(deps.fs, deps.paths);
175
+ const blocked = revokedAmong(read.events, owner, destinations);
176
+ if (blocked.length > 0) {
177
+ return {
178
+ code: "CLAIM_REVOKED",
179
+ message: `la publicación fue revocada: ${blocked.map((c) => claimKey(c)).join(", ")} ya volvió al conjunto elegible y su correlativo puede ser de otro`,
180
+ action: "el correlativo ya no es de esta corrida: pedí uno nuevo con 'aw next-number --claim' y volvé a sellar la propuesta",
181
+ };
182
+ }
183
+ if (read.unreadable > 0) {
184
+ // Scoped to claims this owner ACTUALLY holds in the ledger, not to every
185
+ // numbered destination. Otherwise one unparseable line — and this file is a
186
+ // committed append-only JSONL, so a merge conflict produces exactly that —
187
+ // would refuse every SPEC, PLAN and QUICK save in the workspace, which is a
188
+ // workspace-wide outage rather than the narrow fail-closed this needs to be.
189
+ const mine = new Set(openClaimsOf(read.events, owner).map((claim) => claimKey(claim)));
190
+ const atRisk = claimShapedAmong(owner, destinations).filter((claim) => mine.has(claimKey(claim)));
191
+ if (atRisk.length > 0) {
192
+ return {
193
+ code: "CLAIM_LEDGER_UNREADABLE",
194
+ message: `el registro de claims tiene ${read.unreadable} línea(s) ilegible(s), así que no se puede probar que ${atRisk.map((c) => claimKey(c)).join(", ")} no esté revocado`,
195
+ action: `arreglá las líneas ilegibles de ${ledgerPath(deps.paths)} (una por línea, JSON válido) y volvé a publicar`,
196
+ };
197
+ }
198
+ }
199
+ return null;
200
+ }
201
+ /**
202
+ * Record every open claim of this session that the publication just completed.
203
+ *
204
+ * Completing a reservation is a PUBLICATION: the correlative is spent for good
205
+ * and must never come back to the eligible set. Getting this wrong in either
206
+ * direction is durable, so both directions are handled deliberately:
207
+ *
208
+ * - **Under-recording is the dangerous one.** A claim left open about a
209
+ * correlative that is holding a published document is an invitation for a later
210
+ * recovery to release a live document. That is why the already-applied re-entry
211
+ * is covered too: `applyLocalProposal` answers that case with `written: []`, and
212
+ * returning early on an empty list left the claim open forever, unfixable,
213
+ * because every retry answers the same way.
214
+ * - **Over-recording is a durable lie.** So a destination only counts when it
215
+ * closes one of THIS owner's open claims, read from the ledger itself. Any other
216
+ * write travels through this same publication path and must record nothing.
217
+ *
218
+ * It never fails the publication — the bytes are already on disk and the person's
219
+ * document exists — but it never goes quiet either: what it could not do comes
220
+ * back to the caller and into the operation's output.
221
+ */
222
+ async function recordCompletedClaims(deps, owner, result, destinations) {
223
+ const recorded = [];
224
+ try {
225
+ const read = await readClaimEvents(deps.fs, deps.paths);
226
+ const completed = completedClaimsIn(read.events, owner, {
227
+ written: result.written,
228
+ already_applied: result.already_applied,
229
+ destinations,
230
+ });
231
+ for (const claim of completed) {
232
+ await appendClaimEvent(deps.fs, deps.paths, {
233
+ at: new Date().toISOString(),
234
+ event: "published",
235
+ claim,
236
+ cause: "la propuesta sellada de su dueño completó la reserva",
237
+ });
238
+ recorded.push(`${claim.category}/${claim.correlative}-${claim.name}`);
239
+ }
240
+ return {
241
+ recorded,
242
+ ...(read.unreadable > 0 ? { ledger_unreadable: read.unreadable } : {}),
243
+ };
244
+ }
245
+ catch (error) {
246
+ return {
247
+ recorded,
248
+ ledger_error: error instanceof Error ? error.message : String(error),
249
+ };
250
+ }
251
+ }
143
252
  async function board(deps) {
144
253
  const data = await runStatusCommand(deps.fs, deps.env, deps.paths, { git: deps.git });
145
254
  const counts = data.counts;
@@ -254,6 +363,356 @@ function hasContent(value) {
254
363
  const content = value.content;
255
364
  return typeof content === "string" && content.trim().length > 0;
256
365
  }
366
+ /**
367
+ * Seal the next batch while the cursor is standing on `batch-inference`.
368
+ *
369
+ * This is intentionally separate from publication. A batch is a snapshot of
370
+ * work that exists before isolation/implementation/validation, so closing it is
371
+ * never allowed to manufacture that snapshot retroactively from whatever text
372
+ * happens to be left after work. Re-entering an already inferred batch is a
373
+ * no-op: the original digest remains the authority and a moved plan is caught by
374
+ * the later publication CAS.
375
+ */
376
+ async function inferBatch(deps, run) {
377
+ if (run.scope === null) {
378
+ return refusal("plan-exec.batch-infer", "la corrida no fijó el plan cuyo batch debe inferir", canonicalJson({ scope: null }));
379
+ }
380
+ const scope = run.scope;
381
+ const root = await resolveWorkspaceRoot(deps.fs, deps.env, deps.paths);
382
+ const location = locateRun(deps.paths, run.session);
383
+ const inferred = await applyUnderLock(deps.fs, location, async (current) => {
384
+ if (current === null) {
385
+ return {
386
+ ok: false,
387
+ failure: {
388
+ code: "FLOW_RUN_ABSENT",
389
+ message: "la corrida desapareció antes de sellar su batch",
390
+ action: "reanudá la corrida con 'aw flow advance' antes de inferir el batch",
391
+ },
392
+ };
393
+ }
394
+ const active = (current.batches ?? []).find((batch) => batch.published_plan_digest === undefined);
395
+ if (active !== undefined) {
396
+ return {
397
+ ok: true,
398
+ state: current,
399
+ value: { batch: active, created: false, no_work: false },
400
+ persist: false,
401
+ };
402
+ }
403
+ let text;
404
+ try {
405
+ text = await deps.fs.readText(join(root, scope.plan));
406
+ }
407
+ catch {
408
+ return {
409
+ ok: false,
410
+ failure: {
411
+ code: "PLAN_EXEC_BATCH_PLAN_UNREADABLE",
412
+ message: `no se puede leer '${scope.plan}' para inferir el batch`,
413
+ action: "restaurá o fijá el plan del scope antes de continuar la ejecución",
414
+ },
415
+ };
416
+ }
417
+ const next = inferNextBatch(text, current);
418
+ if (!next.ok) {
419
+ if (next.failure.code !== "PLAN_EXEC_BATCH_NONE_OPEN") {
420
+ return { ok: false, failure: next.failure };
421
+ }
422
+ return {
423
+ ok: true,
424
+ state: withPlanExecBatchLoop(current, { pending: false, iteration: null }),
425
+ value: { batch: null, created: false, no_work: true },
426
+ };
427
+ }
428
+ return {
429
+ ok: true,
430
+ state: withPlanExecBatch(current, next.batch),
431
+ value: { batch: next.batch, created: true, no_work: false },
432
+ };
433
+ }, run.state_digest === undefined ? {} : { expectDigest: run.state_digest });
434
+ if (!inferred.ok) {
435
+ return refusal("plan-exec.batch-infer", `${inferred.failure.message} — ${inferred.failure.action}`, canonicalJson({ failure: inferred.failure }));
436
+ }
437
+ return {
438
+ ok: true,
439
+ summary: inferred.value.no_work
440
+ ? "el plan ya no tiene tareas abiertas: se omite el batch vacío y se expone la validación final"
441
+ : inferred.value.created
442
+ ? `batch ${inferred.value.batch?.id ?? "nuevo"} inferido y sellado antes de implementar`
443
+ : `batch ${inferred.value.batch?.id ?? "actual"} ya estaba inferido; se conserva su snapshot sellado`,
444
+ output: canonicalJson({ batch: inferred.value.batch, created: inferred.value.created }),
445
+ effects: [],
446
+ state: inferred.state,
447
+ };
448
+ }
449
+ /**
450
+ * Close the already inferred real batch, not a human-declared list of effects.
451
+ *
452
+ * This executes only after the batch's validation and review rows. It reads the
453
+ * batch snapshot sealed at inference, then lets `publishPlanExecBatch` persist
454
+ * intent → document CAS → v10 trace.
455
+ * A re-entry finds the pending sealed batch and either confirms its after-digest
456
+ * or fails stale; it never credits a second range because an agent said so.
457
+ */
458
+ async function closeBatch(deps, run) {
459
+ if (run.scope === null) {
460
+ return refusal("plan-exec.batch-close", "la corrida no fijó el plan cuyo batch debe cerrar", canonicalJson({ scope: null }));
461
+ }
462
+ const location = locateRun(deps.paths, run.session);
463
+ const live = await readRun(deps.fs, location);
464
+ if (!live.ok) {
465
+ return refusal("plan-exec.batch-close", `${live.failure.message} — ${live.failure.action}`, canonicalJson({ failure: live.failure }));
466
+ }
467
+ if (run.state_digest !== undefined && live.state.digest !== run.state_digest) {
468
+ return refusal("plan-exec.batch-close", "la corrida cambió mientras se preparaba el cierre del batch", canonicalJson({ expected: run.state_digest, actual: live.state.digest }));
469
+ }
470
+ const root = await resolveWorkspaceRoot(deps.fs, deps.env, deps.paths);
471
+ let text;
472
+ try {
473
+ text = await deps.fs.readText(join(root, run.scope.plan));
474
+ }
475
+ catch {
476
+ return refusal("plan-exec.batch-close", `no se puede leer '${run.scope.plan}'`, canonicalJson({ plan: run.scope.plan }));
477
+ }
478
+ const batch = (live.state.batches ?? []).find((current) => current.published_plan_digest === undefined);
479
+ if (batch === undefined) {
480
+ return refusal("plan-exec.batch-close", "no hay un batch inferido para cerrar: la corrida no puede acreditar tareas que no selló antes de implementarlas", canonicalJson({ code: "PLAN_EXEC_BATCH_NOT_INFERRED", plan: run.scope.plan }));
481
+ }
482
+ const phaseUpdates = phaseUpdatesForClosedBatch(text, batch);
483
+ if (!phaseUpdates.ok) {
484
+ return refusal("plan-exec.batch-close", `${phaseUpdates.failure.message} — ${phaseUpdates.failure.action}`, canonicalJson({ failure: phaseUpdates.failure }));
485
+ }
486
+ const published = await publishPlanExecBatch(deps.fs, deps.paths, {
487
+ root,
488
+ location,
489
+ state_digest: live.state.digest,
490
+ plan: run.scope.plan,
491
+ batch,
492
+ completed_tasks: batch.tasks,
493
+ phase_updates: phaseUpdates.updates,
494
+ transition: "plan-exec.batch-close",
495
+ });
496
+ if (!published.ok) {
497
+ return refusal("plan-exec.batch-close", `${published.failure.message} — ${published.failure.action}`, canonicalJson({ failure: published.failure }));
498
+ }
499
+ return {
500
+ ok: true,
501
+ summary: published.already_applied
502
+ ? `batch ${published.batch.id} ya estaba publicado en ${run.scope.plan}`
503
+ : `batch ${published.batch.id} publicado: ${published.written.join(", ")}`,
504
+ output: canonicalJson({
505
+ batch: published.batch,
506
+ written: published.written,
507
+ already_applied: published.already_applied,
508
+ }),
509
+ effects: ["mutate_overwrite"],
510
+ state: published.state,
511
+ };
512
+ }
513
+ const PLAN_DONE_REQUIRED_TRANSITIONS = [
514
+ "plan-exec.final-validation",
515
+ "plan-exec.commit-execution",
516
+ "plan-exec.unit-integration",
517
+ ];
518
+ /**
519
+ * Write the final plan seal from the evidence the run already owns.
520
+ *
521
+ * This is intentionally an internal action rather than a request to edit a
522
+ * Markdown line. The caller cannot assert that the plan is done: every retry
523
+ * rereads the run, rechecks the documentary closure under the workspace lock,
524
+ * and publishes only the deterministic `Estado` / `Cierre` pair.
525
+ */
526
+ async function sealPlanDone(deps, run) {
527
+ if (run.scope === null) {
528
+ return refusal("plan-exec.plan-done", "la corrida no fijó el plan que debe sellarse", canonicalJson({ scope: null }));
529
+ }
530
+ const location = locateRun(deps.paths, run.session);
531
+ const live = await readRun(deps.fs, location);
532
+ if (!live.ok) {
533
+ return refusal("plan-exec.plan-done", `${live.failure.message} — ${live.failure.action}`, canonicalJson({ failure: live.failure }));
534
+ }
535
+ if (run.state_digest !== undefined && live.state.digest !== run.state_digest) {
536
+ return refusal("plan-exec.plan-done", "la corrida cambió mientras se preparaba el sello final", canonicalJson({ expected: run.state_digest, actual: live.state.digest }));
537
+ }
538
+ const missing = PLAN_DONE_REQUIRED_TRANSITIONS.filter((transition) => !live.state.applied.includes(transition));
539
+ if (missing.length > 0) {
540
+ return refusal("plan-exec.plan-done", `todavía falta evidencia de ${missing.join(", ")}`, canonicalJson({ code: "PLAN_EXEC_DONE_PREREQUISITE", missing }));
541
+ }
542
+ const activeBatch = (live.state.batches ?? []).find((batch) => batch.published_plan_digest === undefined);
543
+ if (activeBatch !== undefined || live.state.batch_loop?.pending !== false) {
544
+ return refusal("plan-exec.plan-done", "la corrida aún tiene un batch abierto o no cerró el ciclo de batches", canonicalJson({
545
+ code: "PLAN_EXEC_DONE_BATCH_PENDING",
546
+ active_batch: activeBatch?.id ?? null,
547
+ batch_loop: live.state.batch_loop ?? null,
548
+ }));
549
+ }
550
+ const root = await resolveWorkspaceRoot(deps.fs, deps.env, deps.paths);
551
+ let text;
552
+ try {
553
+ text = await deps.fs.readText(join(root, run.scope.plan));
554
+ }
555
+ catch {
556
+ return refusal("plan-exec.plan-done", `no se puede leer '${run.scope.plan}'`, canonicalJson({ code: "PLAN_EXEC_DONE_PLAN_UNREADABLE", plan: run.scope.plan }));
557
+ }
558
+ const closure = `validación final, commits e integración acreditados por la corrida ${run.session}`;
559
+ const prepared = preparePlanExecDoneSeal(text, { plan: run.scope.plan, closure });
560
+ if (!prepared.ok) {
561
+ return refusal("plan-exec.plan-done", `${prepared.failure.message} — ${prepared.failure.action}`, canonicalJson({ failure: prepared.failure }));
562
+ }
563
+ const proposal = sealProposal({
564
+ operation: "plan-exec.plan-done",
565
+ artifacts: [{ path: run.scope.plan, content: prepared.prepared.content, overwrite: true }],
566
+ bases: [{ path: run.scope.plan, digest: prepared.prepared.before_digest }],
567
+ effects: ["mutate_overwrite"],
568
+ requiresApproval: [],
569
+ });
570
+ const applied = await applyLocalProposal(deps.fs, deps.paths, {
571
+ root,
572
+ proposal,
573
+ approval: { digest: proposal.digest, granted: [] },
574
+ selfAuthorized: ["mutate_overwrite"],
575
+ // The index is re-read while the document publication holds the workspace
576
+ // lock. This closes the decision-note race: a new compensatory obligation
577
+ // cannot appear between the run's earlier reading and a `done` write.
578
+ precondition: () => planDonePrecondition(deps, run.scope?.plan ?? ""),
579
+ });
580
+ if (!applied.ok) {
581
+ return refusal("plan-exec.plan-done", `${applied.failure.message} — ${applied.failure.action}`, canonicalJson({ failure: applied.failure }));
582
+ }
583
+ return {
584
+ ok: true,
585
+ summary: applied.result.already_applied
586
+ ? `${run.scope.plan} ya tenía el sello done de esta corrida`
587
+ : `${run.scope.plan} sellado done con su línea de cierre`,
588
+ output: canonicalJson({
589
+ plan: run.scope.plan,
590
+ closure,
591
+ written: applied.result.written,
592
+ already_applied: applied.result.already_applied,
593
+ }),
594
+ // A recovered no-op still attests that the exact overwrite is already on
595
+ // disk, like batch publication's already-applied path.
596
+ effects: ["mutate_overwrite"],
597
+ };
598
+ }
599
+ /** The documentary checks that must pass in the same critical section as done. */
600
+ async function planDonePrecondition(deps, path) {
601
+ const index = await buildWorklineIndex(deps.fs, deps.env, deps.paths, { git: deps.git });
602
+ if (index.docs_canon_error !== undefined) {
603
+ return {
604
+ code: "PLAN_EXEC_DONE_DOCS_CANON_INVALID",
605
+ message: `no se puede comprobar el cierre: ${index.docs_canon_error}`,
606
+ action: "corregí el canon documental antes de volver a sellar el plan",
607
+ };
608
+ }
609
+ const plan = index.plans.find((candidate) => candidate.file === path);
610
+ if (plan === undefined) {
611
+ return {
612
+ code: "PLAN_EXEC_DONE_PLAN_MISSING",
613
+ message: `el plan '${path}' no está en el índice documental`,
614
+ action: "restaurá el plan en el directorio documental configurado y reintentá",
615
+ };
616
+ }
617
+ if (plan.tasks_done !== plan.tasks_total || plan.phases_validated !== plan.phases_total) {
618
+ return {
619
+ code: "PLAN_EXEC_DONE_COUNTERS_OPEN",
620
+ message: `${path} no está acreditado por completo (${plan.tasks_done}/${plan.tasks_total}, fases ${plan.phases_validated}/${plan.phases_total})`,
621
+ action: "cerrá los batches pendientes; el sello final no acredita tareas ni fases",
622
+ };
623
+ }
624
+ if (plan.reconciliation !== null && !plan.reconciliation.closable) {
625
+ return {
626
+ code: "PLAN_EXEC_DONE_RECONCILIATION_PENDING",
627
+ message: `${path} conserva obligaciones de reconciliación`,
628
+ action: `resolvé la compensación desde ${plan.reconciliation.resume_point ?? "su punto de reanudación"} antes de cerrar`,
629
+ };
630
+ }
631
+ if (plan.baseline.status === "divergent" ||
632
+ plan.baseline.status === "malformed" ||
633
+ plan.baseline.status === "unresolved") {
634
+ return {
635
+ code: "PLAN_EXEC_DONE_BASELINE_INVALID",
636
+ message: `${path} no tiene un baseline ejecutable (${plan.baseline.status})`,
637
+ action: plan.baseline.status === "divergent"
638
+ ? `volvé a /w:plan-refine ${path} antes de cerrar`
639
+ : "restaurá un baseline legible y su spec antes de cerrar",
640
+ };
641
+ }
642
+ return null;
643
+ }
644
+ /**
645
+ * The close transition may validate a phase, but it may never erase a blocker to
646
+ * make that true. A blocked phase remains a typed refusal until its actual
647
+ * blocker has been resolved through the normal plan/deviation route.
648
+ */
649
+ function phaseUpdatesForClosedBatch(text, batch) {
650
+ const phases = new Map(parsePhases(text).items.map((phase) => [phase.n, phase]));
651
+ for (const number of batch.phases) {
652
+ const phase = phases.get(number);
653
+ if (phase === undefined) {
654
+ return {
655
+ ok: false,
656
+ failure: {
657
+ code: "PLAN_EXEC_BATCH_PHASE_UNKNOWN",
658
+ message: `el batch nombra F${number}, que ya no puede leerse del plan`,
659
+ action: "re-inferí el batch sobre el plan vigente; no se cambia una fase que el CLI no puede ubicar",
660
+ },
661
+ };
662
+ }
663
+ if (phase.state === "bloqueada" || phase.blocker !== null) {
664
+ return {
665
+ ok: false,
666
+ failure: {
667
+ code: "PLAN_EXEC_BATCH_PHASE_BLOCKED",
668
+ message: `F${phase.n} conserva un bloqueo y no puede acreditarse como validada`,
669
+ action: "resolvé o escalá el bloqueo; el cierre de batch no borra razones de bloqueo",
670
+ },
671
+ };
672
+ }
673
+ }
674
+ return {
675
+ ok: true,
676
+ // The transition follows completed validation/review, so this is the one
677
+ // allowed state change. `blocker` stays undefined: the publisher preserves
678
+ // document evidence instead of deleting it by convention.
679
+ updates: batch.phases.map((phase) => ({ phase, state: "validada" })),
680
+ };
681
+ }
682
+ function inferNextBatch(text, state) {
683
+ // `inferPlanExecBatch` itself validates that the phase has real, uniquely
684
+ // labelled Tn.m tasks. We only choose the first still-open phase from the
685
+ // document, which is a deterministic batch boundary rather than a claimed one.
686
+ const openPhase = parseTasks(text).items.find((task) => task.status === "open" && task.phase !== undefined)?.phase;
687
+ if (openPhase === undefined) {
688
+ const unresolved = parsePhases(text).items.find((phase) => phase.state !== "validada");
689
+ if (unresolved !== undefined) {
690
+ return {
691
+ ok: false,
692
+ failure: {
693
+ code: "PLAN_EXEC_BATCH_PHASE_UNRESOLVED",
694
+ message: `F${unresolved.n} sigue '${unresolved.state}' pero no tiene tareas abiertas acreditables`,
695
+ action: "normalizá la fase con plan-refine; no se salta a la validación final sobre una fase no validada",
696
+ },
697
+ };
698
+ }
699
+ return {
700
+ ok: false,
701
+ failure: {
702
+ code: "PLAN_EXEC_BATCH_NONE_OPEN",
703
+ message: "el plan no tiene una fase con tareas abiertas que este batch pueda acreditar",
704
+ action: "el batch ya está cerrado: reanudá la corrida para que exponga la validación final",
705
+ },
706
+ };
707
+ }
708
+ const iteration = Math.max(0, ...(state.batches ?? []).map((batch) => batch.iteration)) + 1;
709
+ return inferPlanExecBatch(text, {
710
+ id: `batch-${iteration}`,
711
+ iteration,
712
+ mode: "continuous",
713
+ phases: [openPhase],
714
+ });
715
+ }
257
716
  /**
258
717
  * Close the run's session — and refuse to, while it still holds a unit.
259
718
  *
@@ -1 +1 @@
1
- {"version":3,"file":"internal-actions.js","sourceRoot":"","sources":["../../../src/application/flow/internal-actions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAUH,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAqB,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAsB,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAyDzE,MAAM,UAAU,sBAAsB,CAAC,IAAwB;IAC7D,OAAO,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QACzB,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;YACvB,KAAK,iBAAiB;gBACpB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;YACrB,KAAK,mBAAmB;gBACtB,OAAO,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;YACjD,KAAK,eAAe;gBAClB,OAAO,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC1B,KAAK,iBAAiB;gBACpB,OAAO,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAChC,KAAK,kBAAkB;gBACrB,OAAO,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,WAAW,CACxB,IAAwB,EACxB,GAAsB;IAEtB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACxB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,OAAO,CACZ,iBAAiB,EACjB,kEAAkE,EAClE,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAC/B,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClC,wEAAwE;QACxE,2EAA2E;QAC3E,4BAA4B;QAC5B,IAAI,KAAK,KAAK,WAAW;YAAE,SAAS;QACpC,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAChE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CACnD,CAAC;QACF,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;YACtB,OAAO,OAAO,CACZ,iBAAiB,EACjB,GAAG,KAAK,KAAK,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,EACpF,aAAa,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CACpD,CAAC;QACJ,CAAC;QACD,4EAA4E;QAC5E,2EAA2E;QAC3E,uDAAuD;QACvD,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;YAC3B,OAAO,OAAO,CACZ,iBAAiB,EACjB,GAAG,KAAK,yCAAyC,EACjD,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CACjC,CAAC;QACJ,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,eAAe,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC7G,MAAM,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QAC5D,gFAAgF;QAChF,8EAA8E;QAC9E,kFAAkF;QAClF,OAAO,EAAE,CAAC,gBAAgB,CAAC;KAC5B,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,OAAO,CACpB,IAAwB,EACxB,GAAsB;IAEtB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC9B,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,OAAO,CACZ,kBAAkB,EAClB,4DAA4D,EAC5D,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAClC,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE;QAC5D,IAAI;QACJ,QAAQ;QACR,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,iBAAiB,EAAE;QAC1E,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CACrC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CACzD;QACD,8EAA8E;QAC9E,wEAAwE;QACxE,2EAA2E;QAC3E,cAAc,EAAE,CAAC,YAAY,EAAE,EAAE,CAC/B,iBAAiB,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,IAAI,CACnF,GAAG,EAAE,CAAC,SAAS,CAChB;KACJ,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,OAAO,OAAO,CACZ,kBAAkB,EAClB,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EACxD,aAAa,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CACtE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3D,OAAO;QACL,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,MAAM,CAAC,eAAe;YAC7B,CAAC,CAAC,oCAAoC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc;YAC3E,CAAC,CAAC,cAAc,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC7C,MAAM,EAAE,aAAa,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC;QAC3E,yEAAyE;QACzE,6EAA6E;QAC7E,iEAAiE;QACjE,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;KAC7B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,KAAK,CAAC,IAAwB;IAC3C,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,OAAO;QACL,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,YAAY,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,KAAK,YAAY,MAAM,CAAC,eAAe,sBAAsB,MAAM,CAAC,OAAO,aAAa;QAC3I,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC;QAC3B,OAAO,EAAE,CAAC,WAAW,CAAC;KACvB,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,SAAS,CACtB,IAAwB,EACxB,GAAsB,EACtB,IAA8B;IAE9B,6EAA6E;IAC7E,4EAA4E;IAC5E,wDAAwD;IACxD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE;QACtE,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IACH,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;QAC7B,OAAO,OAAO,CACZ,mBAAmB,EACnB,kCAAkC,GAAG,CAAC,IAAI,GAAG,EAC7C,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QACtC,OAAO,OAAO,CACZ,mBAAmB,EACnB,cAAc,MAAM,CAAC,OAAO,0BAA0B,EACtD,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,OAAO;YACL,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,UAAU,MAAM,CAAC,OAAO,0BAA0B,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,eAAe,MAAM,CAAC,SAAS,CAAC,gBAAgB,aAAa;YAChK,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,cAAc;SACxB,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAClG,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACvD,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,mBAAmB,EAAE,kBAAkB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACpF,CAAC;IACD,gFAAgF;IAChF,+EAA+E;IAC/E,iFAAiF;IACjF,iFAAiF;IACjF,wDAAwD;IACxD,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,OAAO,OAAO,CACZ,mBAAmB,EACnB,2DAA2D,EAC3D,MAAM,CACP,CAAC;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,UAAU,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,YAAY;QAC5H,MAAM;QACN,OAAO,EAAE,cAAc;KACxB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,cAAc,GAAkB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;AAEtE;;;;;;;GAOG;AACH,sFAAsF;AACtF,MAAM,iBAAiB,GAAG,sCAAsC,CAAC;AAEjE;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAC;IACzD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,OAAO,GACX,uBAAuB,CAAC,OAAO,EAAE,kBAAkB,CAAC;QACpD,uBAAuB,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;IAC9D,OAAO,OAAO,KAAK,SAAS,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAClD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,OAAO,GAAI,KAA+B,CAAC,OAAO,CAAC;IACzD,OAAO,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,KAAK,CAClB,IAAwB,EACxB,GAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,eAAe,CAClC,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,KAAK,EACV,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAC3C,KAAK,IAAI,EAAE;QACT,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAChE,EAAE,MAAM,EAAE,MAAM,EAAE,CACnB,CAAC;QACF,4EAA4E;QAC5E,gEAAgE;QAChE,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAClE,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC,CACF,CAAC;IACF,IAAI,aAAa,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;QAChC,OAAO,OAAO,CACZ,eAAe,EACf,GAAG,IAAI,CAAC,MAAM,sBAAsB,IAAI,CAAC,SAAS,GAAG,EACrD,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,cAAc,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QACzF,OAAO,OAAO,CAAC,eAAe,EAAE,uBAAuB,GAAG,EAAE,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC;IACnC,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,MAAM;QACjB,OAAO,EAAE,UAAU,MAAM,CAAC,MAAM,WAAW,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;QAC5I,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC;QAC7B,+EAA+E;QAC/E,wDAAwD;QACxD,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE;KACrE,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,SAAiB,EAAE,OAAe,EAAE,MAAc;IACjE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,SAAS,KAAK,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"internal-actions.js","sourceRoot":"","sources":["../../../src/application/flow/internal-actions.ts"],"names":[],"mappings":"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"}