@stigmer/runner 3.15.0 → 3.15.2-dev.20260913223433

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 (518) hide show
  1. package/README.md +2 -4
  2. package/dist/.build-fingerprint +1 -1
  3. package/dist/__test-utils__/execution-record-fixture.d.ts +14 -0
  4. package/dist/__test-utils__/execution-record-fixture.js +4 -0
  5. package/dist/__test-utils__/execution-record-fixture.js.map +1 -1
  6. package/dist/__test-utils__/file-review-projection.d.ts +40 -0
  7. package/dist/__test-utils__/file-review-projection.js +136 -0
  8. package/dist/__test-utils__/file-review-projection.js.map +1 -0
  9. package/dist/__test-utils__/harness-contract/types.d.ts +23 -1
  10. package/dist/__test-utils__/harness-contract/types.js +15 -0
  11. package/dist/__test-utils__/harness-contract/types.js.map +1 -1
  12. package/dist/__test-utils__/hermetic-activity.d.ts +44 -12
  13. package/dist/__test-utils__/hermetic-activity.js +52 -14
  14. package/dist/__test-utils__/hermetic-activity.js.map +1 -1
  15. package/dist/__test-utils__/model-registry-fixture.d.ts +32 -7
  16. package/dist/__test-utils__/model-registry-fixture.js +31 -7
  17. package/dist/__test-utils__/model-registry-fixture.js.map +1 -1
  18. package/dist/__test-utils__/turn-input-fixture.d.ts +1 -1
  19. package/dist/__test-utils__/turn-input-fixture.js +1 -1
  20. package/dist/__test-utils__/turn-input-fixture.js.map +1 -1
  21. package/dist/activities/call-agent.js +2 -2
  22. package/dist/activities/call-agent.js.map +1 -1
  23. package/dist/activities/execute-cursor/__test-utils__/contract-subject.js +45 -3
  24. package/dist/activities/execute-cursor/__test-utils__/contract-subject.js.map +1 -1
  25. package/dist/activities/execute-cursor/__test-utils__/hermetic-cursor.d.ts +0 -9
  26. package/dist/activities/execute-cursor/__test-utils__/hermetic-cursor.js +2 -41
  27. package/dist/activities/execute-cursor/__test-utils__/hermetic-cursor.js.map +1 -1
  28. package/dist/activities/execute-cursor/adapter.d.ts +7 -5
  29. package/dist/activities/execute-cursor/adapter.js +7 -5
  30. package/dist/activities/execute-cursor/adapter.js.map +1 -1
  31. package/dist/activities/execute-cursor/approval-policy.d.ts +5 -2
  32. package/dist/activities/execute-cursor/approval-policy.js +5 -2
  33. package/dist/activities/execute-cursor/approval-policy.js.map +1 -1
  34. package/dist/activities/execute-cursor/approval-state.d.ts +16 -8
  35. package/dist/activities/execute-cursor/approval-state.js +6 -3
  36. package/dist/activities/execute-cursor/approval-state.js.map +1 -1
  37. package/dist/activities/execute-cursor/cas-observations.d.ts +14 -2
  38. package/dist/activities/execute-cursor/cas-observations.js +19 -2
  39. package/dist/activities/execute-cursor/cas-observations.js.map +1 -1
  40. package/dist/activities/execute-cursor/cursor-capabilities.d.ts +8 -4
  41. package/dist/activities/execute-cursor/cursor-capabilities.js +21 -4
  42. package/dist/activities/execute-cursor/cursor-capabilities.js.map +1 -1
  43. package/dist/activities/execute-cursor/message-translator.d.ts +12 -20
  44. package/dist/activities/execute-cursor/message-translator.js +19 -32
  45. package/dist/activities/execute-cursor/message-translator.js.map +1 -1
  46. package/dist/activities/execute-cursor/prompt-builder.d.ts +48 -58
  47. package/dist/activities/execute-cursor/prompt-builder.js +76 -95
  48. package/dist/activities/execute-cursor/prompt-builder.js.map +1 -1
  49. package/dist/activities/execute-cursor/turn-boundary.d.ts +27 -55
  50. package/dist/activities/execute-cursor/turn-boundary.js +30 -90
  51. package/dist/activities/execute-cursor/turn-boundary.js.map +1 -1
  52. package/dist/activities/execute-cursor/turn-settle.d.ts +11 -7
  53. package/dist/activities/execute-cursor/turn-settle.js +37 -49
  54. package/dist/activities/execute-cursor/turn-settle.js.map +1 -1
  55. package/dist/activities/execute-cursor/turn-setup.d.ts +16 -24
  56. package/dist/activities/execute-cursor/turn-setup.js +29 -59
  57. package/dist/activities/execute-cursor/turn-setup.js.map +1 -1
  58. package/dist/activities/execute-cursor/turn-stream.d.ts +3 -8
  59. package/dist/activities/execute-cursor/turn-stream.js +9 -22
  60. package/dist/activities/execute-cursor/turn-stream.js.map +1 -1
  61. package/dist/activities/execute-cursor/turn.js +5 -1
  62. package/dist/activities/execute-cursor/turn.js.map +1 -1
  63. package/dist/activities/execute-deep-agent/__test-utils__/contract-subject.d.ts +93 -0
  64. package/dist/activities/execute-deep-agent/__test-utils__/contract-subject.js +348 -0
  65. package/dist/activities/execute-deep-agent/__test-utils__/contract-subject.js.map +1 -0
  66. package/dist/activities/execute-deep-agent/__test-utils__/hermetic-deep-agent.d.ts +170 -0
  67. package/dist/activities/execute-deep-agent/__test-utils__/hermetic-deep-agent.js +225 -0
  68. package/dist/activities/execute-deep-agent/__test-utils__/hermetic-deep-agent.js.map +1 -0
  69. package/dist/activities/execute-deep-agent/__test-utils__/hitl-script.d.ts +24 -0
  70. package/dist/activities/execute-deep-agent/__test-utils__/hitl-script.js +41 -0
  71. package/dist/activities/execute-deep-agent/__test-utils__/hitl-script.js.map +1 -0
  72. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model-module.d.ts +54 -0
  73. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model-module.js +72 -0
  74. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model-module.js.map +1 -0
  75. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model.d.ts +187 -23
  76. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model.js +238 -27
  77. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model.js.map +1 -1
  78. package/dist/activities/execute-deep-agent/adapter.d.ts +41 -0
  79. package/dist/activities/execute-deep-agent/adapter.js +78 -0
  80. package/dist/activities/execute-deep-agent/adapter.js.map +1 -0
  81. package/dist/activities/execute-deep-agent/cas-capture-observer.d.ts +8 -0
  82. package/dist/activities/execute-deep-agent/cas-capture-observer.js +9 -0
  83. package/dist/activities/execute-deep-agent/cas-capture-observer.js.map +1 -1
  84. package/dist/activities/execute-deep-agent/deep-agent-capabilities.d.ts +31 -0
  85. package/dist/activities/execute-deep-agent/deep-agent-capabilities.js +40 -0
  86. package/dist/activities/execute-deep-agent/deep-agent-capabilities.js.map +1 -0
  87. package/dist/activities/execute-deep-agent/execution-state.d.ts +4 -11
  88. package/dist/activities/execute-deep-agent/execution-state.js +4 -12
  89. package/dist/activities/execute-deep-agent/execution-state.js.map +1 -1
  90. package/dist/activities/execute-deep-agent/hitl.d.ts +49 -47
  91. package/dist/activities/execute-deep-agent/hitl.js +77 -103
  92. package/dist/activities/execute-deep-agent/hitl.js.map +1 -1
  93. package/dist/activities/execute-deep-agent/prompt-builder.d.ts +51 -23
  94. package/dist/activities/execute-deep-agent/prompt-builder.js +115 -76
  95. package/dist/activities/execute-deep-agent/prompt-builder.js.map +1 -1
  96. package/dist/activities/execute-deep-agent/status-builder-shared.d.ts +18 -32
  97. package/dist/activities/execute-deep-agent/status-builder-shared.js +10 -65
  98. package/dist/activities/execute-deep-agent/status-builder-shared.js.map +1 -1
  99. package/dist/activities/execute-deep-agent/streaming-side-effects.d.ts +10 -8
  100. package/dist/activities/execute-deep-agent/streaming-side-effects.js +12 -14
  101. package/dist/activities/execute-deep-agent/streaming-side-effects.js.map +1 -1
  102. package/dist/activities/execute-deep-agent/subagent-tracker.d.ts +36 -13
  103. package/dist/activities/execute-deep-agent/subagent-tracker.js +76 -39
  104. package/dist/activities/execute-deep-agent/subagent-tracker.js.map +1 -1
  105. package/dist/activities/execute-deep-agent/subagent-transformer.d.ts +25 -28
  106. package/dist/activities/execute-deep-agent/subagent-transformer.js +29 -82
  107. package/dist/activities/execute-deep-agent/subagent-transformer.js.map +1 -1
  108. package/dist/activities/execute-deep-agent/subagent-wiring.d.ts +3 -2
  109. package/dist/activities/execute-deep-agent/subagent-wiring.js +2 -2
  110. package/dist/activities/execute-deep-agent/subagent-wiring.js.map +1 -1
  111. package/dist/activities/execute-deep-agent/turn-settle.d.ts +42 -0
  112. package/dist/activities/execute-deep-agent/turn-settle.js +146 -0
  113. package/dist/activities/execute-deep-agent/turn-settle.js.map +1 -0
  114. package/dist/activities/execute-deep-agent/turn-setup.d.ts +212 -0
  115. package/dist/activities/execute-deep-agent/turn-setup.js +430 -0
  116. package/dist/activities/execute-deep-agent/turn-setup.js.map +1 -0
  117. package/dist/activities/execute-deep-agent/turn-stream.d.ts +97 -0
  118. package/dist/activities/execute-deep-agent/turn-stream.js +242 -0
  119. package/dist/activities/execute-deep-agent/turn-stream.js.map +1 -0
  120. package/dist/activities/execute-deep-agent/turn.d.ts +42 -0
  121. package/dist/activities/execute-deep-agent/turn.js +116 -0
  122. package/dist/activities/execute-deep-agent/turn.js.map +1 -0
  123. package/dist/activities/execute-deep-agent/v3-event-recorder.d.ts +6 -5
  124. package/dist/activities/execute-deep-agent/v3-event-recorder.js +6 -5
  125. package/dist/activities/execute-deep-agent/v3-event-recorder.js.map +1 -1
  126. package/dist/activities/execute-deep-agent/v3-events.d.ts +1 -1
  127. package/dist/activities/execute-deep-agent/v3-events.js +1 -1
  128. package/dist/activities/execute-deep-agent/v3-status-builder.d.ts +60 -17
  129. package/dist/activities/execute-deep-agent/v3-status-builder.js +72 -57
  130. package/dist/activities/execute-deep-agent/v3-status-builder.js.map +1 -1
  131. package/dist/harness/approval-decisions.d.ts +61 -0
  132. package/dist/harness/approval-decisions.js +102 -0
  133. package/dist/harness/approval-decisions.js.map +1 -0
  134. package/dist/harness/capabilities.d.ts +16 -5
  135. package/dist/harness/capabilities.js +9 -0
  136. package/dist/harness/capabilities.js.map +1 -1
  137. package/dist/harness/capture.d.ts +144 -0
  138. package/dist/harness/capture.js +219 -0
  139. package/dist/harness/capture.js.map +1 -0
  140. package/dist/harness/persist-chokepoint.d.ts +19 -4
  141. package/dist/harness/persist-chokepoint.js +17 -4
  142. package/dist/harness/persist-chokepoint.js.map +1 -1
  143. package/dist/harness/run-turn.js +115 -29
  144. package/dist/harness/run-turn.js.map +1 -1
  145. package/dist/harness/terminal-table.d.ts +40 -11
  146. package/dist/harness/terminal-table.js +58 -19
  147. package/dist/harness/terminal-table.js.map +1 -1
  148. package/dist/harness/turn-context.d.ts +141 -76
  149. package/dist/harness/turn-context.js +194 -99
  150. package/dist/harness/turn-context.js.map +1 -1
  151. package/dist/harness/types.d.ts +65 -12
  152. package/dist/harness/types.js +8 -2
  153. package/dist/harness/types.js.map +1 -1
  154. package/dist/harness-adapters.d.ts +12 -8
  155. package/dist/harness-adapters.js +17 -9
  156. package/dist/harness-adapters.js.map +1 -1
  157. package/dist/middleware/approval-gate.d.ts +1 -1
  158. package/dist/middleware/approval-gate.js +1 -1
  159. package/dist/middleware/approval-gate.js.map +1 -1
  160. package/dist/middleware/cost-advisory.d.ts +39 -0
  161. package/dist/middleware/{cost-cap.js → cost-advisory.js} +37 -55
  162. package/dist/middleware/cost-advisory.js.map +1 -0
  163. package/dist/middleware/index.d.ts +23 -12
  164. package/dist/middleware/index.js +26 -18
  165. package/dist/middleware/index.js.map +1 -1
  166. package/dist/middleware/types.d.ts +3 -2
  167. package/dist/runner-manager.js +1 -5
  168. package/dist/runner-manager.js.map +1 -1
  169. package/dist/runner.js +1 -5
  170. package/dist/runner.js.map +1 -1
  171. package/dist/shared/attachment-resolver.d.ts +41 -18
  172. package/dist/shared/attachment-resolver.js +178 -46
  173. package/dist/shared/attachment-resolver.js.map +1 -1
  174. package/dist/shared/attachment-zip.d.ts +85 -0
  175. package/dist/shared/attachment-zip.js +185 -0
  176. package/dist/shared/attachment-zip.js.map +1 -0
  177. package/dist/shared/connect-backfill.js +5 -4
  178. package/dist/shared/connect-backfill.js.map +1 -1
  179. package/dist/shared/cost-guard.d.ts +3 -3
  180. package/dist/shared/cost-guard.js +3 -3
  181. package/dist/shared/execution-status-writer.d.ts +5 -5
  182. package/dist/shared/execution-status-writer.js +5 -5
  183. package/dist/shared/extract-structured-output.d.ts +8 -7
  184. package/dist/shared/extract-structured-output.js +8 -7
  185. package/dist/shared/extract-structured-output.js.map +1 -1
  186. package/dist/shared/filereview/cas-progress.d.ts +1 -18
  187. package/dist/shared/filereview/cas-progress.js +4 -0
  188. package/dist/shared/filereview/cas-progress.js.map +1 -1
  189. package/dist/shared/filereview/cas-touched.d.ts +56 -0
  190. package/dist/shared/filereview/cas-touched.js +63 -0
  191. package/dist/shared/filereview/cas-touched.js.map +1 -0
  192. package/dist/shared/filereview/index.d.ts +2 -1
  193. package/dist/shared/filereview/index.js +2 -1
  194. package/dist/shared/filereview/index.js.map +1 -1
  195. package/dist/shared/mcp-resolver.d.ts +4 -5
  196. package/dist/shared/mcp-resolver.js +4 -5
  197. package/dist/shared/mcp-resolver.js.map +1 -1
  198. package/dist/shared/persist-decision.d.ts +3 -4
  199. package/dist/shared/persist-decision.js +3 -4
  200. package/dist/shared/persist-decision.js.map +1 -1
  201. package/dist/shared/plan-mode-permissions.d.ts +2 -2
  202. package/dist/shared/plan-mode-permissions.js +2 -2
  203. package/dist/shared/plan-mode-prompt.d.ts +1 -1
  204. package/dist/shared/plan-mode-prompt.js +1 -1
  205. package/dist/shared/prompt-sections.d.ts +163 -0
  206. package/dist/shared/prompt-sections.js +164 -0
  207. package/dist/shared/prompt-sections.js.map +1 -0
  208. package/dist/shared/skill-resolver.d.ts +4 -2
  209. package/dist/shared/skill-resolver.js +4 -2
  210. package/dist/shared/skill-resolver.js.map +1 -1
  211. package/dist/shared/tool-rounds.d.ts +32 -0
  212. package/dist/shared/tool-rounds.js +43 -0
  213. package/dist/shared/tool-rounds.js.map +1 -1
  214. package/dist/shared/tool-row.d.ts +34 -0
  215. package/dist/shared/tool-row.js +52 -0
  216. package/dist/shared/tool-row.js.map +1 -1
  217. package/dist/shared/workspace/session-provision.d.ts +3 -3
  218. package/dist/shared/workspace/session-provision.js +3 -3
  219. package/dist/shared/workspace/stigmer-link.d.ts +3 -3
  220. package/dist/shared/workspace/stigmer-link.js +3 -3
  221. package/dist/shared/workspace/writeback-coordinator.d.ts +15 -22
  222. package/dist/shared/workspace/writeback-coordinator.js +16 -53
  223. package/dist/shared/workspace/writeback-coordinator.js.map +1 -1
  224. package/dist/tools/index.d.ts +1 -1
  225. package/dist/tools/index.js +1 -1
  226. package/package.json +4 -4
  227. package/src/__test-utils__/__tests__/harness-contract-self-check.test.ts +1 -0
  228. package/src/__test-utils__/execution-record-fixture.ts +18 -2
  229. package/src/__test-utils__/file-review-projection.ts +156 -0
  230. package/src/__test-utils__/git-workspace-fixture.ts +58 -0
  231. package/src/__test-utils__/harness-boot-order-child.ts +7 -2
  232. package/src/__test-utils__/harness-contract/contract.ts +33 -20
  233. package/src/__test-utils__/harness-contract/recording-sink.ts +11 -1
  234. package/src/__test-utils__/harness-contract/runtime-contract.ts +328 -10
  235. package/src/__test-utils__/harness-contract/scripted-adapter.ts +38 -6
  236. package/src/__test-utils__/harness-contract/types.ts +27 -3
  237. package/src/__test-utils__/hermetic-activity.ts +52 -14
  238. package/src/__test-utils__/model-registry-fixture.ts +32 -7
  239. package/src/__test-utils__/module-specifiers.ts +24 -0
  240. package/src/__test-utils__/turn-input-fixture.ts +2 -2
  241. package/src/__tests__/harness-boot-order.test.ts +9 -2
  242. package/src/activities/call-agent.ts +2 -2
  243. package/src/activities/execute-cursor/__test-utils__/contract-subject.ts +47 -3
  244. package/src/activities/execute-cursor/__test-utils__/hermetic-cursor.ts +2 -48
  245. package/src/activities/execute-cursor/__tests__/approval-decisions-agree.test.ts +1 -1
  246. package/src/activities/execute-cursor/__tests__/approval-gate.test.ts +6 -1
  247. package/src/activities/execute-cursor/__tests__/build-prompt.test.ts +52 -27
  248. package/src/activities/execute-cursor/__tests__/cas-observations.test.ts +25 -0
  249. package/src/activities/execute-cursor/__tests__/goldens/prompt.enhanced.everything.prompt.md +166 -0
  250. package/src/activities/execute-cursor/__tests__/goldens/prompt.enhanced.plan-mode.prompt.md +186 -0
  251. package/src/activities/execute-cursor/__tests__/goldens/prompt.hitl.recovery.prompt.md +191 -0
  252. package/src/activities/execute-cursor/__tests__/goldens/prompt.hitl.reinvocation.prompt.md +13 -0
  253. package/src/activities/execute-cursor/__tests__/goldens/prompt.resumed.prefixed.prompt.md +32 -0
  254. package/src/activities/execute-cursor/__tests__/goldens/prompt.resumed.raw.prompt.md +1 -0
  255. package/src/activities/execute-cursor/__tests__/hermetic/file-review-capture.test.ts +1 -2
  256. package/src/activities/execute-cursor/__tests__/hermetic/goldens/sdk-error-at-create.status.json +4 -0
  257. package/src/activities/execute-cursor/__tests__/hermetic/harness-contract.test.ts +24 -4
  258. package/src/activities/execute-cursor/__tests__/hermetic/stream-self-stop-arms.test.ts +6 -5
  259. package/src/activities/execute-cursor/__tests__/hermetic/thrown-error-arms.test.ts +9 -0
  260. package/src/activities/execute-cursor/__tests__/hitl-resume-history.test.ts +11 -8
  261. package/src/activities/execute-cursor/__tests__/prompt-goldens.test.ts +229 -0
  262. package/src/activities/execute-cursor/__tests__/same-identity-reproposal.test.ts +3 -3
  263. package/src/activities/execute-cursor/__tests__/sequential-gate-resume.test.ts +2 -2
  264. package/src/activities/execute-cursor/__tests__/turn-boundary.test.ts +78 -234
  265. package/src/activities/execute-cursor/__tests__/turn-stream.test.ts +1 -26
  266. package/src/activities/execute-cursor/adapter.ts +7 -5
  267. package/src/activities/execute-cursor/approval-policy.ts +5 -2
  268. package/src/activities/execute-cursor/approval-state.ts +16 -8
  269. package/src/activities/execute-cursor/cas-observations.ts +20 -2
  270. package/src/activities/execute-cursor/cursor-capabilities.ts +24 -5
  271. package/src/activities/execute-cursor/message-translator.ts +29 -41
  272. package/src/activities/execute-cursor/prompt-builder.ts +99 -157
  273. package/src/activities/execute-cursor/turn-boundary.ts +34 -140
  274. package/src/activities/execute-cursor/turn-settle.ts +37 -51
  275. package/src/activities/execute-cursor/turn-setup.ts +30 -70
  276. package/src/activities/execute-cursor/turn-stream.ts +8 -31
  277. package/src/activities/execute-cursor/turn.ts +5 -1
  278. package/src/activities/execute-deep-agent/__test-utils__/contract-subject.ts +391 -0
  279. package/src/activities/execute-deep-agent/__test-utils__/hermetic-deep-agent.ts +313 -0
  280. package/src/activities/execute-deep-agent/__test-utils__/hitl-script.ts +48 -0
  281. package/src/activities/execute-deep-agent/__test-utils__/scripted-model-module.ts +85 -0
  282. package/src/activities/execute-deep-agent/__test-utils__/scripted-model.ts +383 -36
  283. package/src/activities/execute-deep-agent/__tests__/adapter-graph-is-sdk-free.test.ts +76 -0
  284. package/src/activities/execute-deep-agent/__tests__/adapter-is-temporal-free.test.ts +47 -0
  285. package/src/activities/execute-deep-agent/__tests__/adapter.test.ts +80 -0
  286. package/src/activities/execute-deep-agent/__tests__/cas-capture-backend.test.ts +1 -1
  287. package/src/activities/execute-deep-agent/__tests__/execution-state-extended.test.ts +0 -2
  288. package/src/activities/execute-deep-agent/__tests__/execution-state.test.ts +0 -3
  289. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.build-from-plan.prompt.md +172 -0
  290. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.everything.prompt.md +167 -0
  291. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.minimal.prompt.md +36 -0
  292. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.plan-mode.prompt.md +178 -0
  293. package/src/activities/execute-deep-agent/__tests__/goldens/system-prompt.skills-below-threshold.prompt.md +158 -0
  294. package/src/activities/execute-deep-agent/__tests__/hermetic/file-review-capture.test.ts +210 -0
  295. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/approve-all-lease.turn1.status.json +74 -0
  296. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/approve-all-lease.turn2.status.json +104 -0
  297. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/approve.turn2.status.json +78 -0
  298. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/file-review-capture.status.json +138 -0
  299. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/gate.turn1.status.json +68 -0
  300. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/inline-artifact.turn1.status.json +154 -0
  301. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/inline-artifact.turn2.status.json +116 -0
  302. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/pause.loop.after-tool.status.json +69 -0
  303. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/pause.loop.mid-tool.status.json +67 -0
  304. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/plain-turn.status.json +47 -0
  305. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/platform-stop.status.json +68 -0
  306. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/recursion-limit.persisted.status.json +280 -0
  307. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/reject.turn2.status.json +77 -0
  308. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/resolution-error.status.json +18 -0
  309. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/sequential-gates.turn2.status.json +99 -0
  310. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/sequential-gates.turn3.status.json +109 -0
  311. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/skip.turn2.status.json +76 -0
  312. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/structured-output.text-fallback.status.json +51 -0
  313. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/structured-output.tier2.status.json +51 -0
  314. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/structured-output.tool-strategy.status.json +56 -0
  315. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/sub-agent-delegation.status.json +90 -0
  316. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/tool-call.status.json +70 -0
  317. package/src/activities/execute-deep-agent/__tests__/hermetic/goldens/worker-shutdown.status.json +71 -0
  318. package/src/activities/execute-deep-agent/__tests__/hermetic/harness-contract.test.ts +144 -0
  319. package/src/activities/execute-deep-agent/__tests__/hermetic/hitl-approve-all-lease.test.ts +184 -0
  320. package/src/activities/execute-deep-agent/__tests__/hermetic/hitl-round-trips.test.ts +203 -0
  321. package/src/activities/execute-deep-agent/__tests__/hermetic/hitl-sequential-gates.test.ts +170 -0
  322. package/src/activities/execute-deep-agent/__tests__/hermetic/inline-artifact-across-gate.test.ts +175 -0
  323. package/src/activities/execute-deep-agent/__tests__/hermetic/pause-vs-shutdown.test.ts +206 -0
  324. package/src/activities/execute-deep-agent/__tests__/hermetic/plain-turn.test.ts +142 -0
  325. package/src/activities/execute-deep-agent/__tests__/hermetic/platform-stop.test.ts +126 -0
  326. package/src/activities/execute-deep-agent/__tests__/hermetic/recursion-limit.test.ts +139 -0
  327. package/src/activities/execute-deep-agent/__tests__/hermetic/resolution-error.test.ts +122 -0
  328. package/src/activities/execute-deep-agent/__tests__/hermetic/structured-output.test.ts +236 -0
  329. package/src/activities/execute-deep-agent/__tests__/hermetic/sub-agent-delegation.test.ts +161 -0
  330. package/src/activities/execute-deep-agent/__tests__/hermetic/tool-call.test.ts +157 -0
  331. package/src/activities/execute-deep-agent/__tests__/hermetic/workspace-lock-timeout.test.ts +152 -0
  332. package/src/activities/execute-deep-agent/__tests__/hitl.test.ts +50 -122
  333. package/src/activities/execute-deep-agent/__tests__/inline-publisher.test.ts +8 -6
  334. package/src/activities/execute-deep-agent/__tests__/plan-mode-path-normalization.test.ts +2 -2
  335. package/src/activities/execute-deep-agent/__tests__/prompt-builder.test.ts +35 -35
  336. package/src/activities/execute-deep-agent/__tests__/prompt-goldens.test.ts +247 -0
  337. package/src/activities/execute-deep-agent/__tests__/scripted-model.test.ts +329 -0
  338. package/src/activities/execute-deep-agent/__tests__/status-builder-shared.test.ts +1 -20
  339. package/src/activities/execute-deep-agent/__tests__/streaming-side-effects.test.ts +78 -0
  340. package/src/activities/execute-deep-agent/__tests__/subagent-gitignored-capture.test.ts +1 -1
  341. package/src/activities/execute-deep-agent/__tests__/subagent-plan-mode-permissions.test.ts +2 -2
  342. package/src/activities/execute-deep-agent/__tests__/subagent-tracker.test.ts +57 -31
  343. package/src/activities/execute-deep-agent/__tests__/subagent-transformer.test.ts +19 -79
  344. package/src/activities/execute-deep-agent/__tests__/subagent-wiring.test.ts +15 -15
  345. package/src/activities/execute-deep-agent/__tests__/summarization-verification.test.ts +1 -1
  346. package/src/activities/execute-deep-agent/__tests__/turn-stream.test.ts +391 -0
  347. package/src/activities/execute-deep-agent/__tests__/v3-status-builder.test.ts +343 -38
  348. package/src/activities/execute-deep-agent/__tests__/vision-input.test.ts +5 -5
  349. package/src/activities/execute-deep-agent/adapter.ts +94 -0
  350. package/src/activities/execute-deep-agent/cas-capture-observer.ts +11 -0
  351. package/src/activities/execute-deep-agent/deep-agent-capabilities.ts +43 -0
  352. package/src/activities/execute-deep-agent/execution-state.ts +4 -13
  353. package/src/activities/execute-deep-agent/hitl.ts +100 -123
  354. package/src/activities/execute-deep-agent/prompt-builder.ts +141 -115
  355. package/src/activities/execute-deep-agent/status-builder-shared.ts +21 -84
  356. package/src/activities/execute-deep-agent/streaming-side-effects.ts +13 -19
  357. package/src/activities/execute-deep-agent/subagent-tracker.ts +77 -42
  358. package/src/activities/execute-deep-agent/subagent-transformer.ts +46 -105
  359. package/src/activities/execute-deep-agent/subagent-wiring.ts +5 -4
  360. package/src/activities/execute-deep-agent/turn-settle.ts +164 -0
  361. package/src/activities/execute-deep-agent/turn-setup.ts +541 -0
  362. package/src/activities/execute-deep-agent/turn-stream.ts +313 -0
  363. package/src/activities/execute-deep-agent/turn.ts +131 -0
  364. package/src/activities/execute-deep-agent/v3-event-recorder.ts +6 -5
  365. package/src/activities/execute-deep-agent/v3-events.ts +1 -1
  366. package/src/activities/execute-deep-agent/v3-status-builder.ts +84 -63
  367. package/src/harness/__tests__/approval-decisions.test.ts +116 -0
  368. package/src/harness/__tests__/capture.test.ts +268 -0
  369. package/src/harness/__tests__/mount-skills.test.ts +169 -0
  370. package/src/harness/__tests__/persist-chokepoint.test.ts +38 -2
  371. package/src/harness/__tests__/run-turn-deterministic.test.ts +94 -0
  372. package/src/harness/__tests__/run-turn.test.ts +39 -23
  373. package/src/harness/__tests__/turn-attachments-vision.test.ts +80 -0
  374. package/src/harness/__tests__/turn-context.test.ts +73 -26
  375. package/src/harness/approval-decisions.ts +104 -0
  376. package/src/harness/capabilities.ts +16 -5
  377. package/src/harness/capture.ts +301 -0
  378. package/src/harness/persist-chokepoint.ts +24 -4
  379. package/src/harness/run-turn.ts +120 -29
  380. package/src/harness/terminal-table.ts +61 -20
  381. package/src/harness/turn-context.ts +208 -111
  382. package/src/harness/types.ts +66 -12
  383. package/src/harness-adapters.ts +17 -9
  384. package/src/middleware/__tests__/approval-gate.test.ts +1 -1
  385. package/src/middleware/__tests__/cost-advisory.test.ts +113 -0
  386. package/src/middleware/approval-gate.ts +2 -2
  387. package/src/middleware/{cost-cap.ts → cost-advisory.ts} +40 -70
  388. package/src/middleware/index.ts +29 -29
  389. package/src/middleware/types.ts +3 -2
  390. package/src/runner-manager.ts +0 -8
  391. package/src/runner.ts +0 -8
  392. package/src/shared/__tests__/attachment-naming.test.ts +6 -19
  393. package/src/shared/__tests__/attachment-resolver.test.ts +158 -8
  394. package/src/shared/__tests__/attachment-zip.test.ts +236 -0
  395. package/src/shared/__tests__/bedrock-adapter.test.ts +1 -1
  396. package/src/shared/__tests__/blueprint-resolver.test.ts +43 -0
  397. package/src/shared/__tests__/cost-guard.test.ts +3 -3
  398. package/src/shared/__tests__/prompt-sections.test.ts +167 -0
  399. package/src/shared/__tests__/secret-leak-scan.test.ts +2 -2
  400. package/src/{activities/execute-deep-agent → shared}/__tests__/stamp-flowed-rows.test.ts +33 -10
  401. package/src/shared/__tests__/vertex-adapter.test.ts +1 -1
  402. package/src/shared/attachment-resolver.ts +218 -55
  403. package/src/shared/attachment-zip.ts +281 -0
  404. package/src/shared/connect-backfill.ts +9 -11
  405. package/src/shared/cost-guard.ts +3 -3
  406. package/src/shared/execution-status-writer.ts +5 -5
  407. package/src/shared/extract-structured-output.ts +8 -7
  408. package/src/shared/filereview/__tests__/capture.test.ts +86 -4
  409. package/src/shared/filereview/__tests__/cas-progress.test.ts +2 -1
  410. package/src/shared/filereview/cas-progress.ts +5 -19
  411. package/src/shared/filereview/cas-touched.ts +89 -0
  412. package/src/shared/filereview/index.ts +4 -2
  413. package/src/shared/mcp-resolver.ts +4 -5
  414. package/src/shared/persist-decision.ts +3 -4
  415. package/src/shared/plan-mode-permissions.ts +2 -2
  416. package/src/shared/plan-mode-prompt.ts +1 -1
  417. package/src/shared/prompt-sections.ts +256 -0
  418. package/src/shared/skill-resolver.ts +4 -2
  419. package/src/shared/tool-rounds.ts +48 -0
  420. package/src/shared/tool-row.ts +61 -0
  421. package/src/shared/workspace/__tests__/stigmer-link.test.ts +7 -22
  422. package/src/shared/workspace/__tests__/writeback-coordinator.test.ts +20 -61
  423. package/src/shared/workspace/session-provision.ts +3 -3
  424. package/src/shared/workspace/stigmer-link.ts +3 -3
  425. package/src/shared/workspace/writeback-coordinator.ts +16 -64
  426. package/src/tools/index.ts +1 -1
  427. package/dist/activities/execute-cursor/capture-flow.d.ts +0 -142
  428. package/dist/activities/execute-cursor/capture-flow.js +0 -285
  429. package/dist/activities/execute-cursor/capture-flow.js.map +0 -1
  430. package/dist/activities/execute-cursor/command-provenance.d.ts +0 -48
  431. package/dist/activities/execute-cursor/command-provenance.js +0 -38
  432. package/dist/activities/execute-cursor/command-provenance.js.map +0 -1
  433. package/dist/activities/execute-deep-agent/attachment-injector.d.ts +0 -134
  434. package/dist/activities/execute-deep-agent/attachment-injector.js +0 -386
  435. package/dist/activities/execute-deep-agent/attachment-injector.js.map +0 -1
  436. package/dist/activities/execute-deep-agent/command-provenance.d.ts +0 -61
  437. package/dist/activities/execute-deep-agent/command-provenance.js +0 -72
  438. package/dist/activities/execute-deep-agent/command-provenance.js.map +0 -1
  439. package/dist/activities/execute-deep-agent/environment.d.ts +0 -24
  440. package/dist/activities/execute-deep-agent/environment.js +0 -58
  441. package/dist/activities/execute-deep-agent/environment.js.map +0 -1
  442. package/dist/activities/execute-deep-agent/event-recorder.d.ts +0 -21
  443. package/dist/activities/execute-deep-agent/event-recorder.js +0 -67
  444. package/dist/activities/execute-deep-agent/event-recorder.js.map +0 -1
  445. package/dist/activities/execute-deep-agent/index.d.ts +0 -15
  446. package/dist/activities/execute-deep-agent/index.js +0 -918
  447. package/dist/activities/execute-deep-agent/index.js.map +0 -1
  448. package/dist/activities/execute-deep-agent/mcp-gate.d.ts +0 -28
  449. package/dist/activities/execute-deep-agent/mcp-gate.js +0 -22
  450. package/dist/activities/execute-deep-agent/mcp-gate.js.map +0 -1
  451. package/dist/activities/execute-deep-agent/post-stream.d.ts +0 -23
  452. package/dist/activities/execute-deep-agent/post-stream.js +0 -71
  453. package/dist/activities/execute-deep-agent/post-stream.js.map +0 -1
  454. package/dist/activities/execute-deep-agent/setup.d.ts +0 -136
  455. package/dist/activities/execute-deep-agent/setup.js +0 -767
  456. package/dist/activities/execute-deep-agent/setup.js.map +0 -1
  457. package/dist/activities/execute-deep-agent/stamp-flowed-rows.d.ts +0 -36
  458. package/dist/activities/execute-deep-agent/stamp-flowed-rows.js +0 -56
  459. package/dist/activities/execute-deep-agent/stamp-flowed-rows.js.map +0 -1
  460. package/dist/activities/execute-deep-agent/status-builder.d.ts +0 -93
  461. package/dist/activities/execute-deep-agent/status-builder.js +0 -365
  462. package/dist/activities/execute-deep-agent/status-builder.js.map +0 -1
  463. package/dist/activities/execute-deep-agent/streaming-terminal.d.ts +0 -21
  464. package/dist/activities/execute-deep-agent/streaming-terminal.js +0 -80
  465. package/dist/activities/execute-deep-agent/streaming-terminal.js.map +0 -1
  466. package/dist/activities/execute-deep-agent/streaming-v3.d.ts +0 -13
  467. package/dist/activities/execute-deep-agent/streaming-v3.js +0 -174
  468. package/dist/activities/execute-deep-agent/streaming-v3.js.map +0 -1
  469. package/dist/activities/execute-deep-agent/streaming.d.ts +0 -81
  470. package/dist/activities/execute-deep-agent/streaming.js +0 -160
  471. package/dist/activities/execute-deep-agent/streaming.js.map +0 -1
  472. package/dist/middleware/cost-cap.d.ts +0 -22
  473. package/dist/middleware/cost-cap.js.map +0 -1
  474. package/dist/middleware/graceful-stop.d.ts +0 -17
  475. package/dist/middleware/graceful-stop.js +0 -63
  476. package/dist/middleware/graceful-stop.js.map +0 -1
  477. package/dist/shared/skill-writer.d.ts +0 -75
  478. package/dist/shared/skill-writer.js +0 -207
  479. package/dist/shared/skill-writer.js.map +0 -1
  480. package/src/activities/execute-cursor/__tests__/capture-flow.test.ts +0 -1032
  481. package/src/activities/execute-cursor/__tests__/command-provenance.test.ts +0 -240
  482. package/src/activities/execute-cursor/__tests__/progress-substrate.test.ts +0 -169
  483. package/src/activities/execute-cursor/capture-flow.ts +0 -379
  484. package/src/activities/execute-cursor/command-provenance.ts +0 -73
  485. package/src/activities/execute-deep-agent/__tests__/attachment-injector.test.ts +0 -1161
  486. package/src/activities/execute-deep-agent/__tests__/command-provenance.test.ts +0 -252
  487. package/src/activities/execute-deep-agent/__tests__/environment.test.ts +0 -108
  488. package/src/activities/execute-deep-agent/__tests__/event-recorder.test.ts +0 -150
  489. package/src/activities/execute-deep-agent/__tests__/hitl-integration.test.ts +0 -226
  490. package/src/activities/execute-deep-agent/__tests__/hitl-reject.test.ts +0 -318
  491. package/src/activities/execute-deep-agent/__tests__/hitl-resume-approve-all.test.ts +0 -351
  492. package/src/activities/execute-deep-agent/__tests__/hitl-resume-history.test.ts +0 -293
  493. package/src/activities/execute-deep-agent/__tests__/index.test.ts +0 -99
  494. package/src/activities/execute-deep-agent/__tests__/mcp-gate.test.ts +0 -44
  495. package/src/activities/execute-deep-agent/__tests__/post-stream.test.ts +0 -112
  496. package/src/activities/execute-deep-agent/__tests__/sequential-gate-resume.test.ts +0 -358
  497. package/src/activities/execute-deep-agent/__tests__/status-builder.test.ts +0 -1933
  498. package/src/activities/execute-deep-agent/__tests__/streaming-terminal.test.ts +0 -40
  499. package/src/activities/execute-deep-agent/__tests__/streaming-v3.test.ts +0 -597
  500. package/src/activities/execute-deep-agent/__tests__/streaming.test.ts +0 -508
  501. package/src/activities/execute-deep-agent/attachment-injector.ts +0 -627
  502. package/src/activities/execute-deep-agent/command-provenance.ts +0 -102
  503. package/src/activities/execute-deep-agent/environment.ts +0 -76
  504. package/src/activities/execute-deep-agent/event-recorder.ts +0 -95
  505. package/src/activities/execute-deep-agent/index.ts +0 -1072
  506. package/src/activities/execute-deep-agent/mcp-gate.ts +0 -37
  507. package/src/activities/execute-deep-agent/post-stream.ts +0 -109
  508. package/src/activities/execute-deep-agent/setup.ts +0 -1081
  509. package/src/activities/execute-deep-agent/stamp-flowed-rows.ts +0 -64
  510. package/src/activities/execute-deep-agent/status-builder.ts +0 -481
  511. package/src/activities/execute-deep-agent/streaming-terminal.ts +0 -106
  512. package/src/activities/execute-deep-agent/streaming-v3.ts +0 -277
  513. package/src/activities/execute-deep-agent/streaming.ts +0 -313
  514. package/src/middleware/__tests__/cost-cap.test.ts +0 -192
  515. package/src/middleware/__tests__/graceful-stop.test.ts +0 -105
  516. package/src/middleware/graceful-stop.ts +0 -86
  517. package/src/shared/__tests__/skill-writer.test.ts +0 -372
  518. package/src/shared/skill-writer.ts +0 -266
