@stigmer/runner 3.0.9-dev.20260616060535 → 3.1.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 (328) hide show
  1. package/dist/.build-fingerprint +1 -1
  2. package/dist/__test-utils__/approval-contract/types.d.ts +174 -0
  3. package/dist/__test-utils__/approval-contract/types.js +24 -0
  4. package/dist/__test-utils__/approval-contract/types.js.map +1 -0
  5. package/dist/activities/call-agent-status.d.ts +19 -1
  6. package/dist/activities/call-agent-status.js +64 -5
  7. package/dist/activities/call-agent-status.js.map +1 -1
  8. package/dist/activities/call-llm.js +19 -53
  9. package/dist/activities/call-llm.js.map +1 -1
  10. package/dist/activities/classify-tool-approvals.d.ts +24 -0
  11. package/dist/activities/classify-tool-approvals.js +69 -17
  12. package/dist/activities/classify-tool-approvals.js.map +1 -1
  13. package/dist/activities/discover-mcp-server.d.ts +7 -0
  14. package/dist/activities/discover-mcp-server.js +11 -1
  15. package/dist/activities/discover-mcp-server.js.map +1 -1
  16. package/dist/activities/execute-cursor/__test-utils__/cursor-hook-harness.d.ts +140 -0
  17. package/dist/activities/execute-cursor/__test-utils__/cursor-hook-harness.js +130 -0
  18. package/dist/activities/execute-cursor/__test-utils__/cursor-hook-harness.js.map +1 -0
  19. package/dist/activities/execute-cursor/__test-utils__/gateway-substrate.d.ts +18 -0
  20. package/dist/activities/execute-cursor/__test-utils__/gateway-substrate.js +123 -0
  21. package/dist/activities/execute-cursor/__test-utils__/gateway-substrate.js.map +1 -0
  22. package/dist/activities/execute-cursor/approval-policy.d.ts +17 -61
  23. package/dist/activities/execute-cursor/approval-policy.js +8 -120
  24. package/dist/activities/execute-cursor/approval-policy.js.map +1 -1
  25. package/dist/activities/execute-cursor/approval-state.d.ts +219 -9
  26. package/dist/activities/execute-cursor/approval-state.js +233 -17
  27. package/dist/activities/execute-cursor/approval-state.js.map +1 -1
  28. package/dist/activities/execute-cursor/capture-flow.d.ts +127 -0
  29. package/dist/activities/execute-cursor/capture-flow.js +234 -0
  30. package/dist/activities/execute-cursor/capture-flow.js.map +1 -0
  31. package/dist/activities/execute-cursor/cas-observations.d.ts +96 -0
  32. package/dist/activities/execute-cursor/cas-observations.js +184 -0
  33. package/dist/activities/execute-cursor/cas-observations.js.map +1 -0
  34. package/dist/activities/execute-cursor/command-provenance.d.ts +62 -0
  35. package/dist/activities/execute-cursor/command-provenance.js +128 -0
  36. package/dist/activities/execute-cursor/command-provenance.js.map +1 -0
  37. package/dist/activities/execute-cursor/exact-apply.d.ts +110 -0
  38. package/dist/activities/execute-cursor/exact-apply.js +204 -0
  39. package/dist/activities/execute-cursor/exact-apply.js.map +1 -0
  40. package/dist/activities/execute-cursor/hook-script.d.ts +53 -24
  41. package/dist/activities/execute-cursor/hook-script.js +310 -47
  42. package/dist/activities/execute-cursor/hook-script.js.map +1 -1
  43. package/dist/activities/execute-cursor/index.d.ts +8 -1
  44. package/dist/activities/execute-cursor/index.js +500 -64
  45. package/dist/activities/execute-cursor/index.js.map +1 -1
  46. package/dist/activities/execute-cursor/message-translator.d.ts +258 -11
  47. package/dist/activities/execute-cursor/message-translator.js +836 -90
  48. package/dist/activities/execute-cursor/message-translator.js.map +1 -1
  49. package/dist/activities/execute-cursor/prompt-builder.d.ts +20 -23
  50. package/dist/activities/execute-cursor/prompt-builder.js +74 -15
  51. package/dist/activities/execute-cursor/prompt-builder.js.map +1 -1
  52. package/dist/activities/execute-cursor/workspace-setup.d.ts +17 -0
  53. package/dist/activities/execute-cursor/workspace-setup.js +212 -33
  54. package/dist/activities/execute-cursor/workspace-setup.js.map +1 -1
  55. package/dist/activities/execute-deep-agent/__test-utils__/gateway-substrate.d.ts +19 -0
  56. package/dist/activities/execute-deep-agent/__test-utils__/gateway-substrate.js +143 -0
  57. package/dist/activities/execute-deep-agent/__test-utils__/gateway-substrate.js.map +1 -0
  58. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model.d.ts +88 -0
  59. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model.js +81 -0
  60. package/dist/activities/execute-deep-agent/__test-utils__/scripted-model.js.map +1 -0
  61. package/dist/activities/execute-deep-agent/approval-file-change.d.ts +47 -0
  62. package/dist/activities/execute-deep-agent/approval-file-change.js +68 -0
  63. package/dist/activities/execute-deep-agent/approval-file-change.js.map +1 -0
  64. package/dist/activities/execute-deep-agent/attachment-injector.d.ts +8 -1
  65. package/dist/activities/execute-deep-agent/attachment-injector.js +7 -7
  66. package/dist/activities/execute-deep-agent/attachment-injector.js.map +1 -1
  67. package/dist/activities/execute-deep-agent/cas-capture-backend.d.ts +42 -0
  68. package/dist/activities/execute-deep-agent/cas-capture-backend.js +47 -0
  69. package/dist/activities/execute-deep-agent/cas-capture-backend.js.map +1 -0
  70. package/dist/activities/execute-deep-agent/cas-capture-observer.d.ts +79 -0
  71. package/dist/activities/execute-deep-agent/cas-capture-observer.js +112 -0
  72. package/dist/activities/execute-deep-agent/cas-capture-observer.js.map +1 -0
  73. package/dist/activities/execute-deep-agent/hitl.d.ts +10 -0
  74. package/dist/activities/execute-deep-agent/hitl.js +5 -1
  75. package/dist/activities/execute-deep-agent/hitl.js.map +1 -1
  76. package/dist/activities/execute-deep-agent/index.d.ts +2 -1
  77. package/dist/activities/execute-deep-agent/index.js +370 -56
  78. package/dist/activities/execute-deep-agent/index.js.map +1 -1
  79. package/dist/activities/execute-deep-agent/inline-publisher.d.ts +7 -1
  80. package/dist/activities/execute-deep-agent/inline-publisher.js +23 -2
  81. package/dist/activities/execute-deep-agent/inline-publisher.js.map +1 -1
  82. package/dist/activities/execute-deep-agent/setup.d.ts +53 -2
  83. package/dist/activities/execute-deep-agent/setup.js +149 -92
  84. package/dist/activities/execute-deep-agent/setup.js.map +1 -1
  85. package/dist/activities/execute-deep-agent/stamp-flowed-rows.d.ts +36 -0
  86. package/dist/activities/execute-deep-agent/stamp-flowed-rows.js +56 -0
  87. package/dist/activities/execute-deep-agent/stamp-flowed-rows.js.map +1 -0
  88. package/dist/activities/execute-deep-agent/status-builder-shared.d.ts +34 -1
  89. package/dist/activities/execute-deep-agent/status-builder-shared.js +26 -25
  90. package/dist/activities/execute-deep-agent/status-builder-shared.js.map +1 -1
  91. package/dist/activities/execute-deep-agent/status-builder.d.ts +11 -5
  92. package/dist/activities/execute-deep-agent/status-builder.js +6 -2
  93. package/dist/activities/execute-deep-agent/status-builder.js.map +1 -1
  94. package/dist/activities/execute-deep-agent/streaming-side-effects.js +2 -19
  95. package/dist/activities/execute-deep-agent/streaming-side-effects.js.map +1 -1
  96. package/dist/activities/execute-deep-agent/streaming.js +3 -15
  97. package/dist/activities/execute-deep-agent/streaming.js.map +1 -1
  98. package/dist/activities/execute-deep-agent/subagent-transformer.d.ts +25 -7
  99. package/dist/activities/execute-deep-agent/subagent-transformer.js +23 -7
  100. package/dist/activities/execute-deep-agent/subagent-transformer.js.map +1 -1
  101. package/dist/activities/execute-deep-agent/subagent-wiring.d.ts +30 -3
  102. package/dist/activities/execute-deep-agent/subagent-wiring.js +29 -3
  103. package/dist/activities/execute-deep-agent/subagent-wiring.js.map +1 -1
  104. package/dist/activities/execute-deep-agent/v3-status-builder.js +6 -2
  105. package/dist/activities/execute-deep-agent/v3-status-builder.js.map +1 -1
  106. package/dist/claimcheck/payload-codec.js +9 -5
  107. package/dist/claimcheck/payload-codec.js.map +1 -1
  108. package/dist/client/stigmer-client.d.ts +2 -0
  109. package/dist/client/stigmer-client.js +2 -0
  110. package/dist/client/stigmer-client.js.map +1 -1
  111. package/dist/middleware/approval-gate.d.ts +85 -4
  112. package/dist/middleware/approval-gate.js +165 -38
  113. package/dist/middleware/approval-gate.js.map +1 -1
  114. package/dist/middleware/types.d.ts +2 -5
  115. package/dist/shared/activity-input.d.ts +43 -0
  116. package/dist/shared/activity-input.js +17 -0
  117. package/dist/shared/activity-input.js.map +1 -0
  118. package/dist/shared/approval-canonicalize.d.ts +19 -0
  119. package/dist/shared/approval-canonicalize.js +119 -0
  120. package/dist/shared/approval-canonicalize.js.map +1 -0
  121. package/dist/shared/approval-fingerprint.d.ts +106 -0
  122. package/dist/shared/approval-fingerprint.js +113 -0
  123. package/dist/shared/approval-fingerprint.js.map +1 -0
  124. package/dist/shared/approval-policy.d.ts +182 -12
  125. package/dist/shared/approval-policy.js +213 -27
  126. package/dist/shared/approval-policy.js.map +1 -1
  127. package/dist/shared/args-preview.d.ts +52 -0
  128. package/dist/shared/args-preview.js +93 -0
  129. package/dist/shared/args-preview.js.map +1 -0
  130. package/dist/shared/artifact-storage.d.ts +19 -1
  131. package/dist/shared/artifact-storage.js +48 -11
  132. package/dist/shared/artifact-storage.js.map +1 -1
  133. package/dist/shared/file-change.d.ts +44 -0
  134. package/dist/shared/file-change.js +57 -0
  135. package/dist/shared/file-change.js.map +1 -0
  136. package/dist/shared/file-tools.d.ts +107 -0
  137. package/dist/shared/file-tools.js +168 -0
  138. package/dist/shared/file-tools.js.map +1 -0
  139. package/dist/shared/filereview/capture.d.ts +202 -0
  140. package/dist/shared/filereview/capture.js +498 -0
  141. package/dist/shared/filereview/capture.js.map +1 -0
  142. package/dist/shared/filereview/cas-substrate.d.ts +190 -0
  143. package/dist/shared/filereview/cas-substrate.js +284 -0
  144. package/dist/shared/filereview/cas-substrate.js.map +1 -0
  145. package/dist/shared/filereview/digest.d.ts +40 -0
  146. package/dist/shared/filereview/digest.js +66 -0
  147. package/dist/shared/filereview/digest.js.map +1 -0
  148. package/dist/shared/filereview/events.d.ts +170 -0
  149. package/dist/shared/filereview/events.js +298 -0
  150. package/dist/shared/filereview/events.js.map +1 -0
  151. package/dist/shared/filereview/git-substrate.d.ts +175 -0
  152. package/dist/shared/filereview/git-substrate.js +439 -0
  153. package/dist/shared/filereview/git-substrate.js.map +1 -0
  154. package/dist/shared/filereview/index.d.ts +11 -0
  155. package/dist/shared/filereview/index.js +12 -0
  156. package/dist/shared/filereview/index.js.map +1 -0
  157. package/dist/shared/filereview/secret-paths.d.ts +63 -0
  158. package/dist/shared/filereview/secret-paths.js +105 -0
  159. package/dist/shared/filereview/secret-paths.js.map +1 -0
  160. package/dist/shared/fingerprint-secret.d.ts +26 -0
  161. package/dist/shared/fingerprint-secret.js +47 -0
  162. package/dist/shared/fingerprint-secret.js.map +1 -0
  163. package/dist/shared/model-client.d.ts +51 -0
  164. package/dist/shared/model-client.js +77 -0
  165. package/dist/shared/model-client.js.map +1 -0
  166. package/dist/shared/plan-artifact.js +0 -2
  167. package/dist/shared/plan-artifact.js.map +1 -1
  168. package/dist/shared/status-offload.d.ts +83 -9
  169. package/dist/shared/status-offload.js +399 -79
  170. package/dist/shared/status-offload.js.map +1 -1
  171. package/dist/shared/status.js +14 -1
  172. package/dist/shared/status.js.map +1 -1
  173. package/dist/shared/tool-kind.d.ts +19 -0
  174. package/dist/shared/tool-kind.js +13 -0
  175. package/dist/shared/tool-kind.js.map +1 -1
  176. package/dist/shared/tool-row.d.ts +88 -0
  177. package/dist/shared/tool-row.js +127 -0
  178. package/dist/shared/tool-row.js.map +1 -0
  179. package/dist/shared/workspace/platform-dir.d.ts +25 -0
  180. package/dist/shared/workspace/platform-dir.js +38 -2
  181. package/dist/shared/workspace/platform-dir.js.map +1 -1
  182. package/dist/workflows/call-agent-orchestrator.js +56 -7
  183. package/dist/workflows/call-agent-orchestrator.js.map +1 -1
  184. package/dist/workflows/connect-mcp-server.d.ts +50 -0
  185. package/dist/workflows/connect-mcp-server.js +136 -15
  186. package/dist/workflows/connect-mcp-server.js.map +1 -1
  187. package/dist/workflows/types.d.ts +8 -0
  188. package/package.json +2 -2
  189. package/src/__test-utils__/approval-contract/contract.ts +224 -0
  190. package/src/__test-utils__/approval-contract/types.ts +179 -0
  191. package/src/__test-utils__/fake-artifact-storage.ts +72 -0
  192. package/src/__tests__/approval-gateway-contract.test.ts +29 -0
  193. package/src/__tests__/claimcheck-codec.test.ts +16 -53
  194. package/src/__tests__/golden-e2e.test.ts +2 -0
  195. package/src/__tests__/runner-token-coordinator.test.ts +3 -3
  196. package/src/activities/__tests__/call-agent-status.test.ts +135 -0
  197. package/src/activities/__tests__/call-llm.test.ts +1 -1
  198. package/src/activities/__tests__/classify-tool-approvals.test.ts +208 -1
  199. package/src/activities/__tests__/discover-mcp-server.test.ts +30 -0
  200. package/src/activities/__tests__/workflow-event-activities.test.ts +2 -1
  201. package/src/activities/call-agent-status.ts +74 -4
  202. package/src/activities/call-llm.ts +18 -63
  203. package/src/activities/classify-tool-approvals.ts +101 -19
  204. package/src/activities/discover-mcp-server.ts +29 -1
  205. package/src/activities/execute-cursor/__test-utils__/cursor-hook-harness.ts +216 -0
  206. package/src/activities/execute-cursor/__test-utils__/gateway-substrate.ts +148 -0
  207. package/src/activities/execute-cursor/__tests__/approval-gate.test.ts +41 -9
  208. package/src/activities/execute-cursor/__tests__/approval-state.test.ts +292 -0
  209. package/src/activities/execute-cursor/__tests__/build-prompt.test.ts +68 -1
  210. package/src/activities/execute-cursor/__tests__/capture-flow.test.ts +1005 -0
  211. package/src/activities/execute-cursor/__tests__/cas-observations.test.ts +187 -0
  212. package/src/activities/execute-cursor/__tests__/coarse-fingerprint.test.ts +97 -0
  213. package/src/activities/execute-cursor/__tests__/command-provenance.test.ts +240 -0
  214. package/src/activities/execute-cursor/__tests__/deny-gate-exact-apply.test.ts +203 -0
  215. package/src/activities/execute-cursor/__tests__/exact-apply.test.ts +375 -0
  216. package/src/activities/execute-cursor/__tests__/hitl-ledger.test.ts +1294 -24
  217. package/src/activities/execute-cursor/__tests__/hitl-resume-history.test.ts +446 -0
  218. package/src/activities/execute-cursor/__tests__/hook-script.test.ts +384 -110
  219. package/src/activities/execute-cursor/__tests__/message-translator.test.ts +171 -25
  220. package/src/activities/execute-cursor/__tests__/sequential-gate-resume.test.ts +189 -0
  221. package/src/activities/execute-cursor/__tests__/tool-result-image.test.ts +44 -23
  222. package/src/activities/execute-cursor/__tests__/workspace-setup.test.ts +190 -10
  223. package/src/activities/execute-cursor/approval-policy.ts +28 -159
  224. package/src/activities/execute-cursor/approval-state.ts +366 -18
  225. package/src/activities/execute-cursor/capture-flow.ts +323 -0
  226. package/src/activities/execute-cursor/cas-observations.ts +204 -0
  227. package/src/activities/execute-cursor/command-provenance.ts +168 -0
  228. package/src/activities/execute-cursor/exact-apply.ts +253 -0
  229. package/src/activities/execute-cursor/hook-script.ts +317 -51
  230. package/src/activities/execute-cursor/index.ts +575 -67
  231. package/src/activities/execute-cursor/message-translator.ts +963 -89
  232. package/src/activities/execute-cursor/prompt-builder.ts +80 -14
  233. package/src/activities/execute-cursor/workspace-setup.ts +257 -42
  234. package/src/activities/execute-deep-agent/__test-utils__/gateway-substrate.ts +180 -0
  235. package/src/activities/execute-deep-agent/__test-utils__/scripted-model.ts +134 -0
  236. package/src/activities/execute-deep-agent/__tests__/approval-file-change.test.ts +84 -0
  237. package/src/activities/execute-deep-agent/__tests__/attachment-injector.test.ts +11 -24
  238. package/src/activities/execute-deep-agent/__tests__/cas-capture-backend.test.ts +64 -0
  239. package/src/activities/execute-deep-agent/__tests__/cas-capture-observer.test.ts +163 -0
  240. package/src/activities/execute-deep-agent/__tests__/hitl-integration.test.ts +8 -5
  241. package/src/activities/execute-deep-agent/__tests__/hitl-resume-approve-all.test.ts +342 -0
  242. package/src/activities/execute-deep-agent/__tests__/hitl-resume-history.test.ts +2 -5
  243. package/src/activities/execute-deep-agent/__tests__/inline-publisher.test.ts +31 -13
  244. package/src/activities/execute-deep-agent/__tests__/sequential-gate-resume.test.ts +349 -0
  245. package/src/activities/execute-deep-agent/__tests__/stamp-flowed-rows.test.ts +119 -0
  246. package/src/activities/execute-deep-agent/__tests__/status-builder.test.ts +12 -11
  247. package/src/activities/execute-deep-agent/__tests__/streaming-v3.test.ts +9 -9
  248. package/src/activities/execute-deep-agent/__tests__/subagent-approval-propagation.test.ts +160 -0
  249. package/src/activities/execute-deep-agent/__tests__/subagent-gitignored-capture.test.ts +213 -0
  250. package/src/activities/execute-deep-agent/__tests__/subagent-transformer.test.ts +3 -6
  251. package/src/activities/execute-deep-agent/__tests__/subagent-wiring.test.ts +84 -1
  252. package/src/activities/execute-deep-agent/__tests__/v3-status-builder.test.ts +4 -1
  253. package/src/activities/execute-deep-agent/approval-file-change.ts +80 -0
  254. package/src/activities/execute-deep-agent/attachment-injector.ts +20 -11
  255. package/src/activities/execute-deep-agent/cas-capture-backend.ts +66 -0
  256. package/src/activities/execute-deep-agent/cas-capture-observer.ts +125 -0
  257. package/src/activities/execute-deep-agent/hitl.ts +15 -1
  258. package/src/activities/execute-deep-agent/index.ts +434 -64
  259. package/src/activities/execute-deep-agent/inline-publisher.ts +27 -4
  260. package/src/activities/execute-deep-agent/setup.ts +223 -125
  261. package/src/activities/execute-deep-agent/stamp-flowed-rows.ts +64 -0
  262. package/src/activities/execute-deep-agent/status-builder-shared.ts +62 -23
  263. package/src/activities/execute-deep-agent/status-builder.ts +19 -7
  264. package/src/activities/execute-deep-agent/streaming-side-effects.ts +2 -16
  265. package/src/activities/execute-deep-agent/streaming.ts +3 -13
  266. package/src/activities/execute-deep-agent/subagent-transformer.ts +53 -13
  267. package/src/activities/execute-deep-agent/subagent-wiring.ts +50 -3
  268. package/src/activities/execute-deep-agent/v3-status-builder.ts +8 -2
  269. package/src/claimcheck/payload-codec.ts +8 -8
  270. package/src/client/stigmer-client.ts +9 -1
  271. package/src/middleware/__tests__/approval-gate.test.ts +488 -4
  272. package/src/middleware/approval-gate.ts +247 -38
  273. package/src/middleware/types.ts +5 -5
  274. package/src/shared/__tests__/activity-input.test.ts +78 -0
  275. package/src/shared/__tests__/approval-canonicalize.test.ts +106 -0
  276. package/src/shared/__tests__/approval-fingerprint.test.ts +115 -0
  277. package/src/shared/__tests__/approval-policy.test.ts +274 -40
  278. package/src/shared/__tests__/args-preview.test.ts +78 -0
  279. package/src/shared/__tests__/artifact-storage-extended.test.ts +62 -10
  280. package/src/shared/__tests__/artifact-storage.test.ts +123 -11
  281. package/src/shared/__tests__/file-change.test.ts +85 -0
  282. package/src/shared/__tests__/file-tools.test.ts +90 -0
  283. package/src/shared/__tests__/fingerprint-secret.test.ts +51 -0
  284. package/src/shared/__tests__/lease-scope-corpus.test.ts +56 -0
  285. package/src/shared/__tests__/model-client.test.ts +162 -0
  286. package/src/shared/__tests__/plan-artifact.test.ts +11 -26
  287. package/src/shared/__tests__/policy-source-corpus.test.ts +58 -0
  288. package/src/shared/__tests__/status-offload.test.ts +573 -16
  289. package/src/shared/__tests__/status.test.ts +4 -5
  290. package/src/shared/__tests__/tool-kind.test.ts +24 -1
  291. package/src/shared/__tests__/tool-row.test.ts +221 -0
  292. package/src/shared/activity-input.ts +57 -0
  293. package/src/shared/approval-canonicalize.ts +159 -0
  294. package/src/shared/approval-fingerprint.ts +148 -0
  295. package/src/shared/approval-policy.ts +303 -27
  296. package/src/shared/args-preview.ts +98 -0
  297. package/src/shared/artifact-storage.ts +62 -11
  298. package/src/shared/checkpointer/__tests__/http-saver.test.ts +1 -2
  299. package/src/shared/file-change.ts +64 -0
  300. package/src/shared/file-tools.ts +169 -0
  301. package/src/shared/filereview/__tests__/capture.test.ts +856 -0
  302. package/src/shared/filereview/__tests__/cas-substrate.test.ts +404 -0
  303. package/src/shared/filereview/__tests__/digest.test.ts +100 -0
  304. package/src/shared/filereview/__tests__/events.test.ts +245 -0
  305. package/src/shared/filereview/__tests__/git-substrate.test.ts +362 -0
  306. package/src/shared/filereview/__tests__/proxy-reconcile.test.ts +286 -0
  307. package/src/shared/filereview/__tests__/secret-paths.test.ts +121 -0
  308. package/src/shared/filereview/capture.ts +727 -0
  309. package/src/shared/filereview/cas-substrate.ts +401 -0
  310. package/src/shared/filereview/digest.ts +83 -0
  311. package/src/shared/filereview/events.ts +449 -0
  312. package/src/shared/filereview/git-substrate.ts +555 -0
  313. package/src/shared/filereview/index.ts +60 -0
  314. package/src/shared/filereview/secret-paths.ts +121 -0
  315. package/src/shared/fingerprint-secret.ts +53 -0
  316. package/src/shared/model-client.ts +122 -0
  317. package/src/shared/plan-artifact.ts +0 -2
  318. package/src/shared/status-offload.ts +433 -77
  319. package/src/shared/status.ts +13 -0
  320. package/src/shared/tool-kind.ts +33 -0
  321. package/src/shared/tool-row.ts +135 -0
  322. package/src/shared/workspace/platform-dir.ts +41 -2
  323. package/src/workflow-engine/__tests__/golden-execution.test.ts +35 -18
  324. package/src/workflow-engine/__tests__/tasks/try.test.ts +1 -1
  325. package/src/workflows/__tests__/connect-mcp-server.test.ts +304 -29
  326. package/src/workflows/call-agent-orchestrator.ts +53 -6
  327. package/src/workflows/connect-mcp-server.ts +179 -24
  328. package/src/workflows/types.ts +8 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/activities/execute-deep-agent/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/activities/execute-deep-agent/index.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,12 @@ import type { WorkspaceBackend } from "../../shared/workspace/types.js";