@@ -49,9 +49,11 @@ import { reportSetupProgress, slimStatus, utcTimestamp } from "../shared/status.
49
49
  import { cancelInProgressSubAgentProtos } from "../shared/subagent-rows.js";
50
50
  import { removeStigmerSymlink } from "../shared/workspace/stigmer-link.js";
51
51
  import { cancellationReasonOf, classifyTurnInterruption, getShutdownSignalForQueue, } from "../shared/worker-shutdown.js";
52
+ import { terminalizeNonExecutingDecisions } from "./approval-decisions.js";
53
+ import { captureCandidate, pinCaptureBaseline } from "./capture.js";
52
54
  import { PersistChokepoint } from "./persist-chokepoint.js";
53
55
  import { StopController } from "./stop-controller.js";
54
- import { applyTerminalArm, costCapArm, failedArm, fileReviewResolvedArm, infrastructureCancelArm, pauseArm, platformStopArm, rejectedByUserArm, stallArm, TERMINAL_COPY, unexpectedErrorArm, workerShutdownArm, workspaceLockTimeoutArm, } from "./terminal-table.js";
56
+ import { applyTerminalArm, awaitingApprovalArm, awaitingReviewArm, costCapArm, failedArm, fileReviewResolvedArm, infrastructureCancelArm, pauseArm, platformStopArm, stallArm, TERMINAL_COPY, toolCallLimitArm, unexpectedErrorArm, workerShutdownArm, workspaceLockTimeoutArm, } from "./terminal-table.js";
55
57
  import { resolveTurnContext } from "./turn-context.js";
56
58
  import { UsageAccumulator } from "./usage-accumulator.js";
57
59
  /**
@@ -109,6 +111,8 @@ async function runTurn(deps, input) {
109
111
  const frame = { primaryDir: undefined, releaseWorkspaceLock: undefined, writeback: null };
110
112
  const stop = new StopController();
111
113
  let usage;
114
+ /** The turn's capture once the baseline is pinned (capture mode only); the chokepoint reads its progress at every write. */
115
+ let capture;
112
116
  let heartbeatPhase = "setup";
113
117
  let lastActivityDetail;
114
118
  let watchdog;
@@ -121,6 +125,7 @@ async function runTurn(deps, input) {
121
125
  status,
122
126
  offload: artifactStorage ? { artifactStorage, executionId } : undefined,
123
127
  usage: () => usage,
128
+ progress: () => capture?.progress,
124
129
  heartbeat,
125
130
  onPlatformStop: () => stop.stop({ kind: "platform-stop" }),
126
131
  });
@@ -174,9 +179,6 @@ async function runTurn(deps, input) {
174
179
  console.warn(`${activityName} workspace lock timeout: execution=${executionId}`);
175
180
  return outcome;
176
181
  }
177
- case "rejected-by-user":
178
- // A reject of an irreversible action (shell/MCP) fails the execution.
179
- return settleWith(rejectedByUserArm());
180
182
  case "file-review-resolved": {
181
183
  // Push the APPROVED tree — reconcile snapped rejected files back to
182
184
  // baseline, so what finalize commits is exactly what the user kept.
@@ -189,7 +191,10 @@ async function runTurn(deps, input) {
189
191
  await chokepoint.write();
190
192
  console.log(`${activityName} file-review resume short-circuit: execution=${executionId}, ` +
191
193
  `failed=${settlement.failed}, discarded=${settlement.discardedPaths.length}`);
192
- return { kind: "return", value: slimStatus(status) };
194
+ // The execution completes here, so its answer rides the slim as it
195
+ // does from `completeTurn`: the seed carried the transcript and any
196
+ // structured output the paused turn resolved (Q-M4-8).
197
+ return { kind: "return", value: completionSlim(lastAssistantText()) };
193
198
  }
194
199
  default: {
195
200
  const exhaustive = settlement;
@@ -247,29 +252,75 @@ async function runTurn(deps, input) {
247
252
  await client.updateSession(turn.session);
248
253
  console.log(`Stored ${harnessStateId} as harness_state_id on session ${turn.sessionId}`);
249
254
  },
255
+ bindCasObservations: (read) => {
256
+ // Outside capture mode there is no capture to feed; the bind is a
257
+ // no-op, as the contract promises a harness that always binds.
258
+ if (capture)
259
+ capture.casObservations = read;
260
+ },
250
261
  };
262
+ // The capture baseline: the runtime's LAST act before the engine, after
263
+ // every write of its own into the tree (the reconcile, the mounts), so
264
+ // anything on the tree after this point is the turn's change, whoever
265
+ // wrote it (`capture.ts`). Absent outside capture mode.
266
+ capture = await pinCaptureBaseline({
267
+ status,
268
+ executionId,
269
+ workspace: turn.workspace,
270
+ fileReview: adapter.capabilities.fileReview,
271
+ artifactStorage: turn.artifactStorage,
272
+ });
251
273
  heartbeatPhase = "harness";
252
274
  const outcome = await adapter.runTurn(turn, sink);
253
275
  armedWatchdog.stop();
254
276
  heartbeatPhase = "epilogue";
277
+ // The capture boundary, ONCE, over whatever the whole turn left on the
278
+ // tree — unless a stop fired mid-turn (`interrupted`: the tree may be
279
+ // mid-edit and the pause or drain reinvokes this same turn). Before the
280
+ // decisions settle below, so the stamp reads the rows as the engine
281
+ // left them. A pending review is the outcome table's second WAITING
282
+ // cause (`awaitingReviewArm`).
283
+ const reviewPending = capture !== undefined && outcome.kind !== "interrupted"
284
+ ? await captureCandidate({
285
+ status,
286
+ executionId,
287
+ workspace: turn.workspace,
288
+ fileReview: adapter.capabilities.fileReview,
289
+ artifactStorage: turn.artifactStorage,
290
+ capture,
291
+ globalBypass: turn.mcp.leases.global,
292
+ })
293
+ : false;
294
+ // The rows whose decision never runs the tool (SKIP, REJECT) are settled
295
+ // by the runtime, once, now that the adapter has had its look at them and
296
+ // before any persist of the outcome: no engine event flips such a row, so
297
+ // without this it would persist WAITING on a finished execution. Every
298
+ // outcome passes through here (`approval-decisions.ts`).
299
+ terminalizeNonExecutingDecisions(status);
255
300
  switch (outcome.kind) {
256
301
  case "completed":
257
- return completeTurn(turn, ExecutionPhase.EXECUTION_COMPLETED);
302
+ return reviewPending ? pauseCompletedTurnForReview(turn) : completeTurn(turn, ExecutionPhase.EXECUTION_COMPLETED);
258
303
  case "cancelled":
259
- return completeTurn(turn, ExecutionPhase.EXECUTION_CANCELLED);
260
- case "awaiting_approval": {
261
- // Pause for review exactly like the native harness: the adapter put
262
- // the WAITING rows on the transcript; flip the phase, persist, and
263
- // RETURN to the workflow, which waits for the approval signal and
264
- // reinvokes.
265
- status.phase = ExecutionPhase.EXECUTION_WAITING_FOR_APPROVAL;
266
- await chokepoint.write();
267
- return { kind: "return", value: slimStatus(status) };
304
+ return reviewPending ? settleWith(awaitingReviewArm()) : completeTurn(turn, ExecutionPhase.EXECUTION_CANCELLED);
305
+ case "awaiting_approval":
306
+ // The adapter put the WAITING rows on the transcript (and a captured
307
+ // candidate, if any, rides the same write); the arm flips the phase,
308
+ // persists once, and RETURNS to the workflow, which waits for the
309
+ // approval or file-review signal and reinvokes.
310
+ return settleWith(awaitingApprovalArm());
311
+ case "tool_call_limit": {
312
+ // A review wins over the terminal (Q-M4-2): the limit's copy rides
313
+ // the transcript and the reinvocation's reconcile completes the turn.
314
+ const settledLimit = await settleWith(reviewPending ? awaitingReviewArm(toolCallLimitArm()) : toolCallLimitArm());
315
+ console.log(`${activityName} terminated (tool-call limit): execution=${executionId}${reviewPending ? ", review pending" : ""}`);
316
+ return settledLimit;
268
317
  }
269
318
  case "failed": {
270
- const settledFailure = await settleWith(failedArm(outcome.message, outcome.surface));
319
+ const arm = failedArm(outcome.message, outcome.surface);
320
+ const settledFailure = await settleWith(reviewPending ? awaitingReviewArm(arm) : arm);
271
321
  console.error(`${activityName} failed (${outcome.surface}): execution=${executionId}, error=${outcome.message}` +
272
- (outcome.cause instanceof Error ? `, cause=${outcome.cause.message}` : ""));
322
+ (outcome.cause instanceof Error ? `, cause=${outcome.cause.message}` : "") +
323
+ (reviewPending ? " — edits on the tree; review pending" : ""));
273
324
  return settledFailure;
274
325
  }
275
326
  case "interrupted":
@@ -327,6 +378,18 @@ async function runTurn(deps, input) {
327
378
  // violation, reported as the runner's own failure rather than guessed at.
328
379
  return settleWith(unexpectedErrorArm("HarnessContractError", `${adapter.name} settled interrupted with no stop`));
329
380
  }
381
+ /**
382
+ * The engine finished AND left a reviewable change: the structured output
383
+ * is resolved now, before the WAITING persist, so the resume that
384
+ * reconciles the review completes with it (Q-M4-8 closes Q-M2a-5); then
385
+ * the review pause. Nothing else of the completion epilogue runs here —
386
+ * the plan artifact and the write-back belong to the settlement that
387
+ * actually completes the execution.
388
+ */
389
+ async function pauseCompletedTurnForReview(turn) {
390
+ await resolveStructuredOutput(turn, lastAssistantText());
391
+ return settleWith(awaitingReviewArm());
392
+ }
330
393
  /**
331
394
  * A turn the engine finished (COMPLETED) or ended cancelled on its own
332
395
  * (CANCELLED): the final text from the last AI row; the structured output
@@ -339,16 +402,10 @@ async function runTurn(deps, input) {
339
402
  async function completeTurn(turn, phase) {
340
403
  status.completedAt = utcTimestamp();
341
404
  status.phase = phase;
342
- let structuredOutput = status.structuredOutput;
343
405
  let finalText;
344
406
  if (phase === ExecutionPhase.EXECUTION_COMPLETED) {
345
- finalText = [...status.messages].reverse().find((m) => m.type === MessageType.MESSAGE_AI)?.content;
346
- if (structuredOutput === undefined && turn.structuredOutputSchema && finalText) {
347
- structuredOutput = await extractStructuredOutputFromText(turn, finalText);
348
- if (structuredOutput !== undefined) {
349
- status.structuredOutput = structuredOutput;
350
- }
351
- }
407
+ finalText = lastAssistantText();
408
+ await resolveStructuredOutput(turn, finalText);
352
409
  // Plan mode: publish the final plan message as a plan artifact (named
353
410
  // from the plan's title); the only artifact path a harness without an
354
411
  // auto-publish pipeline has.
@@ -373,14 +430,43 @@ async function runTurn(deps, input) {
373
430
  // NOW persist — the subscriber sees the phase and structured_output atomically.
374
431
  await chokepoint.write();
375
432
  console.log(`${activityName} completed: execution=${executionId}, phase=${ExecutionPhase[status.phase]}, ` +
376
- `hasStructuredOutput=${structuredOutput !== undefined}` +
433
+ `hasStructuredOutput=${status.structuredOutput !== undefined}` +
377
434
  (status.error ? `, error=${status.error}` : ""));
435
+ return { kind: "return", value: completionSlim(finalText) };
436
+ }
437
+ /** The last assistant text on the transcript: the turn's `final_text`. */
438
+ function lastAssistantText() {
439
+ return [...status.messages].reverse().find((m) => m.type === MessageType.MESSAGE_AI)?.content;
440
+ }
441
+ /**
442
+ * The structured output the execution asked for, folded onto the status
443
+ * unless the adapter already did (the deep-agent's `structuredResponse`):
444
+ * extracted from the final text through the tiers below. Runs where the
445
+ * engine has FINISHED speaking — a completed turn, and a completed turn
446
+ * the runtime pauses for file review (Q-M4-8: the pure-reconcile
447
+ * COMPLETED then carries it, on every harness).
448
+ */
449
+ async function resolveStructuredOutput(turn, finalText) {
450
+ if (status.structuredOutput !== undefined || !turn.structuredOutputSchema || !finalText)
451
+ return;
452
+ const extracted = await extractStructuredOutputFromText(turn, finalText);
453
+ if (extracted !== undefined)
454
+ status.structuredOutput = extracted;
455
+ }
456
+ /**
457
+ * The slim return of a COMPLETED execution: the status the workflow reads,
458
+ * with `final_text` and `structured` beside it for the callers that consume
459
+ * an agent's answer as a value (`call-agent-orchestrator.ts`). One shape for
460
+ * the two ways an execution completes — the engine's own finish and the
461
+ * pure file-review resume.
462
+ */
463
+ function completionSlim(finalText) {
378
464
  const slim = slimStatus(status);
379
465
  if (finalText !== undefined)
380
466
  slim.final_text = finalText;
381
- if (structuredOutput !== undefined)
382
- slim.structured = structuredOutput;
383
- return { kind: "return", value: slim };
467
+ if (status.structuredOutput !== undefined)
468
+ slim.structured = status.structuredOutput;
469
+ return slim;
384
470
  }
385
471
  /**
386
472
  * Tier 1 + 1.5: JSON.parse, code-fence extraction, heuristic brace match.
@@ -1 +1 @@
1
- {"version":3,"file":"run-turn.js","sourceRoot":"","sources":["../../src/harness/run-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-turn.js","sourceRoot":"","sources":["../../src/harness/run-turn.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,8 @@
8
8
  * contract of the runner (the hermetic goldens pin every string below byte
9
9
  * for byte, `activities/execute-cursor/__tests__/hermetic/`), and a table a
10
10
  * reader can scan is how that contract stays reviewable. The native
11
- * harness's `execute-deep-agent/streaming-terminal.ts` keeps one function
12
- * per arm; S3 aligns the two (P-1's copy alignment) with both in view.
11
+ * harness once kept one function per arm (`streaming-terminal.ts`, retired
12
+ * at S3 M2b); since S3 M2a both harnesses' turns end through this one table.
13
13
  *
14
14
  * The throw-vs-return rule, unchanged from the orchestrator it replaces:
15
15
  * - RETURN when a Temporal retry would only repeat the outcome — a stall
@@ -73,10 +73,6 @@ export declare const TERMINAL_COPY: {
73
73
  readonly platformStop: {
74
74
  readonly row: "Execution stopped by the platform.";
75
75
  };
76
- readonly rejectedByUser: {
77
- readonly error: "Execution rejected by user";
78
- readonly row: "Execution was rejected by the user during tool approval.";
79
- };
80
76
  readonly fileReview: {
81
77
  readonly applyFailedPrefix: "Some approved file changes could not be applied because the file changed after review: ";
82
78
  readonly discardedPrefix: "Some proposed file changes were discarded by the user and were not applied: ";
@@ -90,23 +86,56 @@ export declare function stallArm(error: StallTimeoutError): TerminalArm;
90
86
  /**
91
87
  * The cost cap stopped the turn. TERMINATED, not FAILED: the platform
92
88
  * deliberately stopped the run, work is checkpointed, and the conversation
93
- * continues on the next message (the recursion-limit precedent in
94
- * `execute-deep-agent/streaming-terminal.ts`). RETURN: a retry would burn
95
- * the same budget again.
89
+ * continues on the next message (the recursion-limit precedent,
90
+ * {@link toolCallLimitArm}). RETURN: a retry would burn the same budget
91
+ * again.
96
92
  */
97
93
  export declare function costCapArm(maxCostUsd: number, estimatedCostUsd: number): TerminalArm;
94
+ /**
95
+ * The engine exhausted its tool-round budget (`max_tool_rounds`). TERMINATED,
96
+ * not FAILED, for the cost cap's reason: the platform deliberately stopped
97
+ * the run, work is checkpointed, and the conversation continues on the next
98
+ * message. RETURN: a retry would spend the same budget again. The error's
99
+ * prefix is a cross-repo contract (`shared/tool-rounds.ts`).
100
+ */
101
+ export declare function toolCallLimitArm(): TerminalArm;
98
102
  /** The runner is draining. Not a user pause: FAILED with the shutdown copy, thrown as cancelled. */
99
103
  export declare function workerShutdownArm(): TerminalArm;
100
104
  /** The orchestrator paused the execution. Not an error, not complete; thrown as cancelled. */
101
105
  export declare function pauseArm(): TerminalArm;
102
106
  /** Temporal cancelled for its own reason (a heartbeat timeout). FAILED with the unresponsive copy, thrown as cancelled. */
103
107
  export declare function infrastructureCancelArm(): TerminalArm;
108
+ /**
109
+ * The engine proposed at least one gated side effect and stopped: the
110
+ * WAITING_APPROVAL rows are already on the transcript. Not an error, not
111
+ * complete, no copy; RETURN to the workflow, which waits for the approval
112
+ * signal and reinvokes with the decisions. Until S3 M4 this was an inline
113
+ * phase flip in `run-turn.ts`; it is an arm because every way an activity
114
+ * ends belongs in this one table.
115
+ */
116
+ export declare function awaitingApprovalArm(): TerminalArm;
117
+ /**
118
+ * The engine's turn left a reviewable change on the tree (the runtime
119
+ * captured a candidate, `harness/capture.ts`): the same WAITING pause as an
120
+ * approval, because a file review is the other thing the workflow waits on
121
+ * and reinvokes for. A review WINS over the terminal the engine reported:
122
+ * edits on the user's disk must reach review whatever else happened, and a
123
+ * FAILED or TERMINATED execution never reinvokes, so the terminal is
124
+ * DEFERRED — its ROWS ride the transcript now (the failure copy, the
125
+ * tool-call-limit copy; an `engine`-surface failure has none), never its
126
+ * phase, its `error` or its completion stamp, and the resume's reconcile
127
+ * settles the execution COMPLETED as every pure file-review resume does
128
+ * (`fileReviewResolvedArm`). Until S3 M4 only the Cursor harness behaved so,
129
+ * and only because its boundary ran before it consulted its engine's
130
+ * result; the deep-agent wrote FAILED with the edits applied and unreviewed.
131
+ * Stated cost: the cloud's `status.error` prefix match for a tool-call limit
132
+ * does not fire when that limit left edits (Q-M4-2).
133
+ */
134
+ export declare function awaitingReviewArm(deferred?: TerminalArm): TerminalArm;
104
135
  /** The control plane answered STOP. A clean COMPLETED early exit. */
105
136
  export declare function platformStopArm(): TerminalArm;
106
137
  /** Another turn held the primary tree past the lock timeout. RETURN: a retry would queue behind the same holder. */
107
138
  export declare function workspaceLockTimeoutArm(error: WorkspaceLockTimeoutError): TerminalArm;
108
- /** An adjudicated irreversible action (shell / MCP) was REJECTed. */
109
- export declare function rejectedByUserArm(): TerminalArm;
110
139
  /**
111
140
  * A pure file-review resume: the agent already finished its turn during
112
141
  * capture, so keeping or discarding a change never re-prompts it
@@ -8,8 +8,8 @@
8
8
  * contract of the runner (the hermetic goldens pin every string below byte
9
9
  * for byte, `activities/execute-cursor/__tests__/hermetic/`), and a table a
10
10
  * reader can scan is how that contract stays reviewable. The native
11
- * harness's `execute-deep-agent/streaming-terminal.ts` keeps one function
12
- * per arm; S3 aligns the two (P-1's copy alignment) with both in view.
11
+ * harness once kept one function per arm (`streaming-terminal.ts`, retired
12
+ * at S3 M2b); since S3 M2a both harnesses' turns end through this one table.
13
13
  *
14
14
  * The throw-vs-return rule, unchanged from the orchestrator it replaces:
15
15
  * - RETURN when a Temporal retry would only repeat the outcome — a stall
@@ -33,6 +33,7 @@ import { create } from "@bufbuild/protobuf";
33
33
  import { AgentMessageSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
34
34
  import { ExecutionPhase, MessageType } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
35
35
  import { COST_LIMIT_USER_COPY, formatCostLimitError } from "../shared/cost-guard.js";
36
+ import { TOOL_CALL_LIMIT_USER_COPY, formatToolCallLimitError } from "../shared/tool-rounds.js";
36
37
  import { formatStallFailure } from "../shared/stall-watchdog.js";
37
38
  import { utcTimestamp } from "../shared/status.js";
38
39
  const RETURN = { kind: "return" };
@@ -57,10 +58,6 @@ export const TERMINAL_COPY = {
57
58
  platformStop: {
58
59
  row: "Execution stopped by the platform.",
59
60
  },
60
- rejectedByUser: {
61
- error: "Execution rejected by user",
62
- row: "Execution was rejected by the user during tool approval.",
63
- },
64
61
  fileReview: {
65
62
  applyFailedPrefix: "Some approved file changes could not be applied because the file changed after review: ",
66
63
  discardedPrefix: "Some proposed file changes were discarded by the user and were not applied: ",
@@ -85,9 +82,9 @@ export function stallArm(error) {
85
82
  /**
86
83
  * The cost cap stopped the turn. TERMINATED, not FAILED: the platform
87
84
  * deliberately stopped the run, work is checkpointed, and the conversation
88
- * continues on the next message (the recursion-limit precedent in
89
- * `execute-deep-agent/streaming-terminal.ts`). RETURN: a retry would burn
90
- * the same budget again.
85
+ * continues on the next message (the recursion-limit precedent,
86
+ * {@link toolCallLimitArm}). RETURN: a retry would burn the same budget
87
+ * again.
91
88
  */
92
89
  export function costCapArm(maxCostUsd, estimatedCostUsd) {
93
90
  return {
@@ -98,6 +95,22 @@ export function costCapArm(maxCostUsd, estimatedCostUsd) {
98
95
  disposition: RETURN,
99
96
  };
100
97
  }
98
+ /**
99
+ * The engine exhausted its tool-round budget (`max_tool_rounds`). TERMINATED,
100
+ * not FAILED, for the cost cap's reason: the platform deliberately stopped
101
+ * the run, work is checkpointed, and the conversation continues on the next
102
+ * message. RETURN: a retry would spend the same budget again. The error's
103
+ * prefix is a cross-repo contract (`shared/tool-rounds.ts`).
104
+ */
105
+ export function toolCallLimitArm() {
106
+ return {
107
+ phase: ExecutionPhase.EXECUTION_TERMINATED,
108
+ error: formatToolCallLimitError(),
109
+ rows: [TOOL_CALL_LIMIT_USER_COPY],
110
+ completes: true,
111
+ disposition: RETURN,
112
+ };
113
+ }
101
114
  /** The runner is draining. Not a user pause: FAILED with the shutdown copy, thrown as cancelled. */
102
115
  export function workerShutdownArm() {
103
116
  return {
@@ -127,6 +140,42 @@ export function infrastructureCancelArm() {
127
140
  disposition: { kind: "throw", message: TERMINAL_COPY.infrastructureCancel.throwMessage },
128
141
  };
129
142
  }
143
+ /**
144
+ * The engine proposed at least one gated side effect and stopped: the
145
+ * WAITING_APPROVAL rows are already on the transcript. Not an error, not
146
+ * complete, no copy; RETURN to the workflow, which waits for the approval
147
+ * signal and reinvokes with the decisions. Until S3 M4 this was an inline
148
+ * phase flip in `run-turn.ts`; it is an arm because every way an activity
149
+ * ends belongs in this one table.
150
+ */
151
+ export function awaitingApprovalArm() {
152
+ return { phase: ExecutionPhase.EXECUTION_WAITING_FOR_APPROVAL, rows: [], completes: false, disposition: RETURN };
153
+ }
154
+ /**
155
+ * The engine's turn left a reviewable change on the tree (the runtime
156
+ * captured a candidate, `harness/capture.ts`): the same WAITING pause as an
157
+ * approval, because a file review is the other thing the workflow waits on
158
+ * and reinvokes for. A review WINS over the terminal the engine reported:
159
+ * edits on the user's disk must reach review whatever else happened, and a
160
+ * FAILED or TERMINATED execution never reinvokes, so the terminal is
161
+ * DEFERRED — its ROWS ride the transcript now (the failure copy, the
162
+ * tool-call-limit copy; an `engine`-surface failure has none), never its
163
+ * phase, its `error` or its completion stamp, and the resume's reconcile
164
+ * settles the execution COMPLETED as every pure file-review resume does
165
+ * (`fileReviewResolvedArm`). Until S3 M4 only the Cursor harness behaved so,
166
+ * and only because its boundary ran before it consulted its engine's
167
+ * result; the deep-agent wrote FAILED with the edits applied and unreviewed.
168
+ * Stated cost: the cloud's `status.error` prefix match for a tool-call limit
169
+ * does not fire when that limit left edits (Q-M4-2).
170
+ */
171
+ export function awaitingReviewArm(deferred) {
172
+ return {
173
+ phase: ExecutionPhase.EXECUTION_WAITING_FOR_APPROVAL,
174
+ rows: deferred?.rows ?? [],
175
+ completes: false,
176
+ disposition: RETURN,
177
+ };
178
+ }
130
179
  /** The control plane answered STOP. A clean COMPLETED early exit. */
131
180
  export function platformStopArm() {
132
181
  return {
@@ -146,16 +195,6 @@ export function workspaceLockTimeoutArm(error) {
146
195
  disposition: RETURN,
147
196
  };
148
197
  }
149
- /** An adjudicated irreversible action (shell / MCP) was REJECTed. */
150
- export function rejectedByUserArm() {
151
- return {
152
- phase: ExecutionPhase.EXECUTION_FAILED,
153
- error: TERMINAL_COPY.rejectedByUser.error,
154
- rows: [TERMINAL_COPY.rejectedByUser.row],
155
- completes: true,
156
- disposition: RETURN,
157
- };
158
- }
159
198
  /**
160
199
  * A pure file-review resume: the agent already finished its turn during
161
200
  * capture, so keeping or discarding a change never re-prompts it
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-table.js","sourceRoot":"","sources":["../../src/harness/terminal-table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-table.js","sourceRoot":"","sources":["../../src/harness/terminal-table.ts"],"names":[],"mappings":"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"}