15
15
  import type { ExecutionStatusWriter } from "./execution-status-writer.js";
16
16
  export declare class InlinePublisher {
17
17
  private readonly workspaceBackend;
18
+ /**
19
+ * `undefined` when the runner has no artifact store (proxy misconfig). Inline
20
+ * publishing is a best-effort real-time UI nicety, so {@link publish} becomes a
21
+ * no-op — the operator was already warned once at setup, and the transcript still
22
+ * persists without the offloaded artifact.
23
+ */
18
24
  private readonly artifactStorage;
19
25
  private readonly statusWriter;
20
26
  private readonly executionId;
@@ -22,7 +28,7 @@ export declare class InlinePublisher {
22
28
  private readonly published;
23
29
  constructor(opts: {
24
30
  workspaceBackend: WorkspaceBackend;
25
- artifactStorage: ArtifactStorage;
31
+ artifactStorage: ArtifactStorage | undefined;
26
32
  statusWriter: ExecutionStatusWriter;
27
33
  executionId: string;
28
34
  });
@@ -16,8 +16,15 @@ import { create } from "@bufbuild/protobuf";
16
16
  import { ExecutionArtifactSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/artifact_pb";
17
17
  import { ExecutionArtifactKind, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
18
18
  import { utcTimestamp } from "../../shared/status.js";
19
+ import { isSecretLikePath } from "../../shared/filereview/secret-paths.js";
19
20
  export class InlinePublisher {
20
21
  workspaceBackend;
22
+ /**
23
+ * `undefined` when the runner has no artifact store (proxy misconfig). Inline
24
+ * publishing is a best-effort real-time UI nicety, so {@link publish} becomes a
25
+ * no-op — the operator was already warned once at setup, and the transcript still
26
+ * persists without the offloaded artifact.
27
+ */
21
28
  artifactStorage;
22
29
  statusWriter;
23
30
  executionId;
@@ -38,8 +45,24 @@ export class InlinePublisher {
38
45
  * status builder. Fire-and-forget: errors are logged and swallowed.
39
46
  */
40
47
  async publish(path) {
48
+ // No artifact store (proxy misconfig): nothing to upload to. Skip silently —
49
+ // this is a best-effort UI publisher and the operator was warned at setup.
50
+ if (!this.artifactStorage)
51
+ return;
41
52
  try {
42
53
  const sandboxPath = normalizePath(path);
54
+ // Never publish a secret-like file to durable artifact storage (design
55
+ // doc 12, D4). This is the third secret-withholding choke point beside the
56
+ // CAS capture gate and the transcript args scrub: under the global bypass
57
+ // (spec.auto_approve_all) a secret write is not blocked up front, so it
58
+ // would otherwise be uploaded here (keyed by basename) and registered as an
59
+ // ExecutionArtifact. Fail-closed and unconditional — the same name-based
60
+ // gate the capture path uses, so the decision has one source of truth.
61
+ if (isSecretLikePath(sandboxPath)) {
62
+ console.log(`[InlinePublisher] execution=${this.executionId} — withheld '${sandboxPath}' ` +
63
+ `(secret-like; never published to artifact storage)`);
64
+ return;
65
+ }
43
66
  const content = await this.workspaceBackend.readFile(sandboxPath);
44
67
  const contentBuffer = Buffer.from(content, "utf-8");
45
68
  const contentHash = sha256(contentBuffer);
@@ -49,14 +72,12 @@ export class InlinePublisher {
49
72
  const fileName = basename(sandboxPath);
50
73
  const storageKey = `artifacts/${this.executionId}/${fileName}`;
51
74
  await this.artifactStorage.upload(storageKey, contentBuffer, guessContentType(fileName));
52
- const downloadUrl = await this.artifactStorage.getDownloadUrl(storageKey);
53
75
  const artifact = create(ExecutionArtifactSchema, {
54
76
  name: fileName,
55
77
  sandboxPath,
56
78
  kind: ExecutionArtifactKind.FILE,
57
79
  sizeBytes: BigInt(contentBuffer.length),
58
80
  storageKey,
59
- downloadUrl,
60
81
  createdAt: utcTimestamp(),
61
82
  contentHash,
62
83
  });
@@ -1 +1 @@
1
- {"version":3,"file":"inline-publisher.js","sourceRoot":"","sources":["../../../src/activities/execute-deep-agent/inline-publisher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inline-publisher.js","sourceRoot":"","sources":["../../../src/activities/execute-deep-agent/inline-publisher.ts"],"names":[],"mappings":"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"}
@@ -15,9 +15,11 @@ import type { Config } from "../../config.js";
15
15
  import type { StigmerClient } from "../../client/stigmer-client.js";
16
16
  import { type McpConnectionResult } from "../../shared/mcp-manager.js";
17
17
  import type { WorkspaceBackend, ProvisionResult } from "../../shared/workspace/types.js";
18
+ import { CasCaptureObserver } from "./cas-capture-observer.js";
18
19
  import type { GracefulStopMiddleware } from "../../middleware/index.js";
19
20
  import { type ArtifactStorage } from "../../shared/artifact-storage.js";
20
21
  import { type MergedToolPolicy } from "../../shared/approval-policy.js";
22
+ import type { ToolApprovalCategory } from "../../shared/tool-kind.js";
21
23
  export interface SetupResult {
22
24
  readonly agentGraph: AgentGraph;
23
25
  readonly langgraphConfig: Record<string, unknown>;
@@ -31,13 +33,62 @@ export interface SetupResult {
31
33
  readonly secretKeys: ReadonlySet<string>;
32
34
  readonly modelName: string;
33
35
  readonly gracefulStop: GracefulStopMiddleware;
34
- readonly artifactStorage: ArtifactStorage;
36
+ /**
37
+ * Artifact storage for CAS blobs, tool-output offload, and attachment/plan
38
+ * artifacts. `undefined` only when it cannot be built (proxy transport with a
39
+ * missing token/endpoint — a misconfiguration; local storage never fails). Every
40
+ * consumer must tolerate its absence: capture degrades to the deny-gate (see
41
+ * `captureMode`), offload is disabled (the aggregate size guard still applies),
42
+ * and attachment/plan publishing surface a clear error rather than crashing.
43
+ */
44
+ readonly artifactStorage: ArtifactStorage | undefined;
35
45
  readonly provisionResults: readonly ProvisionResult[];
36
46
  readonly approvalPolicies: ReadonlyMap<string, MergedToolPolicy>;
37
47
  readonly toolServerMap: ReadonlyMap<string, string>;
38
- readonly autoApproveAll: boolean;
48
+ /**
49
+ * Built-in approval categories with a run-lifetime scoped lease (from an
50
+ * interactive APPROVE_ALL). Threaded to the StatusBuilder so a leased built-in
51
+ * call is attributed to its lease (approval_lease) rather than the plain
52
+ * category gate. Empty under a global pre-arm or when no lease is active.
53
+ */
54
+ readonly leasedCategories: ReadonlySet<ToolApprovalCategory>;
55
+ /**
56
+ * Pre-armed spec.auto_approve_all — the one unscoped, whole-run bypass. When
57
+ * true the approval gate is not installed at all. Interactive "approve all"
58
+ * decisions are NOT folded in here; they become scoped leases applied inside
59
+ * the gate (see ActiveLeases / deriveActiveLeases).
60
+ */
61
+ readonly globalBypass: boolean;
39
62
  readonly hasStructuredOutput: boolean;
40
63
  readonly streamVersion: "v2" | "v3";
64
+ /**
65
+ * The single owner of this turn's CAS-capture state (design docs 08/11/12):
66
+ * the pre-turn bytes of first-touched gitignored paths (recorded
67
+ * gate-independently by the CAS-observing backends of the parent AND every
68
+ * sub-agent) plus the gitignored paths the gate hard-blocked as secret-like
69
+ * (DD-E). The turn boundary reads both to compose the CAS change set. Empty in
70
+ * the legacy (non-capture) path, where no CAS-observing backend is installed.
71
+ */
72
+ readonly casObserver: CasCaptureObserver;
73
+ /**
74
+ * Apply-then-review capture mode, decided by {@link deriveCaptureMode} (shared
75
+ * with the Cursor harness so both degrade identically): file edits flow during
76
+ * the turn and are reviewed post-hoc as a captured `FileChangeSet` (the activity
77
+ * authors the baseline/candidate ledger events and reconciles on resume). True
78
+ * whenever there is a capture substrate — a git work tree (needs no storage) OR
79
+ * artifact storage for the non-git CAS path. False for a non-git workspace with
80
+ * no artifact storage (proxy misconfig): capture has no substrate, so file writes
81
+ * fall back to the deny-gate (gated pre-execution) exactly like Cursor's DD-22
82
+ * fallback. When true, the deny-gate covers only shell/MCP/irreversible tools.
83
+ */
84
+ readonly captureMode: boolean;
85
+ /**
86
+ * True when the workspace is a git work tree. Selects the capture SUBSTRATE for
87
+ * this turn: git-diff (pinned baseline/after trees) when true; content-addressed
88
+ * CAS manifest (path-scoped to touched paths) when false. Threaded into the
89
+ * baseline/candidate/reconcile seam (`capture.ts`) and the CAS capture-class.
90
+ */
91
+ readonly gitWorkspace: boolean;
41
92
  }
42
93
  export interface SetupDependencies {
43
94
  config: Config;
@@ -7,26 +7,31 @@
7
7
  * full middleware stack, and returns a SetupResult containing everything
8
8
  * the streaming phase needs.
9
9
  */
10
- import { createDeepAgent, FilesystemBackend } from "deepagents";
10
+ import { createDeepAgent } from "deepagents";
11
11
  import { InteractionMode } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
12
- import { ChatAnthropic } from "@langchain/anthropic";
13
- import { ChatOpenAI } from "@langchain/openai";
14
12
  import { createCheckpointer } from "../../shared/checkpointer/factory.js";
15
13
  import { connectMcpServers } from "../../shared/mcp-manager.js";
16
14
  import { resolveMcpServers } from "../../shared/mcp-resolver.js";
17
15
  import { backfillMcpServersIfNeeded } from "../../shared/connect-backfill.js";
18
16
  import { WorkspaceProvisioner } from "../../shared/workspace/provisioner.js";
19
17
  import { LocalWorkspaceBackend } from "../../shared/workspace/local-backend.js";
18
+ import { CasCaptureFilesystemBackend } from "./cas-capture-backend.js";
19
+ import { CasCaptureObserver } from "./cas-capture-observer.js";
20
+ import { isGitWorkTree, isPathCapturable } from "../../shared/filereview/git-substrate.js";
21
+ import { deriveCaptureMode } from "../../shared/filereview/capture.js";
22
+ import { resolveWorkspacePath } from "../../shared/file-change.js";
20
23
  import { ensurePlatformDir } from "../../shared/workspace/platform-dir.js";
21
24
  import { reportSetupProgress } from "../../shared/status.js";
22
25
  import { resolveEnvironment } from "./environment.js";
23
26
  import { buildEnhancedSystemPrompt } from "./prompt-builder.js";
24
27
  import { buildMiddlewareStack, createThinkTool } from "../../middleware/index.js";
28
+ import { deriveExecutionFingerprintKey } from "../../shared/approval-fingerprint.js";
29
+ import { getRunnerHitlMasterSecret } from "../../shared/fingerprint-secret.js";
25
30
  import { getModelPricing, ensureLoaded as ensurePricingLoaded } from "../../shared/model-pricing.js";
26
31
  import { getDefaultModel } from "../../shared/model-registry.js";
32
+ import { buildChatModel } from "../../shared/model-client.js";
27
33
  import { loadArtifactStorageConfig, createArtifactStorage, } from "../../shared/artifact-storage.js";
28
- import { mergeApprovalPolicies, hasApproveAllDecision, } from "../../shared/approval-policy.js";
29
- import { inferProvider, stripProviderPrefix, resolveProxyBaseUrl, buildProxyHeaders, } from "../../shared/llm-proxy.js";
34
+ import { mergeApprovalPolicies, deriveActiveLeases, } from "../../shared/approval-policy.js";
30
35
  import { mergeSkillRefs, fetchSkillsByRefs, writeSkills, generatePromptSection, generateAlsoAvailableSection, fetchSkillArtifacts, } from "../../shared/skill-writer.js";
31
36
  import { filterSkills, SKILL_COUNT_THRESHOLD } from "../../shared/skill-relevance.js";
32
37
  import { injectAttachments } from "./attachment-injector.js";
@@ -70,12 +75,66 @@ export async function performSetup(deps) {
70
75
  // Step 5: Resolve environment
71
76
  await reportSetupProgress(client, executionId, "Resolving environment…");
72
77
  const envResult = await resolveEnvironment(client, executionId);
73
- // Step 6: Create artifact storage
74
- const artifactStorageConfig = loadArtifactStorageConfig(config);
75
- const artifactStorage = createArtifactStorage(artifactStorageConfig);
78
+ // Step 6: Create artifact storage. Best-effort, mirroring the Cursor harness:
79
+ // `createArtifactStorage` throws only for proxy transport with a missing
80
+ // token/endpoint (a misconfiguration; local storage never throws). We degrade
81
+ // rather than crash — an absent store flips capture mode off (deny-gate
82
+ // fallback below) and disables offload, instead of failing the whole execution.
83
+ let artifactStorage;
84
+ try {
85
+ artifactStorage = createArtifactStorage(loadArtifactStorageConfig(config));
86
+ }
87
+ catch (storageErr) {
88
+ console.warn(`[setup] artifact storage unavailable — capture degrades to the deny-gate ` +
89
+ `and tool-output offload is disabled: execution=${executionId}, error=${storageErr}`);
90
+ }
76
91
  // Step 7: Provision workspace
77
92
  await reportSetupProgress(client, executionId, "Initializing workspace…");
78
93
  const { workspaceBackend, provisionResults } = await provisionWorkspace(config, session, envResult.mergedEnvVars, sessionId);
94
+ // Apply-then-review is the file-review model whenever there is a capture
95
+ // SUBSTRATE (DD-21 D2, Slice 2b): file edits flow during the turn and are
96
+ // reviewed post-hoc as a captured `FileChangeSet` (reconciled byte-exactly on
97
+ // resume), never gated before they run. The substrate is selected by
98
+ // `gitWorkspace`:
99
+ // - a git work tree diffs a pinned baseline -> candidate tree (git-substrate,
100
+ // needs no artifact storage), and routes its .gitignored edits into the
101
+ // path-scoped CAS observer;
102
+ // - a non-git workspace has no git snapshot at all, so EVERY touched path is
103
+ // captured into the content-addressed CAS manifest (cas-substrate), which
104
+ // needs artifact storage to persist blobs.
105
+ // So a non-git workspace with NO artifact storage has no substrate: capture
106
+ // degrades to the deny-gate (file writes gated pre-execution), exactly like the
107
+ // Cursor harness (DD-22). `deriveCaptureMode` is the shared decision so both
108
+ // harnesses degrade identically. When capture is on, the deny-gate survives only
109
+ // for shell/MCP/irreversible tools.
110
+ const gitWorkspace = await isGitWorkTree(workspaceBackend.rootDir);
111
+ const captureMode = deriveCaptureMode(workspaceBackend.rootDir, gitWorkspace, !!artifactStorage);
112
+ // Git-tracked capturability, consulted by the gate to route a file write to
113
+ // disk-and-git-diff (tracked) vs into CAS (ignored). Only meaningful in a git
114
+ // work tree. In a non-git workspace nothing is "git-capturable" (there is no
115
+ // snapshot), so this resolves false for every path and the gate routes all
116
+ // file writes through its captureIgnored (CAS) arm.
117
+ const isCapturablePath = gitWorkspace
118
+ ? (rawPath) => isPathCapturable(workspaceBackend.rootDir, resolveWorkspacePath(rawPath, workspaceBackend.rootDir, true).path)
119
+ : (_rawPath) => Promise.resolve(false);
120
+ // CAS capture (design docs 08/11/12): the content-addressed half of
121
+ // apply-then-review. The single per-turn observer owns the before-bytes of
122
+ // first-touched CAS-owned paths AND the secret-blocked paths, keyed
123
+ // workspace-root-relative so they align with the CAS reconcile's
124
+ // `join(workspaceRoot, path)`. It is shared by the parent AND every sub-agent
125
+ // CAS backend, giving race-free first-touch-wins across concurrent graphs.
126
+ // Its ownership predicate is memoized, so `git check-ignore` runs at most once
127
+ // per distinct path.
128
+ const casObserver = new CasCaptureObserver({
129
+ rootDir: workspaceBackend.rootDir,
130
+ // Which touched paths the observer owns (records pre-turn bytes for). In a
131
+ // git work tree that is the .gitignored set only — git captures the tracked
132
+ // ones. In a non-git workspace there is no git substrate, so the observer
133
+ // owns EVERY touched path; the CAS manifest is the sole capture surface.
134
+ isIgnored: gitWorkspace
135
+ ? async (relPath) => !(await isPathCapturable(workspaceBackend.rootDir, relPath))
136
+ : async () => true,
137
+ });
79
138
  // Step 7: Resolve and connect MCP servers
80
139
  const mcpServerUsages = [
81
140
  ...(agent.spec.mcpServerUsages || []),
@@ -140,8 +199,17 @@ export async function performSetup(deps) {
140
199
  workspaceRoot: workspaceBackend.rootDir,
141
200
  injectedFiles,
142
201
  });
143
- // Step 9: Construct the LLM model
144
- const model = constructModel(modelName, config, executionId);
202
+ // Step 9: Construct the LLM model. Resolution to the provider API id
203
+ // happens inside buildChatModel; modelName stays the registry id for
204
+ // pricing, the native-thinking heuristic, and sub-agent inheritance.
205
+ const requestTimeoutMs = parseInt(process.env.STIGMER_LLM_REQUEST_TIMEOUT_MS ?? "0") || undefined;
206
+ const { model } = await buildChatModel({
207
+ modelName,
208
+ proxyEndpoint: config.proxyEndpoint ?? undefined,
209
+ stigmerToken: config.stigmerToken ?? undefined,
210
+ headerScope: { executionId },
211
+ timeoutMs: requestTimeoutMs,
212
+ });
145
213
  // Step 10: Build middleware stack
146
214
  await ensurePricingLoaded();
147
215
  const pricing = getModelPricing(modelName);
@@ -154,17 +222,53 @@ export async function performSetup(deps) {
154
222
  }
155
223
  }
156
224
  }
157
- // Step 10b: Resolve approval policies
225
+ // Step 10b: Resolve approval policies + leases.
158
226
  //
159
- // Effective auto-approve is true when EITHER the execution was pre-armed via
160
- // spec.auto_approve_all (CLI --auto-approve, API, CI/CD) OR a user chose
161
- // APPROVE_ALL ("approve and don't ask again") at some gate earlier in this
162
- // run. In both cases the gate is disabled for the rest of the execution, and
163
- // the value propagates to mergeApprovalPolicies and (below) to sub-agents so
164
- // they inherit it. See the ApprovalAction doc in enum.proto.
165
- const autoApproveAll = (execution.spec.autoApproveAll ?? false) || hasApproveAllDecision(execution);
227
+ // Two distinct bypasses (see ActiveLeases): the pre-armed
228
+ // spec.auto_approve_all is the one whole-run global bypass; an interactive
229
+ // APPROVE_ALL grants a run-lifetime lease scoped to that action's class (its
230
+ // built-in category, or its MCP server). Server leases shape the policy map
231
+ // (leased servers dropped); built-in category leases are applied inside the
232
+ // gate. Both flow into sub-agents via the shared config below.
233
+ const leases = deriveActiveLeases(execution);
234
+ const globalBypass = leases.global;
166
235
  const agentOverrides = agent.spec.mcpServerUsages?.flatMap(u => u.toolApprovalOverrides ?? []) ?? [];
167
- const approvalPolicies = mergeApprovalPolicies(resolvedMcpServers?.resolvedServers ?? [], agentOverrides, autoApproveAll);
236
+ const approvalPolicies = mergeApprovalPolicies(resolvedMcpServers?.resolvedServers ?? [], agentOverrides, leases);
237
+ // The approval gate config is the single source of truth for HITL gating,
238
+ // built once and inherited verbatim by sub-agents (so a mutating tool inside
239
+ // a sub-agent is gated identically to one in the parent). Null under the
240
+ // global pre-arm, where the gate is inert; under scoped leases the gate stays
241
+ // active and clears only leased categories. The per-execution fingerprint key
242
+ // (runner master secret + execution_id) drives the shadow ExecutionReceipt.
243
+ const approvalGateConfig = !globalBypass
244
+ ? {
245
+ policies: approvalPolicies,
246
+ leasedCategories: leases.categories,
247
+ toolServerMap,
248
+ fingerprintKey: deriveExecutionFingerprintKey(getRunnerHitlMasterSecret(), executionId),
249
+ executionId,
250
+ // Capture mode: file edits flow and are reviewed post-hoc. In a git work
251
+ // tree, git-tracked edits flow to the git diff and .gitignored edits flow
252
+ // into CAS (captureIgnored) on THIS parent gate; in a non-git workspace
253
+ // isCapturablePath is always false, so ALL file writes take the CAS arm.
254
+ // Secret-like paths are hard-blocked (DD-E) and recorded for a
255
+ // DIFF_UNREVIEWABLE entry. shell/MCP stay gated. Sub-agents inherit this
256
+ // config; buildSubAgentMiddleware sets their captureIgnored explicitly
257
+ // from whether a CAS observer backs the sub-agent (Session 26, DD-19),
258
+ // so their captured edits flow into the SAME observer.
259
+ //
260
+ // When captureMode is false (no substrate — non-git + no storage),
261
+ // fileCaptureMode is false so file writes take the plain deny-gate. The
262
+ // CAS arm additionally requires storage: captureIgnored gates gitignored
263
+ // writes onto CAS only when a store exists to persist their blobs (the
264
+ // git+no-storage case), matching the Cursor harness's
265
+ // `captureMode && !!artifactStorage`.
266
+ fileCaptureMode: captureMode,
267
+ isCapturablePath,
268
+ captureIgnored: captureMode && !!artifactStorage,
269
+ recordBlockedSecret: (rawPath) => casObserver.recordBlockedSecret(rawPath),
270
+ }
271
+ : null;
168
272
  const maxCostUsd = execConfig?.maxCostUsd ?? 0;
169
273
  const { middleware, gracefulStop, costCap: costCapMiddleware } = buildMiddlewareStack({
170
274
  loopDetection: {
@@ -189,11 +293,7 @@ export async function performSetup(deps) {
189
293
  warningPct: 80,
190
294
  } : null,
191
295
  otelSpans: { toolServerMap },
192
- approvalGate: !autoApproveAll ? {
193
- policies: approvalPolicies,
194
- autoApproveAll,
195
- toolServerMap,
196
- } : null,
296
+ approvalGate: approvalGateConfig,
197
297
  });
198
298
  // Step 11: Build tools list (MCP tools + think tool)
199
299
  const tools = [
@@ -218,12 +318,21 @@ export async function performSetup(deps) {
218
318
  parentMcpUsages: mcpServerUsages,
219
319
  skillClient: client,
220
320
  workspaceBackend,
221
- approvalPolicies,
222
- autoApproveAll,
321
+ approvalGate: approvalGateConfig,
322
+ // Capture is universal (Slice 2b), so every sub-agent gets a CAS-observing
323
+ // backend wired to the SAME per-turn observer as the parent — their
324
+ // captured writes (.gitignored in a git tree, all touched paths in a
325
+ // non-git one) compose into the parent's change set (Session 26, DD-19).
326
+ casObserver,
223
327
  parentModelName: modelName,
224
328
  parentHasNativeThinking: _modelHasNativeThinking(modelName),
225
329
  costCap: costCapMiddleware ?? undefined,
226
- modelFactory: (m) => constructModel(m, config, executionId),
330
+ modelFactory: async (m) => (await buildChatModel({
331
+ modelName: m,
332
+ proxyEndpoint: config.proxyEndpoint ?? undefined,
333
+ stigmerToken: config.stigmerToken ?? undefined,
334
+ headerScope: { executionId },
335
+ })).model,
227
336
  });
228
337
  }
229
338
  // Step 12: Create the agent graph with middleware
@@ -243,10 +352,17 @@ export async function performSetup(deps) {
243
352
  const planModePermissions = [
244
353
  { operations: ["write"], paths: ["/**"], mode: "deny" },
245
354
  ];
355
+ // File capture point. Apply-then-review is universal (Slice 2b), so the
356
+ // CAS-observing backend: git-tracked edits flow to disk (the turn-boundary
357
+ // git diff is authoritative), and the shared CAS observer records the pre-turn
358
+ // bytes of every CAS-owned path — .gitignored paths in a git work tree, all
359
+ // touched paths in a non-git one — so the boundary can capture them into CAS.
360
+ // It is gate-independent, so it holds even under the global bypass.
361
+ const fileBackend = new CasCaptureFilesystemBackend({ rootDir: workspaceBackend.rootDir }, { observer: casObserver });
246
362
  const agentGraph = await createDeepAgent({
247
363
  model,
248
364
  checkpointer: checkpointer,
249
- backend: new FilesystemBackend({ rootDir: workspaceBackend.rootDir }),
365
+ backend: fileBackend,
250
366
  systemPrompt,
251
367
  tools,
252
368
  middleware: middleware,
@@ -286,9 +402,13 @@ export async function performSetup(deps) {
286
402
  provisionResults,
287
403
  approvalPolicies,
288
404
  toolServerMap,
289
- autoApproveAll,
405
+ leasedCategories: leases.categories,
406
+ globalBypass,
290
407
  hasStructuredOutput: !!outputSchema,
291
408
  streamVersion,
409
+ casObserver,
410
+ captureMode,
411
+ gitWorkspace,
292
412
  };
293
413
  }
294
414
  catch (err) {
@@ -301,69 +421,6 @@ export async function performSetup(deps) {
301
421
  throw err;
302
422
  }
303
423
  }
304
- /**
305
- * Construct the appropriate chat model for the given model name.
306
- *
307
- * Provider inference uses name prefix heuristics (claude → Anthropic,
308
- * gpt/o1/o3/o4 → OpenAI). In proxy mode, requests route through the
309
- * stigmer-cloud LlmProxyController at provider-specific paths.
310
- */
311
- function constructModel(modelName, config, executionId) {
312
- const provider = inferProvider(modelName);
313
- const apiModelId = stripProviderPrefix(modelName);
314
- const baseUrl = config.proxyEndpoint
315
- ? resolveProxyBaseUrl(config.proxyEndpoint, provider)
316
- : undefined;
317
- const headers = config.proxyEndpoint && config.stigmerToken
318
- ? buildProxyHeaders(config.stigmerToken, { executionId })
319
- : undefined;
320
- switch (provider) {
321
- case "anthropic":
322
- return buildAnthropicModel(apiModelId, baseUrl, headers, config);
323
- case "openai":
324
- return buildOpenAIModel(apiModelId, baseUrl, headers, config);
325
- }
326
- }
327
- function buildAnthropicModel(model, baseUrl, headers, config) {
328
- const apiKey = config.proxyEndpoint
329
- ? (config.stigmerToken ?? "proxy-managed")
330
- : (process.env.ANTHROPIC_API_KEY ?? "");
331
- const requestTimeoutMs = parseInt(process.env.STIGMER_LLM_REQUEST_TIMEOUT_MS ?? "0") || undefined;
332
- return new ChatAnthropic({
333
- model,
334
- apiKey,
335
- temperature: 0,
336
- ...(requestTimeoutMs ? { maxRetries: 0, timeout: requestTimeoutMs } : {}),
337
- ...(baseUrl || headers
338
- ? {
339
- clientOptions: {
340
- ...(baseUrl ? { baseURL: baseUrl } : {}),
341
- ...(headers ? { defaultHeaders: headers } : {}),
342
- },
343
- }
344
- : {}),
345
- });
346
- }
347
- function buildOpenAIModel(model, baseUrl, headers, config) {
348
- const apiKey = config.proxyEndpoint
349
- ? (config.stigmerToken ?? "proxy-managed")
350
- : (process.env.OPENAI_API_KEY ?? "");
351
- const requestTimeoutMs = parseInt(process.env.STIGMER_LLM_REQUEST_TIMEOUT_MS ?? "0") || undefined;
352
- return new ChatOpenAI({
353
- model,
354
- apiKey,
355
- temperature: 0,
356
- ...(requestTimeoutMs ? { maxRetries: 0, timeout: requestTimeoutMs } : {}),
357
- ...(baseUrl || headers
358
- ? {
359
- configuration: {
360
- ...(baseUrl ? { baseURL: baseUrl } : {}),
361
- ...(headers ? { defaultHeaders: headers } : {}),
362
- },
363
- }
364
- : {}),
365
- });
366
- }
367
424
  /**
368
425
  * Provision workspace from session workspace entries.
369
426
  */