@namzu/sdk 42.0.2 → 44.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2100) hide show
  1. package/CHANGELOG.md +540 -0
  2. package/README.md +41 -34
  3. package/dist/advisory/budget.js +3 -3
  4. package/dist/advisory/budget.js.map +1 -1
  5. package/dist/advisory/context.d.ts +5 -5
  6. package/dist/advisory/context.d.ts.map +1 -1
  7. package/dist/advisory/context.js +6 -6
  8. package/dist/advisory/context.js.map +1 -1
  9. package/dist/advisory/evaluator.js +2 -2
  10. package/dist/advisory/evaluator.js.map +1 -1
  11. package/dist/advisory/parse.d.ts +1 -1
  12. package/dist/advisory/parse.js +1 -1
  13. package/dist/agents/AbstractAgent.d.ts +47 -40
  14. package/dist/agents/AbstractAgent.d.ts.map +1 -1
  15. package/dist/agents/AbstractAgent.js +60 -46
  16. package/dist/agents/AbstractAgent.js.map +1 -1
  17. package/dist/agents/PipelineAgent.d.ts +7 -7
  18. package/dist/agents/PipelineAgent.d.ts.map +1 -1
  19. package/dist/agents/PipelineAgent.js +75 -23
  20. package/dist/agents/PipelineAgent.js.map +1 -1
  21. package/dist/agents/ReactiveAgent.d.ts +7 -7
  22. package/dist/agents/ReactiveAgent.d.ts.map +1 -1
  23. package/dist/agents/ReactiveAgent.js +32 -25
  24. package/dist/agents/ReactiveAgent.js.map +1 -1
  25. package/dist/agents/RouterAgent.d.ts +7 -7
  26. package/dist/agents/RouterAgent.d.ts.map +1 -1
  27. package/dist/agents/RouterAgent.js +29 -32
  28. package/dist/agents/RouterAgent.js.map +1 -1
  29. package/dist/agents/SupervisorAgent.d.ts +13 -10
  30. package/dist/agents/SupervisorAgent.d.ts.map +1 -1
  31. package/dist/agents/SupervisorAgent.js +50 -36
  32. package/dist/agents/SupervisorAgent.js.map +1 -1
  33. package/dist/agents/budget.d.ts +17 -4
  34. package/dist/agents/budget.d.ts.map +1 -1
  35. package/dist/agents/budget.js +55 -14
  36. package/dist/agents/budget.js.map +1 -1
  37. package/dist/agents/defineAgent.d.ts +2 -2
  38. package/dist/agents/defineAgent.d.ts.map +1 -1
  39. package/dist/agents/defineAgent.js.map +1 -1
  40. package/dist/agents/handle.d.ts +12 -14
  41. package/dist/agents/handle.d.ts.map +1 -1
  42. package/dist/agents/handle.js +6 -6
  43. package/dist/agents/handle.js.map +1 -1
  44. package/dist/agents/lock.js +4 -4
  45. package/dist/agents/lock.js.map +1 -1
  46. package/dist/agents/runAgent.d.ts +42 -29
  47. package/dist/agents/runAgent.d.ts.map +1 -1
  48. package/dist/agents/runAgent.js +53 -14
  49. package/dist/agents/runAgent.js.map +1 -1
  50. package/dist/agents/storage.d.ts +21 -0
  51. package/dist/agents/storage.d.ts.map +1 -0
  52. package/dist/agents/storage.js +33 -0
  53. package/dist/agents/storage.js.map +1 -0
  54. package/dist/authorization/command-line.d.ts +1 -1
  55. package/dist/authorization/command-line.js +1 -1
  56. package/dist/authorization/gate.js +1 -1
  57. package/dist/authorization/gate.js.map +1 -1
  58. package/dist/authorization/permission-presets.d.ts +4 -4
  59. package/dist/authorization/permission-presets.d.ts.map +1 -1
  60. package/dist/authorization/permission-presets.js +2 -2
  61. package/dist/bridge/a2a/client.d.ts +1 -1
  62. package/dist/bridge/a2a/client.js +2 -2
  63. package/dist/bridge/a2a/client.js.map +1 -1
  64. package/dist/bridge/a2a/context.d.ts +26 -0
  65. package/dist/bridge/a2a/context.d.ts.map +1 -0
  66. package/dist/bridge/a2a/context.js +20 -0
  67. package/dist/bridge/a2a/context.js.map +1 -0
  68. package/dist/bridge/a2a/index.d.ts +4 -2
  69. package/dist/bridge/a2a/index.d.ts.map +1 -1
  70. package/dist/bridge/a2a/index.js +6 -2
  71. package/dist/bridge/a2a/index.js.map +1 -1
  72. package/dist/bridge/a2a/mapper.d.ts +12 -4
  73. package/dist/bridge/a2a/mapper.d.ts.map +1 -1
  74. package/dist/bridge/a2a/mapper.js +38 -31
  75. package/dist/bridge/a2a/mapper.js.map +1 -1
  76. package/dist/bridge/a2a/task.d.ts +39 -7
  77. package/dist/bridge/a2a/task.d.ts.map +1 -1
  78. package/dist/bridge/a2a/task.js +52 -31
  79. package/dist/bridge/a2a/task.js.map +1 -1
  80. package/dist/bridge/acp/permission.d.ts +2 -2
  81. package/dist/bridge/acp/server.d.ts +22 -8
  82. package/dist/bridge/acp/server.d.ts.map +1 -1
  83. package/dist/bridge/acp/server.js +18 -5
  84. package/dist/bridge/acp/server.js.map +1 -1
  85. package/dist/bridge/acp/update.d.ts +4 -4
  86. package/dist/bridge/acp/update.d.ts.map +1 -1
  87. package/dist/bridge/acp/update.js +6 -6
  88. package/dist/bridge/acp/update.js.map +1 -1
  89. package/dist/bridge/external-session.d.ts +43 -0
  90. package/dist/bridge/external-session.d.ts.map +1 -0
  91. package/dist/bridge/external-session.js +28 -0
  92. package/dist/bridge/external-session.js.map +1 -0
  93. package/dist/bridge/sse/index.d.ts +1 -1
  94. package/dist/bridge/sse/index.d.ts.map +1 -1
  95. package/dist/bridge/sse/index.js +1 -1
  96. package/dist/bridge/sse/index.js.map +1 -1
  97. package/dist/bridge/sse/mapper.d.ts +21 -13
  98. package/dist/bridge/sse/mapper.d.ts.map +1 -1
  99. package/dist/bridge/sse/mapper.js +99 -129
  100. package/dist/bridge/sse/mapper.js.map +1 -1
  101. package/dist/bus/breaker.d.ts +6 -6
  102. package/dist/bus/breaker.d.ts.map +1 -1
  103. package/dist/bus/breaker.js +28 -27
  104. package/dist/bus/breaker.js.map +1 -1
  105. package/dist/bus/index.d.ts +2 -2
  106. package/dist/bus/index.d.ts.map +1 -1
  107. package/dist/bus/index.js +6 -6
  108. package/dist/bus/index.js.map +1 -1
  109. package/dist/bus/lock.d.ts +5 -5
  110. package/dist/bus/lock.d.ts.map +1 -1
  111. package/dist/bus/lock.js.map +1 -1
  112. package/dist/bus/ownership.d.ts +8 -8
  113. package/dist/bus/ownership.d.ts.map +1 -1
  114. package/dist/bus/ownership.js.map +1 -1
  115. package/dist/compaction/consolidation.d.ts +23 -11
  116. package/dist/compaction/consolidation.d.ts.map +1 -1
  117. package/dist/compaction/consolidation.js +43 -13
  118. package/dist/compaction/consolidation.js.map +1 -1
  119. package/dist/compaction/context-window.d.ts +4 -4
  120. package/dist/compaction/context-window.js +4 -4
  121. package/dist/compaction/index.d.ts +1 -1
  122. package/dist/compaction/index.d.ts.map +1 -1
  123. package/dist/compaction/index.js +2 -2
  124. package/dist/compaction/index.js.map +1 -1
  125. package/dist/compaction/manager.d.ts +4 -4
  126. package/dist/compaction/manager.js +4 -4
  127. package/dist/compaction/manual.d.ts +2 -2
  128. package/dist/compaction/manual.js +3 -3
  129. package/dist/compaction/manual.js.map +1 -1
  130. package/dist/compaction/plan.d.ts +5 -5
  131. package/dist/compaction/plan.js +4 -4
  132. package/dist/compaction/plan.js.map +1 -1
  133. package/dist/compaction/reducer.d.ts +8 -8
  134. package/dist/compaction/reducer.d.ts.map +1 -1
  135. package/dist/compaction/retention.js +2 -2
  136. package/dist/compaction/salience/bm25.d.ts +2 -2
  137. package/dist/compaction/salience/bm25.js +2 -2
  138. package/dist/compaction/salience/goal.d.ts +3 -3
  139. package/dist/compaction/salience/goal.js +3 -3
  140. package/dist/compaction/salience/minhash.d.ts +1 -1
  141. package/dist/compaction/salience/minhash.js +1 -1
  142. package/dist/compaction/salience/score.d.ts +2 -2
  143. package/dist/compaction/salience/score.js +3 -3
  144. package/dist/compaction/salience/score.js.map +1 -1
  145. package/dist/compaction/salience/tokenize.d.ts +1 -1
  146. package/dist/compaction/salience/tokenize.js +1 -1
  147. package/dist/compaction/verifier.d.ts +6 -6
  148. package/dist/compaction/verifier.js +5 -5
  149. package/dist/compaction/verifier.js.map +1 -1
  150. package/dist/compaction/wire.d.ts +1 -1
  151. package/dist/config/registry.d.ts +4 -4
  152. package/dist/config/registry.js +2 -2
  153. package/dist/config/runtime.d.ts +24 -24
  154. package/dist/config/runtime.js +3 -3
  155. package/dist/connector/http-operation.d.ts +1 -1
  156. package/dist/connector/http-operation.js +1 -1
  157. package/dist/connector/mcp/adapter.js +1 -1
  158. package/dist/connector/mcp/client.d.ts +1 -1
  159. package/dist/connector/mcp/client.js +1 -1
  160. package/dist/connector/mcp/discovery.d.ts +1 -1
  161. package/dist/connector/mcp/discovery.js +1 -1
  162. package/dist/connector/mcp/discovery.js.map +1 -1
  163. package/dist/connector/mcp/policy.d.ts +1 -1
  164. package/dist/connector/mcp/prompt-adapter.d.ts +1 -1
  165. package/dist/connector/mcp/prompt-adapter.js +3 -3
  166. package/dist/connector/mcp/prompt-adapter.js.map +1 -1
  167. package/dist/constants/a2a/index.d.ts +8 -2
  168. package/dist/constants/a2a/index.d.ts.map +1 -1
  169. package/dist/constants/a2a/index.js +9 -2
  170. package/dist/constants/a2a/index.js.map +1 -1
  171. package/dist/constants/continuation.d.ts +1 -1
  172. package/dist/constants/continuation.js +1 -1
  173. package/dist/constants/index.d.ts +0 -1
  174. package/dist/constants/index.d.ts.map +1 -1
  175. package/dist/constants/index.js +0 -1
  176. package/dist/constants/index.js.map +1 -1
  177. package/dist/constants/limits.d.ts +2 -2
  178. package/dist/constants/limits.js +2 -2
  179. package/dist/constants/telemetry/index.d.ts +9 -3
  180. package/dist/constants/telemetry/index.d.ts.map +1 -1
  181. package/dist/constants/telemetry/index.js +14 -12
  182. package/dist/constants/telemetry/index.js.map +1 -1
  183. package/dist/constants/tools/index.d.ts +2 -2
  184. package/dist/constants/tools/index.js +2 -2
  185. package/dist/contracts/a2a.d.ts +2 -2
  186. package/dist/contracts/api.d.ts +11 -126
  187. package/dist/contracts/api.d.ts.map +1 -1
  188. package/dist/contracts/index.d.ts +3 -2
  189. package/dist/contracts/index.d.ts.map +1 -1
  190. package/dist/contracts/index.js +7 -2
  191. package/dist/contracts/index.js.map +1 -1
  192. package/dist/contracts/schemas.d.ts +6 -165
  193. package/dist/contracts/schemas.d.ts.map +1 -1
  194. package/dist/contracts/schemas.js +6 -36
  195. package/dist/contracts/schemas.js.map +1 -1
  196. package/dist/contracts/session/api.d.ts +94 -0
  197. package/dist/contracts/session/api.d.ts.map +1 -0
  198. package/dist/contracts/session/api.js +10 -0
  199. package/dist/contracts/session/api.js.map +1 -0
  200. package/dist/contracts/session/index.d.ts +7 -0
  201. package/dist/contracts/session/index.d.ts.map +1 -0
  202. package/dist/contracts/session/index.js +7 -0
  203. package/dist/contracts/session/index.js.map +1 -0
  204. package/dist/contracts/session/schemas.d.ts +173 -0
  205. package/dist/contracts/session/schemas.d.ts.map +1 -0
  206. package/dist/contracts/session/schemas.js +52 -0
  207. package/dist/contracts/session/schemas.js.map +1 -0
  208. package/dist/contracts/session/turn-status.d.ts +45 -0
  209. package/dist/contracts/session/turn-status.d.ts.map +1 -0
  210. package/dist/contracts/session/turn-status.js +46 -0
  211. package/dist/contracts/session/turn-status.js.map +1 -0
  212. package/dist/contracts/session/turn.d.ts +64 -0
  213. package/dist/contracts/session/turn.d.ts.map +1 -0
  214. package/dist/contracts/session/turn.js +2 -0
  215. package/dist/contracts/session/turn.js.map +1 -0
  216. package/dist/directory/derive-supervisor.d.ts +1 -1
  217. package/dist/directory/derive-supervisor.js +2 -2
  218. package/dist/directory/derive-supervisor.js.map +1 -1
  219. package/dist/directory/derive.d.ts +2 -2
  220. package/dist/directory/derive.d.ts.map +1 -1
  221. package/dist/directory/derive.js +2 -2
  222. package/dist/directory/derive.js.map +1 -1
  223. package/dist/directory/index.d.ts +2 -2
  224. package/dist/directory/index.d.ts.map +1 -1
  225. package/dist/directory/index.js +1 -1
  226. package/dist/directory/index.js.map +1 -1
  227. package/dist/directory/load.js +2 -2
  228. package/dist/directory/load.js.map +1 -1
  229. package/dist/directory/types.d.ts +2 -2
  230. package/dist/directory/types.d.ts.map +1 -1
  231. package/dist/eval/experiment.d.ts +5 -5
  232. package/dist/eval/experiment.d.ts.map +1 -1
  233. package/dist/eval/experiment.js +18 -18
  234. package/dist/eval/experiment.js.map +1 -1
  235. package/dist/eval/from-turn.d.ts +30 -0
  236. package/dist/eval/from-turn.d.ts.map +1 -0
  237. package/dist/eval/from-turn.js +46 -0
  238. package/dist/eval/from-turn.js.map +1 -0
  239. package/dist/eval/harness-verification.js +7 -7
  240. package/dist/eval/harness-verification.js.map +1 -1
  241. package/dist/eval/index.d.ts +2 -2
  242. package/dist/eval/index.d.ts.map +1 -1
  243. package/dist/eval/index.js +1 -1
  244. package/dist/eval/index.js.map +1 -1
  245. package/dist/eval/judge.d.ts +3 -3
  246. package/dist/eval/judge.d.ts.map +1 -1
  247. package/dist/eval/judge.js +6 -6
  248. package/dist/eval/judge.js.map +1 -1
  249. package/dist/eval/scorers.d.ts +8 -8
  250. package/dist/eval/scorers.d.ts.map +1 -1
  251. package/dist/eval/scorers.js +21 -21
  252. package/dist/eval/scorers.js.map +1 -1
  253. package/dist/eval/types.d.ts +12 -12
  254. package/dist/eval/types.d.ts.map +1 -1
  255. package/dist/eval/uncertainty.d.ts +2 -2
  256. package/dist/eval/uncertainty.js +2 -2
  257. package/dist/execution/code-runtime/types.d.ts +4 -4
  258. package/dist/execution/code-runtime/types.js +2 -2
  259. package/dist/execution/code-runtime/worker.d.ts +1 -1
  260. package/dist/execution/code-runtime/worker.js +1 -1
  261. package/dist/invariants/index.d.ts +1 -1
  262. package/dist/manager/agent/child-session.d.ts +49 -0
  263. package/dist/manager/agent/child-session.d.ts.map +1 -0
  264. package/dist/manager/agent/child-session.js +94 -0
  265. package/dist/manager/agent/child-session.js.map +1 -0
  266. package/dist/manager/agent/lifecycle.d.ts +90 -13
  267. package/dist/manager/agent/lifecycle.d.ts.map +1 -1
  268. package/dist/manager/agent/lifecycle.js +332 -88
  269. package/dist/manager/agent/lifecycle.js.map +1 -1
  270. package/dist/manager/index.d.ts +1 -2
  271. package/dist/manager/index.d.ts.map +1 -1
  272. package/dist/manager/index.js +1 -2
  273. package/dist/manager/index.js.map +1 -1
  274. package/dist/manager/plan/lifecycle.d.ts +11 -7
  275. package/dist/manager/plan/lifecycle.d.ts.map +1 -1
  276. package/dist/manager/plan/lifecycle.js +12 -9
  277. package/dist/manager/plan/lifecycle.js.map +1 -1
  278. package/dist/manager/resident/consumption.d.ts +12 -6
  279. package/dist/manager/resident/consumption.d.ts.map +1 -1
  280. package/dist/manager/resident/consumption.js +7 -5
  281. package/dist/manager/resident/consumption.js.map +1 -1
  282. package/dist/manager/resident/evidence-recall.d.ts +5 -5
  283. package/dist/manager/resident/evidence-recall.d.ts.map +1 -1
  284. package/dist/manager/resident/evidence-recall.js +9 -9
  285. package/dist/manager/resident/evidence-recall.js.map +1 -1
  286. package/dist/manager/resident/host.d.ts +2 -2
  287. package/dist/manager/resident/host.d.ts.map +1 -1
  288. package/dist/manager/resident/host.js +1 -1
  289. package/dist/manager/resident/learning-cycle.d.ts +8 -4
  290. package/dist/manager/resident/learning-cycle.d.ts.map +1 -1
  291. package/dist/manager/resident/learning-cycle.js +4 -2
  292. package/dist/manager/resident/learning-cycle.js.map +1 -1
  293. package/dist/manager/resident/learning-observation.d.ts +12 -7
  294. package/dist/manager/resident/learning-observation.d.ts.map +1 -1
  295. package/dist/manager/resident/learning-observation.js +8 -4
  296. package/dist/manager/resident/learning-observation.js.map +1 -1
  297. package/dist/manager/resident/learning-store.d.ts +13 -0
  298. package/dist/manager/resident/learning-store.d.ts.map +1 -1
  299. package/dist/manager/resident/learning-store.js +35 -16
  300. package/dist/manager/resident/learning-store.js.map +1 -1
  301. package/dist/manager/resident/learning.d.ts +14 -14
  302. package/dist/manager/resident/outbox.d.ts +4 -4
  303. package/dist/manager/resident/store.d.ts +8 -8
  304. package/dist/manager/resident/tool-evidence.d.ts +15 -10
  305. package/dist/manager/resident/tool-evidence.d.ts.map +1 -1
  306. package/dist/manager/resident/tool-evidence.js +14 -14
  307. package/dist/manager/resident/tool-evidence.js.map +1 -1
  308. package/dist/manager/session/turn-recorder.d.ts +261 -0
  309. package/dist/manager/session/turn-recorder.d.ts.map +1 -0
  310. package/dist/manager/session/turn-recorder.js +1115 -0
  311. package/dist/manager/session/turn-recorder.js.map +1 -0
  312. package/dist/plugin/lifecycle.d.ts +4 -4
  313. package/dist/plugin/lifecycle.d.ts.map +1 -1
  314. package/dist/plugin/lifecycle.js +17 -10
  315. package/dist/plugin/lifecycle.js.map +1 -1
  316. package/dist/plugin/shell-hook.d.ts +35 -12
  317. package/dist/plugin/shell-hook.d.ts.map +1 -1
  318. package/dist/plugin/shell-hook.js +52 -20
  319. package/dist/plugin/shell-hook.js.map +1 -1
  320. package/dist/pricing/index.d.ts +4 -4
  321. package/dist/pricing/index.js +5 -5
  322. package/dist/pricing/index.js.map +1 -1
  323. package/dist/probe/context.d.ts +3 -2
  324. package/dist/probe/context.d.ts.map +1 -1
  325. package/dist/probe/context.js +2 -1
  326. package/dist/probe/context.js.map +1 -1
  327. package/dist/probe/registry.js +1 -1
  328. package/dist/probe/registry.js.map +1 -1
  329. package/dist/prompt/coding-agent-doctrine.d.ts +1 -1
  330. package/dist/prompt/coding-agent-doctrine.js +1 -1
  331. package/dist/prompt/contributions.d.ts +27 -6
  332. package/dist/prompt/contributions.d.ts.map +1 -1
  333. package/dist/prompt/contributions.js +1 -1
  334. package/dist/prompt/contributions.js.map +1 -1
  335. package/dist/prompt/resident-learning.js +2 -2
  336. package/dist/prompt/resident-learning.js.map +1 -1
  337. package/dist/provider/collect-chat-completion.d.ts +2 -2
  338. package/dist/provider/collect-chat-completion.js +3 -3
  339. package/dist/provider/collect-chat-completion.js.map +1 -1
  340. package/dist/provider/conformance.d.ts +8 -1
  341. package/dist/provider/conformance.d.ts.map +1 -1
  342. package/dist/provider/conformance.js +13 -1
  343. package/dist/provider/conformance.js.map +1 -1
  344. package/dist/provider/errors.d.ts +1 -1
  345. package/dist/provider/errors.js +2 -2
  346. package/dist/provider/fallback.d.ts +4 -4
  347. package/dist/provider/fallback.js +6 -6
  348. package/dist/provider/fallback.js.map +1 -1
  349. package/dist/provider/idle-timeout.d.ts +2 -2
  350. package/dist/provider/idle-timeout.d.ts.map +1 -1
  351. package/dist/provider/idle-timeout.js +3 -3
  352. package/dist/provider/idle-timeout.js.map +1 -1
  353. package/dist/provider/instrumentation.d.ts +5 -2
  354. package/dist/provider/instrumentation.d.ts.map +1 -1
  355. package/dist/provider/instrumentation.js +9 -5
  356. package/dist/provider/instrumentation.js.map +1 -1
  357. package/dist/provider/mock.d.ts +1 -1
  358. package/dist/provider/mock.js +1 -1
  359. package/dist/provider/retry.d.ts +2 -2
  360. package/dist/provider/retry.js +6 -6
  361. package/dist/provider/retry.js.map +1 -1
  362. package/dist/provider/stream-text.d.ts +1 -1
  363. package/dist/provider/stream-text.d.ts.map +1 -1
  364. package/dist/provider/stream-text.js +1 -1
  365. package/dist/provider/stream-text.js.map +1 -1
  366. package/dist/provider/thinking-support.js +2 -2
  367. package/dist/provider/thinking-support.js.map +1 -1
  368. package/dist/provider/token-budget.d.ts +2 -2
  369. package/dist/provider/token-budget.d.ts.map +1 -1
  370. package/dist/provider/token-budget.js.map +1 -1
  371. package/dist/public-runtime.d.ts +69 -55
  372. package/dist/public-runtime.d.ts.map +1 -1
  373. package/dist/public-runtime.js +104 -99
  374. package/dist/public-runtime.js.map +1 -1
  375. package/dist/public-tools.d.ts +2 -2
  376. package/dist/public-tools.d.ts.map +1 -1
  377. package/dist/public-tools.js +7 -7
  378. package/dist/public-tools.js.map +1 -1
  379. package/dist/public-types.d.ts +18 -16
  380. package/dist/public-types.d.ts.map +1 -1
  381. package/dist/rag/embedding.js +1 -1
  382. package/dist/rag/embedding.js.map +1 -1
  383. package/dist/read-model/index.d.ts +2 -2
  384. package/dist/read-model/index.d.ts.map +1 -1
  385. package/dist/read-model/index.js +1 -1
  386. package/dist/read-model/index.js.map +1 -1
  387. package/dist/read-model/registry.d.ts +11 -11
  388. package/dist/read-model/registry.d.ts.map +1 -1
  389. package/dist/read-model/registry.js +2 -2
  390. package/dist/read-model/registry.js.map +1 -1
  391. package/dist/read-model/session-status.d.ts +34 -0
  392. package/dist/read-model/session-status.d.ts.map +1 -0
  393. package/dist/read-model/session-status.js +58 -0
  394. package/dist/read-model/session-status.js.map +1 -0
  395. package/dist/registry/command/kernel-commands.d.ts +4 -4
  396. package/dist/registry/command/kernel-commands.d.ts.map +1 -1
  397. package/dist/registry/command/kernel-commands.js +6 -6
  398. package/dist/registry/command/kernel-commands.js.map +1 -1
  399. package/dist/registry/tool/dialect.js +1 -1
  400. package/dist/registry/tool/execute.d.ts +2 -2
  401. package/dist/registry/tool/execute.d.ts.map +1 -1
  402. package/dist/registry/tool/execute.js +19 -7
  403. package/dist/registry/tool/execute.js.map +1 -1
  404. package/dist/registry/tool/portable.d.ts +1 -1
  405. package/dist/registry/tool/portable.js +1 -1
  406. package/dist/registry/tool/presentation.d.ts +1 -1
  407. package/dist/registry/tool/presentation.js +1 -1
  408. package/dist/registry/tool/schema.js +1 -1
  409. package/dist/registry/tool/screen.js +3 -3
  410. package/dist/registry/tool/screen.js.map +1 -1
  411. package/dist/runtime/bidi/index.d.ts +2 -2
  412. package/dist/runtime/bidi/index.d.ts.map +1 -1
  413. package/dist/runtime/bidi/index.js +1 -1
  414. package/dist/runtime/bidi/index.js.map +1 -1
  415. package/dist/runtime/bidi/session.d.ts +14 -11
  416. package/dist/runtime/bidi/session.d.ts.map +1 -1
  417. package/dist/runtime/bidi/session.js +27 -21
  418. package/dist/runtime/bidi/session.js.map +1 -1
  419. package/dist/runtime/jobs/awaited-jobs.d.ts +15 -15
  420. package/dist/runtime/jobs/awaited-jobs.d.ts.map +1 -1
  421. package/dist/runtime/jobs/awaited-jobs.js +13 -13
  422. package/dist/runtime/jobs/awaited-jobs.js.map +1 -1
  423. package/dist/runtime/jobs/registry.d.ts +10 -10
  424. package/dist/runtime/jobs/registry.d.ts.map +1 -1
  425. package/dist/runtime/jobs/registry.js +5 -5
  426. package/dist/runtime/jobs/registry.js.map +1 -1
  427. package/dist/runtime/query/abandon-turn.d.ts +35 -0
  428. package/dist/runtime/query/abandon-turn.d.ts.map +1 -0
  429. package/dist/runtime/query/abandon-turn.js +81 -0
  430. package/dist/runtime/query/abandon-turn.js.map +1 -0
  431. package/dist/runtime/query/approval-policy.d.ts +10 -10
  432. package/dist/runtime/query/approval-policy.d.ts.map +1 -1
  433. package/dist/runtime/query/approval-policy.js +5 -5
  434. package/dist/runtime/query/approval-policy.js.map +1 -1
  435. package/dist/runtime/query/callback-inference.d.ts +1 -1
  436. package/dist/runtime/query/callback-inference.d.ts.map +1 -1
  437. package/dist/runtime/query/callback-inference.js +12 -6
  438. package/dist/runtime/query/callback-inference.js.map +1 -1
  439. package/dist/runtime/query/cancelled-before-start.d.ts +20 -20
  440. package/dist/runtime/query/cancelled-before-start.d.ts.map +1 -1
  441. package/dist/runtime/query/cancelled-before-start.js +72 -55
  442. package/dist/runtime/query/cancelled-before-start.js.map +1 -1
  443. package/dist/runtime/query/checkpoint.d.ts +153 -220
  444. package/dist/runtime/query/checkpoint.d.ts.map +1 -1
  445. package/dist/runtime/query/checkpoint.js +399 -370
  446. package/dist/runtime/query/checkpoint.js.map +1 -1
  447. package/dist/runtime/query/compact-session.d.ts +20 -0
  448. package/dist/runtime/query/compact-session.d.ts.map +1 -0
  449. package/dist/runtime/query/compact-session.js +81 -0
  450. package/dist/runtime/query/compact-session.js.map +1 -0
  451. package/dist/runtime/query/context.d.ts +42 -85
  452. package/dist/runtime/query/context.d.ts.map +1 -1
  453. package/dist/runtime/query/context.js +36 -75
  454. package/dist/runtime/query/context.js.map +1 -1
  455. package/dist/runtime/query/events.d.ts +54 -26
  456. package/dist/runtime/query/events.d.ts.map +1 -1
  457. package/dist/runtime/query/events.js +121 -114
  458. package/dist/runtime/query/events.js.map +1 -1
  459. package/dist/runtime/query/executor/tool-call-admission.d.ts.map +1 -1
  460. package/dist/runtime/query/executor/tool-call-admission.js +6 -5
  461. package/dist/runtime/query/executor/tool-call-admission.js.map +1 -1
  462. package/dist/runtime/query/executor.d.ts +56 -34
  463. package/dist/runtime/query/executor.d.ts.map +1 -1
  464. package/dist/runtime/query/executor.js +165 -85
  465. package/dist/runtime/query/executor.js.map +1 -1
  466. package/dist/runtime/query/file-evidence-seed.d.ts +1 -1
  467. package/dist/runtime/query/file-evidence-seed.d.ts.map +1 -1
  468. package/dist/runtime/query/file-evidence-seed.js +1 -1
  469. package/dist/runtime/query/finalize-turn.d.ts +55 -0
  470. package/dist/runtime/query/finalize-turn.d.ts.map +1 -0
  471. package/dist/runtime/query/finalize-turn.js +129 -0
  472. package/dist/runtime/query/finalize-turn.js.map +1 -0
  473. package/dist/runtime/query/fork/list.d.ts +15 -0
  474. package/dist/runtime/query/fork/list.d.ts.map +1 -0
  475. package/dist/runtime/query/fork/list.js +11 -0
  476. package/dist/runtime/query/fork/list.js.map +1 -0
  477. package/dist/runtime/query/fork/mutate.d.ts +17 -0
  478. package/dist/runtime/query/fork/mutate.d.ts.map +1 -0
  479. package/dist/runtime/query/fork/mutate.js +69 -0
  480. package/dist/runtime/query/fork/mutate.js.map +1 -0
  481. package/dist/runtime/query/fork/prepare.d.ts +52 -0
  482. package/dist/runtime/query/fork/prepare.d.ts.map +1 -0
  483. package/dist/runtime/query/fork/prepare.js +43 -0
  484. package/dist/runtime/query/fork/prepare.js.map +1 -0
  485. package/dist/runtime/query/guard.d.ts +16 -16
  486. package/dist/runtime/query/guard.d.ts.map +1 -1
  487. package/dist/runtime/query/guard.js +16 -16
  488. package/dist/runtime/query/guard.js.map +1 -1
  489. package/dist/runtime/query/guardrail-presets.d.ts +10 -10
  490. package/dist/runtime/query/guardrail-presets.js +12 -12
  491. package/dist/runtime/query/guardrail-presets.js.map +1 -1
  492. package/dist/runtime/query/guardrails.d.ts +4 -4
  493. package/dist/runtime/query/guardrails.js +11 -11
  494. package/dist/runtime/query/guardrails.js.map +1 -1
  495. package/dist/runtime/query/index.d.ts +178 -155
  496. package/dist/runtime/query/index.d.ts.map +1 -1
  497. package/dist/runtime/query/index.js +1294 -1260
  498. package/dist/runtime/query/index.js.map +1 -1
  499. package/dist/runtime/query/iteration/index.d.ts +16 -16
  500. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  501. package/dist/runtime/query/iteration/index.js +285 -243
  502. package/dist/runtime/query/iteration/index.js.map +1 -1
  503. package/dist/runtime/query/iteration/outstanding-work.d.ts +22 -22
  504. package/dist/runtime/query/iteration/outstanding-work.d.ts.map +1 -1
  505. package/dist/runtime/query/iteration/outstanding-work.js +63 -63
  506. package/dist/runtime/query/iteration/outstanding-work.js.map +1 -1
  507. package/dist/runtime/query/iteration/phases/advisory.js +16 -16
  508. package/dist/runtime/query/iteration/phases/advisory.js.map +1 -1
  509. package/dist/runtime/query/iteration/phases/checkpoint.d.ts +2 -2
  510. package/dist/runtime/query/iteration/phases/checkpoint.d.ts.map +1 -1
  511. package/dist/runtime/query/iteration/phases/checkpoint.js +25 -8
  512. package/dist/runtime/query/iteration/phases/checkpoint.js.map +1 -1
  513. package/dist/runtime/query/iteration/phases/compaction.d.ts +2 -2
  514. package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
  515. package/dist/runtime/query/iteration/phases/compaction.js +74 -72
  516. package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
  517. package/dist/runtime/query/iteration/phases/context.d.ts +32 -29
  518. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  519. package/dist/runtime/query/iteration/phases/context.js +29 -29
  520. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  521. package/dist/runtime/query/iteration/phases/plan.d.ts +2 -2
  522. package/dist/runtime/query/iteration/phases/plan.d.ts.map +1 -1
  523. package/dist/runtime/query/iteration/phases/plan.js +5 -4
  524. package/dist/runtime/query/iteration/phases/plan.js.map +1 -1
  525. package/dist/runtime/query/iteration/phases/tool-review.d.ts +2 -2
  526. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  527. package/dist/runtime/query/iteration/phases/tool-review.js +129 -24
  528. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  529. package/dist/runtime/query/iteration/phases/working-memory.d.ts +27 -3
  530. package/dist/runtime/query/iteration/phases/working-memory.d.ts.map +1 -1
  531. package/dist/runtime/query/iteration/phases/working-memory.js +54 -20
  532. package/dist/runtime/query/iteration/phases/working-memory.js.map +1 -1
  533. package/dist/runtime/query/iteration/step-context.d.ts +11 -0
  534. package/dist/runtime/query/iteration/step-context.d.ts.map +1 -0
  535. package/dist/runtime/query/iteration/step-context.js +14 -0
  536. package/dist/runtime/query/iteration/step-context.js.map +1 -0
  537. package/dist/runtime/query/iteration/step-shaping.d.ts +4 -3
  538. package/dist/runtime/query/iteration/step-shaping.d.ts.map +1 -1
  539. package/dist/runtime/query/iteration/step-shaping.js +20 -19
  540. package/dist/runtime/query/iteration/step-shaping.js.map +1 -1
  541. package/dist/runtime/query/iteration/stream-turn.d.ts +5 -3
  542. package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -1
  543. package/dist/runtime/query/iteration/stream-turn.js +32 -28
  544. package/dist/runtime/query/iteration/stream-turn.js.map +1 -1
  545. package/dist/runtime/query/plugin-hooks.js +1 -1
  546. package/dist/runtime/query/plugin-hooks.js.map +1 -1
  547. package/dist/runtime/query/prepare-turn.d.ts +105 -0
  548. package/dist/runtime/query/prepare-turn.d.ts.map +1 -0
  549. package/dist/runtime/query/prepare-turn.js +779 -0
  550. package/dist/runtime/query/prepare-turn.js.map +1 -0
  551. package/dist/runtime/query/project-instructions.d.ts +5 -4
  552. package/dist/runtime/query/project-instructions.d.ts.map +1 -1
  553. package/dist/runtime/query/project-instructions.js.map +1 -1
  554. package/dist/runtime/query/prompt-cache.js +1 -1
  555. package/dist/runtime/query/prompt-cache.js.map +1 -1
  556. package/dist/runtime/query/prompt.d.ts +3 -3
  557. package/dist/runtime/query/prompt.d.ts.map +1 -1
  558. package/dist/runtime/query/prompt.js +3 -3
  559. package/dist/runtime/query/prompt.js.map +1 -1
  560. package/dist/runtime/query/question-park.d.ts +7 -7
  561. package/dist/runtime/query/question-park.d.ts.map +1 -1
  562. package/dist/runtime/query/question-park.js +5 -5
  563. package/dist/runtime/query/question-park.js.map +1 -1
  564. package/dist/runtime/query/release-turn.d.ts +53 -0
  565. package/dist/runtime/query/release-turn.d.ts.map +1 -0
  566. package/dist/runtime/query/release-turn.js +95 -0
  567. package/dist/runtime/query/release-turn.js.map +1 -0
  568. package/dist/runtime/query/repeat-call.d.ts +2 -2
  569. package/dist/runtime/query/repeat-call.js +7 -7
  570. package/dist/runtime/query/repeat-call.js.map +1 -1
  571. package/dist/runtime/query/result.d.ts +25 -17
  572. package/dist/runtime/query/result.d.ts.map +1 -1
  573. package/dist/runtime/query/result.js +110 -115
  574. package/dist/runtime/query/result.js.map +1 -1
  575. package/dist/runtime/query/resume-pending.d.ts +34 -17
  576. package/dist/runtime/query/resume-pending.d.ts.map +1 -1
  577. package/dist/runtime/query/resume-pending.js +70 -30
  578. package/dist/runtime/query/resume-pending.js.map +1 -1
  579. package/dist/runtime/query/resume-session.d.ts +65 -0
  580. package/dist/runtime/query/resume-session.d.ts.map +1 -0
  581. package/dist/runtime/query/resume-session.js +88 -0
  582. package/dist/runtime/query/resume-session.js.map +1 -0
  583. package/dist/runtime/query/review-policy.d.ts +57 -16
  584. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  585. package/dist/runtime/query/review-policy.js +115 -11
  586. package/dist/runtime/query/review-policy.js.map +1 -1
  587. package/dist/runtime/query/sandbox-lifecycle.d.ts +5 -5
  588. package/dist/runtime/query/sandbox-lifecycle.d.ts.map +1 -1
  589. package/dist/runtime/query/sandbox-lifecycle.js +4 -4
  590. package/dist/runtime/query/sandbox-lifecycle.js.map +1 -1
  591. package/dist/runtime/query/session-storage.d.ts +75 -0
  592. package/dist/runtime/query/session-storage.d.ts.map +1 -0
  593. package/dist/runtime/query/session-storage.js +236 -0
  594. package/dist/runtime/query/session-storage.js.map +1 -0
  595. package/dist/runtime/query/steering.d.ts +9 -3
  596. package/dist/runtime/query/steering.d.ts.map +1 -1
  597. package/dist/runtime/query/steering.js +12 -2
  598. package/dist/runtime/query/steering.js.map +1 -1
  599. package/dist/runtime/query/token-budget.d.ts +19 -5
  600. package/dist/runtime/query/token-budget.d.ts.map +1 -1
  601. package/dist/runtime/query/token-budget.js +43 -74
  602. package/dist/runtime/query/token-budget.js.map +1 -1
  603. package/dist/runtime/query/tool-call-budget.d.ts +6 -5
  604. package/dist/runtime/query/tool-call-budget.d.ts.map +1 -1
  605. package/dist/runtime/query/tool-call-budget.js +10 -12
  606. package/dist/runtime/query/tool-call-budget.js.map +1 -1
  607. package/dist/runtime/query/tool-executions.d.ts +26 -0
  608. package/dist/runtime/query/tool-executions.d.ts.map +1 -0
  609. package/dist/runtime/query/tool-executions.js +66 -0
  610. package/dist/runtime/query/tool-executions.js.map +1 -0
  611. package/dist/runtime/query/tool-grants.d.ts +3 -3
  612. package/dist/runtime/query/tool-grants.js +3 -3
  613. package/dist/runtime/query/tool-output-budget.d.ts +2 -2
  614. package/dist/runtime/query/tool-output-budget.js +4 -4
  615. package/dist/runtime/query/tool-output-budget.js.map +1 -1
  616. package/dist/runtime/query/tool-pause.d.ts +4 -3
  617. package/dist/runtime/query/tool-pause.d.ts.map +1 -1
  618. package/dist/runtime/query/tool-pause.js +5 -4
  619. package/dist/runtime/query/tool-pause.js.map +1 -1
  620. package/dist/runtime/query/tooling.d.ts +15 -10
  621. package/dist/runtime/query/tooling.d.ts.map +1 -1
  622. package/dist/runtime/query/tooling.js +7 -4
  623. package/dist/runtime/query/tooling.js.map +1 -1
  624. package/dist/runtime/query/turn-state.d.ts +56 -0
  625. package/dist/runtime/query/turn-state.d.ts.map +1 -0
  626. package/dist/runtime/query/turn-state.js +99 -0
  627. package/dist/runtime/query/turn-state.js.map +1 -0
  628. package/dist/sandbox/isolation.d.ts +1 -1
  629. package/dist/sandbox/isolation.js +2 -2
  630. package/dist/sandbox/isolation.js.map +1 -1
  631. package/dist/sandbox/provider/local.d.ts +2 -2
  632. package/dist/sandbox/provider/local.js +7 -7
  633. package/dist/sandbox/provider/local.js.map +1 -1
  634. package/dist/scheduler/completion-inbox.d.ts +21 -21
  635. package/dist/scheduler/completion-inbox.js +36 -36
  636. package/dist/scheduler/completion-inbox.js.map +1 -1
  637. package/dist/scheduler/delegating.d.ts +6 -3
  638. package/dist/scheduler/delegating.d.ts.map +1 -1
  639. package/dist/scheduler/delegating.js +15 -8
  640. package/dist/scheduler/delegating.js.map +1 -1
  641. package/dist/scheduler/local.d.ts +10 -8
  642. package/dist/scheduler/local.d.ts.map +1 -1
  643. package/dist/scheduler/local.js +37 -11
  644. package/dist/scheduler/local.js.map +1 -1
  645. package/dist/session/events/index.d.ts +3 -3
  646. package/dist/session/events/index.d.ts.map +1 -1
  647. package/dist/session/events/index.js +4 -8
  648. package/dist/session/events/index.js.map +1 -1
  649. package/dist/session/handoff/broadcast.d.ts +3 -3
  650. package/dist/session/handoff/broadcast.d.ts.map +1 -1
  651. package/dist/session/handoff/broadcast.js +4 -4
  652. package/dist/session/handoff/broadcast.js.map +1 -1
  653. package/dist/session/handoff/events.d.ts +1 -1
  654. package/dist/session/handoff/events.js +1 -1
  655. package/dist/session/handoff/index.d.ts +1 -1
  656. package/dist/session/handoff/index.d.ts.map +1 -1
  657. package/dist/session/handoff/single.d.ts +12 -12
  658. package/dist/session/handoff/single.d.ts.map +1 -1
  659. package/dist/session/handoff/single.js +9 -9
  660. package/dist/session/handoff/single.js.map +1 -1
  661. package/dist/session/handoff/version.d.ts +7 -7
  662. package/dist/session/handoff/version.d.ts.map +1 -1
  663. package/dist/session/handoff/version.js +2 -2
  664. package/dist/session/handoff/version.js.map +1 -1
  665. package/dist/session/home.d.ts +23 -0
  666. package/dist/session/home.d.ts.map +1 -0
  667. package/dist/session/home.js +45 -0
  668. package/dist/session/home.js.map +1 -0
  669. package/dist/session/index.d.ts +1 -0
  670. package/dist/session/index.d.ts.map +1 -1
  671. package/dist/session/index.js +1 -0
  672. package/dist/session/index.js.map +1 -1
  673. package/dist/session/log-hash.d.ts +25 -0
  674. package/dist/session/log-hash.d.ts.map +1 -0
  675. package/dist/session/log-hash.js +82 -0
  676. package/dist/session/log-hash.js.map +1 -0
  677. package/dist/session/messages.d.ts +11 -0
  678. package/dist/session/messages.d.ts.map +1 -0
  679. package/dist/session/messages.js +32 -0
  680. package/dist/session/messages.js.map +1 -0
  681. package/dist/session/paths.d.ts +168 -0
  682. package/dist/session/paths.d.ts.map +1 -0
  683. package/dist/session/paths.js +338 -0
  684. package/dist/session/paths.js.map +1 -0
  685. package/dist/session/retention/archive.d.ts +8 -1
  686. package/dist/session/retention/archive.d.ts.map +1 -1
  687. package/dist/session/retention/archive.js +3 -5
  688. package/dist/session/retention/archive.js.map +1 -1
  689. package/dist/session/status/derive.d.ts +13 -13
  690. package/dist/session/status/derive.d.ts.map +1 -1
  691. package/dist/session/status/derive.js +20 -20
  692. package/dist/session/status/derive.js.map +1 -1
  693. package/dist/session/workspace/git-worktree.d.ts +8 -1
  694. package/dist/session/workspace/git-worktree.d.ts.map +1 -1
  695. package/dist/session/workspace/git-worktree.js +29 -1
  696. package/dist/session/workspace/git-worktree.js.map +1 -1
  697. package/dist/session/workspace/index.d.ts +2 -4
  698. package/dist/session/workspace/index.d.ts.map +1 -1
  699. package/dist/session/workspace/index.js +2 -3
  700. package/dist/session/workspace/index.js.map +1 -1
  701. package/dist/session/workspace/shared-session.d.ts +112 -0
  702. package/dist/session/workspace/shared-session.d.ts.map +1 -0
  703. package/dist/session/workspace/shared-session.js +290 -0
  704. package/dist/session/workspace/shared-session.js.map +1 -0
  705. package/dist/session-query/index.d.ts +67 -0
  706. package/dist/session-query/index.d.ts.map +1 -0
  707. package/dist/session-query/index.js +100 -0
  708. package/dist/session-query/index.js.map +1 -0
  709. package/dist/skills/registry.d.ts +1 -1
  710. package/dist/skills/registry.js +1 -1
  711. package/dist/store/activity/memory.d.ts +3 -3
  712. package/dist/store/activity/memory.d.ts.map +1 -1
  713. package/dist/store/activity/memory.js +4 -4
  714. package/dist/store/activity/memory.js.map +1 -1
  715. package/dist/store/attachment/index.d.ts +4 -4
  716. package/dist/store/attachment/index.d.ts.map +1 -1
  717. package/dist/store/attachment/index.js +3 -3
  718. package/dist/store/attachment/index.js.map +1 -1
  719. package/dist/store/budget/disk.d.ts +59 -0
  720. package/dist/store/budget/disk.d.ts.map +1 -0
  721. package/dist/store/budget/disk.js +179 -0
  722. package/dist/store/budget/disk.js.map +1 -0
  723. package/dist/store/budget/index.d.ts +6 -0
  724. package/dist/store/budget/index.d.ts.map +1 -0
  725. package/dist/store/budget/index.js +6 -0
  726. package/dist/store/budget/index.js.map +1 -0
  727. package/dist/store/budget/ledger.d.ts +156 -0
  728. package/dist/store/budget/ledger.d.ts.map +1 -0
  729. package/dist/store/budget/ledger.js +683 -0
  730. package/dist/store/budget/ledger.js.map +1 -0
  731. package/dist/store/budget/memory.d.ts +18 -0
  732. package/dist/store/budget/memory.d.ts.map +1 -0
  733. package/dist/store/budget/memory.js +31 -0
  734. package/dist/store/budget/memory.js.map +1 -0
  735. package/dist/store/checkpoint/contract.d.ts +140 -0
  736. package/dist/store/checkpoint/contract.d.ts.map +1 -0
  737. package/dist/store/checkpoint/contract.js +91 -0
  738. package/dist/store/checkpoint/contract.js.map +1 -0
  739. package/dist/store/checkpoint/disk.d.ts +44 -0
  740. package/dist/store/checkpoint/disk.d.ts.map +1 -0
  741. package/dist/store/checkpoint/disk.js +168 -0
  742. package/dist/store/checkpoint/disk.js.map +1 -0
  743. package/dist/store/checkpoint/index.d.ts +9 -0
  744. package/dist/store/checkpoint/index.d.ts.map +1 -0
  745. package/dist/store/checkpoint/index.js +7 -0
  746. package/dist/store/checkpoint/index.js.map +1 -0
  747. package/dist/store/checkpoint/memory.d.ts +27 -0
  748. package/dist/store/checkpoint/memory.d.ts.map +1 -0
  749. package/dist/store/checkpoint/memory.js +80 -0
  750. package/dist/store/checkpoint/memory.js.map +1 -0
  751. package/dist/store/checkpoint/prune.d.ts +45 -0
  752. package/dist/store/checkpoint/prune.d.ts.map +1 -0
  753. package/dist/store/checkpoint/prune.js +71 -0
  754. package/dist/store/checkpoint/prune.js.map +1 -0
  755. package/dist/store/config/index.d.ts +1 -1
  756. package/dist/store/config/index.js +1 -1
  757. package/dist/store/evidence/disk.d.ts +25 -8
  758. package/dist/store/evidence/disk.d.ts.map +1 -1
  759. package/dist/store/evidence/disk.js +148 -47
  760. package/dist/store/evidence/disk.js.map +1 -1
  761. package/dist/store/evidence/index-page.d.ts +31 -140
  762. package/dist/store/evidence/index-page.d.ts.map +1 -1
  763. package/dist/store/evidence/index-page.js +59 -129
  764. package/dist/store/evidence/index-page.js.map +1 -1
  765. package/dist/store/evidence/source-text.d.ts +7 -6
  766. package/dist/store/evidence/source-text.d.ts.map +1 -1
  767. package/dist/store/evidence/source-text.js +16 -23
  768. package/dist/store/evidence/source-text.js.map +1 -1
  769. package/dist/store/evidence/types.d.ts +38 -39
  770. package/dist/store/evidence/types.d.ts.map +1 -1
  771. package/dist/store/feedback/conformance.d.ts +6 -6
  772. package/dist/store/feedback/conformance.d.ts.map +1 -1
  773. package/dist/store/feedback/conformance.js +30 -29
  774. package/dist/store/feedback/conformance.js.map +1 -1
  775. package/dist/store/feedback/disk.d.ts +20 -19
  776. package/dist/store/feedback/disk.d.ts.map +1 -1
  777. package/dist/store/feedback/disk.js +53 -53
  778. package/dist/store/feedback/disk.js.map +1 -1
  779. package/dist/store/feedback/index.d.ts +1 -1
  780. package/dist/store/feedback/index.d.ts.map +1 -1
  781. package/dist/store/feedback/index.js +1 -1
  782. package/dist/store/feedback/index.js.map +1 -1
  783. package/dist/store/feedback/memory.d.ts +8 -5
  784. package/dist/store/feedback/memory.d.ts.map +1 -1
  785. package/dist/store/feedback/memory.js +0 -0
  786. package/dist/store/feedback/memory.js.map +1 -1
  787. package/dist/store/feedback/types.d.ts +12 -11
  788. package/dist/store/feedback/types.d.ts.map +1 -1
  789. package/dist/store/feedback/types.js +3 -3
  790. package/dist/store/feedback/types.js.map +1 -1
  791. package/dist/store/index.d.ts +7 -8
  792. package/dist/store/index.d.ts.map +1 -1
  793. package/dist/store/index.js +4 -16
  794. package/dist/store/index.js.map +1 -1
  795. package/dist/store/memory/digest.d.ts +15 -0
  796. package/dist/store/memory/digest.d.ts.map +1 -0
  797. package/dist/store/memory/digest.js +27 -0
  798. package/dist/store/memory/digest.js.map +1 -0
  799. package/dist/store/memory/disk.d.ts.map +1 -1
  800. package/dist/store/memory/disk.js +42 -7
  801. package/dist/store/memory/disk.js.map +1 -1
  802. package/dist/store/memory/index-file.d.ts +56 -0
  803. package/dist/store/memory/index-file.d.ts.map +1 -0
  804. package/dist/store/memory/index-file.js +92 -0
  805. package/dist/store/memory/index-file.js.map +1 -0
  806. package/dist/store/memory/index.d.ts.map +1 -1
  807. package/dist/store/memory/index.js +4 -2
  808. package/dist/store/memory/index.js.map +1 -1
  809. package/dist/store/memory/links.d.ts +15 -0
  810. package/dist/store/memory/links.d.ts.map +1 -0
  811. package/dist/store/memory/links.js +35 -0
  812. package/dist/store/memory/links.js.map +1 -0
  813. package/dist/store/memory/markdown-format.d.ts +88 -0
  814. package/dist/store/memory/markdown-format.d.ts.map +1 -0
  815. package/dist/store/memory/markdown-format.js +222 -0
  816. package/dist/store/memory/markdown-format.js.map +1 -0
  817. package/dist/store/memory/markdown.d.ts +109 -0
  818. package/dist/store/memory/markdown.d.ts.map +1 -0
  819. package/dist/store/memory/markdown.js +606 -0
  820. package/dist/store/memory/markdown.js.map +1 -0
  821. package/dist/store/memory/memory.d.ts.map +1 -1
  822. package/dist/store/memory/memory.js +17 -4
  823. package/dist/store/memory/memory.js.map +1 -1
  824. package/dist/store/memory/naming.d.ts +66 -0
  825. package/dist/store/memory/naming.d.ts.map +1 -0
  826. package/dist/store/memory/naming.js +162 -0
  827. package/dist/store/memory/naming.js.map +1 -0
  828. package/dist/store/memory/origin.d.ts +25 -0
  829. package/dist/store/memory/origin.d.ts.map +1 -0
  830. package/dist/store/memory/origin.js +26 -0
  831. package/dist/store/memory/origin.js.map +1 -0
  832. package/dist/store/session/disk.d.ts +21 -24
  833. package/dist/store/session/disk.d.ts.map +1 -1
  834. package/dist/store/session/disk.js +27 -132
  835. package/dist/store/session/disk.js.map +1 -1
  836. package/dist/store/session/index.d.ts +0 -3
  837. package/dist/store/session/index.d.ts.map +1 -1
  838. package/dist/store/session/index.js +5 -7
  839. package/dist/store/session/index.js.map +1 -1
  840. package/dist/store/session/memory.d.ts +1 -8
  841. package/dist/store/session/memory.d.ts.map +1 -1
  842. package/dist/store/session/memory.js +1 -58
  843. package/dist/store/session/memory.js.map +1 -1
  844. package/dist/store/session-claim.d.ts +30 -0
  845. package/dist/store/session-claim.d.ts.map +1 -0
  846. package/dist/store/session-claim.js +71 -0
  847. package/dist/store/session-claim.js.map +1 -0
  848. package/dist/store/session-index/fts.d.ts +60 -0
  849. package/dist/store/session-index/fts.d.ts.map +1 -0
  850. package/dist/store/session-index/fts.js +160 -0
  851. package/dist/store/session-index/fts.js.map +1 -0
  852. package/dist/store/session-index/index.d.ts +206 -0
  853. package/dist/store/session-index/index.d.ts.map +1 -0
  854. package/dist/store/session-index/index.js +22 -0
  855. package/dist/store/session-index/index.js.map +1 -0
  856. package/dist/store/session-index/rebuild.d.ts +180 -0
  857. package/dist/store/session-index/rebuild.d.ts.map +1 -0
  858. package/dist/store/session-index/rebuild.js +669 -0
  859. package/dist/store/session-index/rebuild.js.map +1 -0
  860. package/dist/store/session-index/refs.d.ts +66 -0
  861. package/dist/store/session-index/refs.d.ts.map +1 -0
  862. package/dist/store/session-index/refs.js +107 -0
  863. package/dist/store/session-index/refs.js.map +1 -0
  864. package/dist/store/session-index/scan.d.ts +42 -0
  865. package/dist/store/session-index/scan.d.ts.map +1 -0
  866. package/dist/store/session-index/scan.js +188 -0
  867. package/dist/store/session-index/scan.js.map +1 -0
  868. package/dist/store/session-index/sqlite.d.ts +76 -0
  869. package/dist/store/session-index/sqlite.d.ts.map +1 -0
  870. package/dist/store/session-index/sqlite.js +547 -0
  871. package/dist/store/session-index/sqlite.js.map +1 -0
  872. package/dist/store/session-log/chain.d.ts +111 -0
  873. package/dist/store/session-log/chain.d.ts.map +1 -0
  874. package/dist/store/session-log/chain.js +212 -0
  875. package/dist/store/session-log/chain.js.map +1 -0
  876. package/dist/store/session-log/conformance.d.ts +61 -0
  877. package/dist/store/session-log/conformance.d.ts.map +1 -0
  878. package/dist/store/session-log/conformance.js +392 -0
  879. package/dist/store/session-log/conformance.js.map +1 -0
  880. package/dist/store/session-log/core.d.ts +203 -0
  881. package/dist/store/session-log/core.d.ts.map +1 -0
  882. package/dist/store/session-log/core.js +516 -0
  883. package/dist/store/session-log/core.js.map +1 -0
  884. package/dist/store/session-log/disk.d.ts +56 -0
  885. package/dist/store/session-log/disk.d.ts.map +1 -0
  886. package/dist/store/session-log/disk.js +169 -0
  887. package/dist/store/session-log/disk.js.map +1 -0
  888. package/dist/store/session-log/fold.d.ts +115 -0
  889. package/dist/store/session-log/fold.d.ts.map +1 -0
  890. package/dist/store/session-log/fold.js +265 -0
  891. package/dist/store/session-log/fold.js.map +1 -0
  892. package/dist/store/session-log/heal.d.ts +34 -0
  893. package/dist/store/session-log/heal.d.ts.map +1 -0
  894. package/dist/store/session-log/heal.js +12 -0
  895. package/dist/store/session-log/heal.js.map +1 -0
  896. package/dist/store/session-log/held-leases.d.ts +56 -0
  897. package/dist/store/session-log/held-leases.d.ts.map +1 -0
  898. package/dist/store/session-log/held-leases.js +67 -0
  899. package/dist/store/session-log/held-leases.js.map +1 -0
  900. package/dist/store/session-log/index.d.ts +10 -0
  901. package/dist/store/session-log/index.d.ts.map +1 -0
  902. package/dist/store/session-log/index.js +16 -0
  903. package/dist/store/session-log/index.js.map +1 -0
  904. package/dist/store/session-log/lease.d.ts +126 -0
  905. package/dist/store/session-log/lease.d.ts.map +1 -0
  906. package/dist/store/session-log/lease.js +226 -0
  907. package/dist/store/session-log/lease.js.map +1 -0
  908. package/dist/store/session-log/memory.d.ts +43 -0
  909. package/dist/store/session-log/memory.d.ts.map +1 -0
  910. package/dist/store/session-log/memory.js +78 -0
  911. package/dist/store/session-log/memory.js.map +1 -0
  912. package/dist/store/session-log/spill.d.ts +109 -0
  913. package/dist/store/session-log/spill.d.ts.map +1 -0
  914. package/dist/store/session-log/spill.js +223 -0
  915. package/dist/store/session-log/spill.js.map +1 -0
  916. package/dist/store/task/context.d.ts +25 -0
  917. package/dist/store/task/context.d.ts.map +1 -0
  918. package/dist/store/task/context.js +18 -0
  919. package/dist/store/task/context.js.map +1 -0
  920. package/dist/store/task/disk.d.ts +29 -26
  921. package/dist/store/task/disk.d.ts.map +1 -1
  922. package/dist/store/task/disk.js +102 -137
  923. package/dist/store/task/disk.js.map +1 -1
  924. package/dist/store/task/memory.d.ts +2 -2
  925. package/dist/store/task/memory.d.ts.map +1 -1
  926. package/dist/store/task/memory.js +10 -6
  927. package/dist/store/task/memory.js.map +1 -1
  928. package/dist/store/topic/index.js +2 -2
  929. package/dist/store/topic/index.js.map +1 -1
  930. package/dist/store/topic/objective.d.ts.map +1 -1
  931. package/dist/store/topic/objective.js +10 -3
  932. package/dist/store/topic/objective.js.map +1 -1
  933. package/dist/store/topic/state.js +1 -1
  934. package/dist/streaming/coalesce.d.ts +3 -3
  935. package/dist/streaming/coalesce.d.ts.map +1 -1
  936. package/dist/streaming/coalesce.js +1 -1
  937. package/dist/streaming/coalesce.js.map +1 -1
  938. package/dist/telemetry/attributes.d.ts +9 -8
  939. package/dist/telemetry/attributes.d.ts.map +1 -1
  940. package/dist/telemetry/attributes.js +6 -5
  941. package/dist/telemetry/attributes.js.map +1 -1
  942. package/dist/telemetry/metrics.d.ts +2 -2
  943. package/dist/telemetry/metrics.d.ts.map +1 -1
  944. package/dist/telemetry/metrics.js +5 -5
  945. package/dist/telemetry/metrics.js.map +1 -1
  946. package/dist/telemetry/runtime-accessors.js +1 -1
  947. package/dist/telemetry/runtime-accessors.js.map +1 -1
  948. package/dist/test-support/ids.d.ts +4 -4
  949. package/dist/test-support/ids.d.ts.map +1 -1
  950. package/dist/test-support/ids.js +3 -3
  951. package/dist/test-support/ids.js.map +1 -1
  952. package/dist/testing.d.ts +4 -6
  953. package/dist/testing.d.ts.map +1 -1
  954. package/dist/testing.js +3 -5
  955. package/dist/testing.js.map +1 -1
  956. package/dist/tools/advisory/index.js +1 -1
  957. package/dist/tools/advisory/index.js.map +1 -1
  958. package/dist/tools/builtins/bash.d.ts +6 -0
  959. package/dist/tools/builtins/bash.d.ts.map +1 -1
  960. package/dist/tools/builtins/bash.js +37 -5
  961. package/dist/tools/builtins/bash.js.map +1 -1
  962. package/dist/tools/builtins/content-fingerprint.d.ts +2 -2
  963. package/dist/tools/builtins/content-fingerprint.js +2 -2
  964. package/dist/tools/builtins/edit-apply.js +1 -1
  965. package/dist/tools/builtins/edit-apply.js.map +1 -1
  966. package/dist/tools/builtins/edit.d.ts.map +1 -1
  967. package/dist/tools/builtins/edit.js +3 -0
  968. package/dist/tools/builtins/edit.js.map +1 -1
  969. package/dist/tools/builtins/glob.d.ts.map +1 -1
  970. package/dist/tools/builtins/glob.js +3 -0
  971. package/dist/tools/builtins/glob.js.map +1 -1
  972. package/dist/tools/builtins/grep.d.ts.map +1 -1
  973. package/dist/tools/builtins/grep.js +3 -0
  974. package/dist/tools/builtins/grep.js.map +1 -1
  975. package/dist/tools/builtins/job.js +5 -5
  976. package/dist/tools/builtins/job.js.map +1 -1
  977. package/dist/tools/builtins/ls.d.ts +1 -1
  978. package/dist/tools/builtins/ls.d.ts.map +1 -1
  979. package/dist/tools/builtins/ls.js +3 -0
  980. package/dist/tools/builtins/ls.js.map +1 -1
  981. package/dist/tools/builtins/lsp.d.ts +1 -1
  982. package/dist/tools/builtins/lsp.d.ts.map +1 -1
  983. package/dist/tools/builtins/lsp.js +5 -2
  984. package/dist/tools/builtins/lsp.js.map +1 -1
  985. package/dist/tools/builtins/read-file.d.ts.map +1 -1
  986. package/dist/tools/builtins/read-file.js +3 -0
  987. package/dist/tools/builtins/read-file.js.map +1 -1
  988. package/dist/tools/builtins/run-code.js +9 -9
  989. package/dist/tools/builtins/run-code.js.map +1 -1
  990. package/dist/tools/builtins/skill.js +3 -3
  991. package/dist/tools/builtins/skill.js.map +1 -1
  992. package/dist/tools/builtins/wait-for-job-bounds.d.ts +4 -4
  993. package/dist/tools/builtins/wait-for-job-bounds.d.ts.map +1 -1
  994. package/dist/tools/builtins/wait-for-job-bounds.js +2 -2
  995. package/dist/tools/builtins/wait-for-job-bounds.js.map +1 -1
  996. package/dist/tools/builtins/wait-for-job.js +3 -3
  997. package/dist/tools/builtins/wait-for-job.js.map +1 -1
  998. package/dist/tools/builtins/web-guidance.d.ts +2 -2
  999. package/dist/tools/builtins/web-guidance.js +2 -2
  1000. package/dist/tools/builtins/web.js +3 -3
  1001. package/dist/tools/builtins/web.js.map +1 -1
  1002. package/dist/tools/builtins/write-file.d.ts.map +1 -1
  1003. package/dist/tools/builtins/write-file.js +3 -0
  1004. package/dist/tools/builtins/write-file.js.map +1 -1
  1005. package/dist/tools/coordinator/agent.d.ts +1 -1
  1006. package/dist/tools/coordinator/agent.js +7 -7
  1007. package/dist/tools/coordinator/agent.js.map +1 -1
  1008. package/dist/tools/coordinator/ask-user-question.d.ts +10 -9
  1009. package/dist/tools/coordinator/ask-user-question.d.ts.map +1 -1
  1010. package/dist/tools/coordinator/ask-user-question.js +9 -8
  1011. package/dist/tools/coordinator/ask-user-question.js.map +1 -1
  1012. package/dist/tools/coordinator/index.d.ts +17 -11
  1013. package/dist/tools/coordinator/index.d.ts.map +1 -1
  1014. package/dist/tools/coordinator/index.js +45 -44
  1015. package/dist/tools/coordinator/index.js.map +1 -1
  1016. package/dist/tools/coordinator/outcome.d.ts +5 -5
  1017. package/dist/tools/coordinator/outcome.js +7 -7
  1018. package/dist/tools/coordinator/outcome.js.map +1 -1
  1019. package/dist/tools/coordinator/plan-dependencies.js +1 -1
  1020. package/dist/tools/coordinator/plan-dependencies.js.map +1 -1
  1021. package/dist/tools/coordinator/wait-with-idle-bound.d.ts +4 -4
  1022. package/dist/tools/coordinator/wait-with-idle-bound.d.ts.map +1 -1
  1023. package/dist/tools/coordinator/wait-with-idle-bound.js +2 -2
  1024. package/dist/tools/coordinator/wait-with-idle-bound.js.map +1 -1
  1025. package/dist/tools/defineTool.d.ts +5 -1
  1026. package/dist/tools/defineTool.d.ts.map +1 -1
  1027. package/dist/tools/defineTool.js +4 -0
  1028. package/dist/tools/defineTool.js.map +1 -1
  1029. package/dist/tools/env-scrub.d.ts +1 -1
  1030. package/dist/tools/env-scrub.js +1 -1
  1031. package/dist/tools/goal/index.d.ts +10 -6
  1032. package/dist/tools/goal/index.d.ts.map +1 -1
  1033. package/dist/tools/goal/index.js +9 -9
  1034. package/dist/tools/goal/index.js.map +1 -1
  1035. package/dist/tools/memory/fields.d.ts +8 -0
  1036. package/dist/tools/memory/fields.d.ts.map +1 -0
  1037. package/dist/tools/memory/fields.js +22 -0
  1038. package/dist/tools/memory/fields.js.map +1 -0
  1039. package/dist/tools/memory/read.d.ts.map +1 -1
  1040. package/dist/tools/memory/read.js +60 -7
  1041. package/dist/tools/memory/read.js.map +1 -1
  1042. package/dist/tools/memory/resolve.d.ts +21 -0
  1043. package/dist/tools/memory/resolve.d.ts.map +1 -0
  1044. package/dist/tools/memory/resolve.js +23 -0
  1045. package/dist/tools/memory/resolve.js.map +1 -0
  1046. package/dist/tools/memory/save.d.ts.map +1 -1
  1047. package/dist/tools/memory/save.js +57 -18
  1048. package/dist/tools/memory/save.js.map +1 -1
  1049. package/dist/tools/memory/search.d.ts.map +1 -1
  1050. package/dist/tools/memory/search.js +9 -2
  1051. package/dist/tools/memory/search.js.map +1 -1
  1052. package/dist/tools/memory/update.d.ts.map +1 -1
  1053. package/dist/tools/memory/update.js +45 -7
  1054. package/dist/tools/memory/update.js.map +1 -1
  1055. package/dist/tools/paths.d.ts +29 -3
  1056. package/dist/tools/paths.d.ts.map +1 -1
  1057. package/dist/tools/paths.js +81 -23
  1058. package/dist/tools/paths.js.map +1 -1
  1059. package/dist/tools/posix-path.js +1 -1
  1060. package/dist/tools/posix-path.js.map +1 -1
  1061. package/dist/tools/resident-history.d.ts +1 -1
  1062. package/dist/tools/resident-history.js +1 -1
  1063. package/dist/tools/resident-tool-evidence.d.ts +1 -1
  1064. package/dist/tools/resident-tool-evidence.d.ts.map +1 -1
  1065. package/dist/tools/resident-tool-evidence.js +1 -1
  1066. package/dist/tools/resident-tool-evidence.js.map +1 -1
  1067. package/dist/tools/task/create.d.ts +2 -2
  1068. package/dist/tools/task/create.d.ts.map +1 -1
  1069. package/dist/tools/task/create.js +3 -2
  1070. package/dist/tools/task/create.js.map +1 -1
  1071. package/dist/tools/task/index.d.ts +16 -2
  1072. package/dist/tools/task/index.d.ts.map +1 -1
  1073. package/dist/tools/task/index.js +4 -3
  1074. package/dist/tools/task/index.js.map +1 -1
  1075. package/dist/tools/task/list.d.ts +4 -2
  1076. package/dist/tools/task/list.d.ts.map +1 -1
  1077. package/dist/tools/task/list.js +8 -4
  1078. package/dist/tools/task/list.js.map +1 -1
  1079. package/dist/turn/LimitChecker.d.ts +30 -0
  1080. package/dist/turn/LimitChecker.d.ts.map +1 -0
  1081. package/dist/turn/LimitChecker.js +57 -0
  1082. package/dist/turn/LimitChecker.js.map +1 -0
  1083. package/dist/turn/command-gate.d.ts +107 -0
  1084. package/dist/turn/command-gate.d.ts.map +1 -0
  1085. package/dist/turn/command-gate.js +221 -0
  1086. package/dist/turn/command-gate.js.map +1 -0
  1087. package/dist/turn/drain.d.ts +138 -0
  1088. package/dist/turn/drain.d.ts.map +1 -0
  1089. package/dist/turn/drain.js +209 -0
  1090. package/dist/turn/drain.js.map +1 -0
  1091. package/dist/turn/evidence-query.d.ts +41 -0
  1092. package/dist/turn/evidence-query.d.ts.map +1 -0
  1093. package/dist/turn/evidence-query.js +270 -0
  1094. package/dist/turn/evidence-query.js.map +1 -0
  1095. package/dist/turn/evidence-recall.d.ts +102 -0
  1096. package/dist/turn/evidence-recall.d.ts.map +1 -0
  1097. package/dist/turn/evidence-recall.js +635 -0
  1098. package/dist/turn/evidence-recall.js.map +1 -0
  1099. package/dist/turn/index.d.ts +17 -0
  1100. package/dist/turn/index.d.ts.map +1 -0
  1101. package/dist/turn/index.js +9 -0
  1102. package/dist/turn/index.js.map +1 -0
  1103. package/dist/turn/json-claim-verifier.d.ts +83 -0
  1104. package/dist/turn/json-claim-verifier.d.ts.map +1 -0
  1105. package/dist/turn/json-claim-verifier.js +200 -0
  1106. package/dist/turn/json-claim-verifier.js.map +1 -0
  1107. package/dist/turn/memory-promoter.d.ts +43 -0
  1108. package/dist/turn/memory-promoter.d.ts.map +1 -0
  1109. package/dist/turn/memory-promoter.js +111 -0
  1110. package/dist/turn/memory-promoter.js.map +1 -0
  1111. package/dist/turn/memory-recall.d.ts +33 -0
  1112. package/dist/turn/memory-recall.d.ts.map +1 -0
  1113. package/dist/turn/memory-recall.js +248 -0
  1114. package/dist/turn/memory-recall.js.map +1 -0
  1115. package/dist/turn/preparation-context-error.d.ts.map +1 -0
  1116. package/dist/turn/preparation-context-error.js.map +1 -0
  1117. package/dist/turn/reporter.d.ts +8 -0
  1118. package/dist/turn/reporter.d.ts.map +1 -0
  1119. package/dist/turn/reporter.js +420 -0
  1120. package/dist/turn/reporter.js.map +1 -0
  1121. package/dist/turn/workspace-fingerprint.d.ts.map +1 -0
  1122. package/dist/turn/workspace-fingerprint.js.map +1 -0
  1123. package/dist/types/activity/index.d.ts +2 -2
  1124. package/dist/types/activity/index.d.ts.map +1 -1
  1125. package/dist/types/advisory/config.d.ts +7 -7
  1126. package/dist/types/advisory/config.d.ts.map +1 -1
  1127. package/dist/types/agent/base.d.ts +71 -44
  1128. package/dist/types/agent/base.d.ts.map +1 -1
  1129. package/dist/types/agent/core.d.ts +10 -10
  1130. package/dist/types/agent/core.d.ts.map +1 -1
  1131. package/dist/types/agent/delegate.d.ts +2 -2
  1132. package/dist/types/agent/factory.d.ts +6 -4
  1133. package/dist/types/agent/factory.d.ts.map +1 -1
  1134. package/dist/types/agent/manager.d.ts +6 -6
  1135. package/dist/types/agent/manager.d.ts.map +1 -1
  1136. package/dist/types/agent/pipeline.d.ts +5 -4
  1137. package/dist/types/agent/pipeline.d.ts.map +1 -1
  1138. package/dist/types/agent/reactive.d.ts +11 -10
  1139. package/dist/types/agent/reactive.d.ts.map +1 -1
  1140. package/dist/types/agent/router.d.ts +1 -1
  1141. package/dist/types/agent/scheduler.d.ts +27 -11
  1142. package/dist/types/agent/scheduler.d.ts.map +1 -1
  1143. package/dist/types/agent/supervisor.d.ts +13 -13
  1144. package/dist/types/agent/task.d.ts +48 -12
  1145. package/dist/types/agent/task.d.ts.map +1 -1
  1146. package/dist/types/agent/working-memory.d.ts +5 -4
  1147. package/dist/types/agent/working-memory.d.ts.map +1 -1
  1148. package/dist/types/authorization/index.d.ts +6 -6
  1149. package/dist/types/bidi/index.d.ts +21 -12
  1150. package/dist/types/bidi/index.d.ts.map +1 -1
  1151. package/dist/types/bus/index.d.ts +34 -28
  1152. package/dist/types/bus/index.d.ts.map +1 -1
  1153. package/dist/types/code-navigation/index.d.ts +1 -1
  1154. package/dist/types/common/index.d.ts +10 -18
  1155. package/dist/types/common/index.d.ts.map +1 -1
  1156. package/dist/types/common/index.js +3 -2
  1157. package/dist/types/common/index.js.map +1 -1
  1158. package/dist/types/connector/core.d.ts +2 -2
  1159. package/dist/types/connector/definition.d.ts +1 -1
  1160. package/dist/types/connector/mcp.d.ts +1 -1
  1161. package/dist/types/errors/catalog.js +4 -4
  1162. package/dist/types/errors/catalog.js.map +1 -1
  1163. package/dist/types/errors/index.d.ts +5 -5
  1164. package/dist/types/errors/index.d.ts.map +1 -1
  1165. package/dist/types/guardrail/index.d.ts +12 -10
  1166. package/dist/types/guardrail/index.d.ts.map +1 -1
  1167. package/dist/types/hitl/index.d.ts +60 -117
  1168. package/dist/types/hitl/index.d.ts.map +1 -1
  1169. package/dist/types/hitl/index.js +1 -1
  1170. package/dist/types/hitl/index.js.map +1 -1
  1171. package/dist/types/hitl/policy.d.ts +8 -6
  1172. package/dist/types/hitl/policy.d.ts.map +1 -1
  1173. package/dist/types/ids/brand.d.ts +10 -3
  1174. package/dist/types/ids/brand.d.ts.map +1 -1
  1175. package/dist/types/ids/brand.js.map +1 -1
  1176. package/dist/types/ids/index.d.ts +10 -4
  1177. package/dist/types/ids/index.d.ts.map +1 -1
  1178. package/dist/types/ids/index.js.map +1 -1
  1179. package/dist/types/memory/index.d.ts +35 -0
  1180. package/dist/types/memory/index.d.ts.map +1 -1
  1181. package/dist/types/memory/index.js +17 -0
  1182. package/dist/types/memory/index.js.map +1 -1
  1183. package/dist/types/message/index.d.ts +4 -4
  1184. package/dist/types/plan/index.d.ts +5 -3
  1185. package/dist/types/plan/index.d.ts.map +1 -1
  1186. package/dist/types/plugin/index.d.ts +27 -19
  1187. package/dist/types/plugin/index.d.ts.map +1 -1
  1188. package/dist/types/plugin/index.js +16 -3
  1189. package/dist/types/plugin/index.js.map +1 -1
  1190. package/dist/types/probe/event-kind.d.ts +3 -3
  1191. package/dist/types/probe/event-kind.d.ts.map +1 -1
  1192. package/dist/types/probe/registry.d.ts +3 -2
  1193. package/dist/types/probe/registry.d.ts.map +1 -1
  1194. package/dist/types/project/entity.d.ts +3 -3
  1195. package/dist/types/provider/config.d.ts +3 -3
  1196. package/dist/types/provider/error.d.ts +1 -1
  1197. package/dist/types/provider/errors.d.ts +2 -2
  1198. package/dist/types/provider/errors.js +2 -2
  1199. package/dist/types/provider/errors.js.map +1 -1
  1200. package/dist/types/provider/interface.d.ts +5 -5
  1201. package/dist/types/provider/model.d.ts +26 -2
  1202. package/dist/types/provider/model.d.ts.map +1 -1
  1203. package/dist/types/router/task-router.d.ts +1 -1
  1204. package/dist/types/sandbox/index.d.ts +14 -14
  1205. package/dist/types/sandbox/index.d.ts.map +1 -1
  1206. package/dist/types/sandbox/index.js +4 -4
  1207. package/dist/types/session/answer-review.d.ts +80 -0
  1208. package/dist/types/session/answer-review.d.ts.map +1 -0
  1209. package/dist/types/session/answer-review.js.map +1 -0
  1210. package/dist/types/session/audit.d.ts +153 -0
  1211. package/dist/types/session/audit.d.ts.map +1 -0
  1212. package/dist/types/session/audit.js +35 -0
  1213. package/dist/types/session/audit.js.map +1 -0
  1214. package/dist/types/session/cancel-cause.d.ts +49 -0
  1215. package/dist/types/session/cancel-cause.d.ts.map +1 -0
  1216. package/dist/types/session/cancel-cause.js +39 -0
  1217. package/dist/types/session/cancel-cause.js.map +1 -0
  1218. package/dist/types/session/checkpoint.d.ts +325 -0
  1219. package/dist/types/session/checkpoint.d.ts.map +1 -0
  1220. package/dist/types/session/checkpoint.js +100 -0
  1221. package/dist/types/session/checkpoint.js.map +1 -0
  1222. package/dist/types/session/config.d.ts +199 -0
  1223. package/dist/types/session/config.d.ts.map +1 -0
  1224. package/dist/types/session/config.js.map +1 -0
  1225. package/dist/types/session/derive-status.d.ts +28 -0
  1226. package/dist/types/session/derive-status.d.ts.map +1 -0
  1227. package/dist/types/session/derive-status.js +49 -0
  1228. package/dist/types/session/derive-status.js.map +1 -0
  1229. package/dist/types/session/durable.d.ts +142 -0
  1230. package/dist/types/session/durable.d.ts.map +1 -0
  1231. package/dist/types/session/durable.js +11 -0
  1232. package/dist/types/session/durable.js.map +1 -0
  1233. package/dist/types/session/entity.d.ts +1 -1
  1234. package/dist/types/session/events.d.ts +1139 -0
  1235. package/dist/types/session/events.d.ts.map +1 -0
  1236. package/dist/types/session/events.js +15 -0
  1237. package/dist/types/session/events.js.map +1 -0
  1238. package/dist/types/session/fork.d.ts +45 -0
  1239. package/dist/types/session/fork.d.ts.map +1 -0
  1240. package/dist/types/session/fork.js +15 -0
  1241. package/dist/types/session/fork.js.map +1 -0
  1242. package/dist/types/session/ids.d.ts +1 -1
  1243. package/dist/types/session/ids.d.ts.map +1 -1
  1244. package/dist/types/session/index.d.ts +20 -1
  1245. package/dist/types/session/index.d.ts.map +1 -1
  1246. package/dist/types/session/index.js +22 -4
  1247. package/dist/types/session/index.js.map +1 -1
  1248. package/dist/types/session/lineage.d.ts +15 -0
  1249. package/dist/types/session/lineage.d.ts.map +1 -0
  1250. package/dist/types/session/lineage.js.map +1 -0
  1251. package/dist/types/session/log-cursor.d.ts +57 -0
  1252. package/dist/types/session/log-cursor.d.ts.map +1 -0
  1253. package/dist/types/session/log-cursor.js +34 -0
  1254. package/dist/types/session/log-cursor.js.map +1 -0
  1255. package/dist/types/session/memory-promotion.d.ts +91 -0
  1256. package/dist/types/session/memory-promotion.d.ts.map +1 -0
  1257. package/dist/types/session/memory-promotion.js +39 -0
  1258. package/dist/types/session/memory-promotion.js.map +1 -0
  1259. package/dist/types/session/messages.d.ts +1 -1
  1260. package/dist/types/session/messages.js +1 -1
  1261. package/dist/types/session/prepare-step.d.ts +278 -0
  1262. package/dist/types/session/prepare-step.d.ts.map +1 -0
  1263. package/dist/types/session/prepare-step.js.map +1 -0
  1264. package/dist/types/session/records.d.ts +5597 -0
  1265. package/dist/types/session/records.d.ts.map +1 -0
  1266. package/dist/types/session/records.js +721 -0
  1267. package/dist/types/session/records.js.map +1 -0
  1268. package/dist/types/session/step.d.ts +195 -0
  1269. package/dist/types/session/step.d.ts.map +1 -0
  1270. package/dist/types/session/step.js +26 -0
  1271. package/dist/types/session/step.js.map +1 -0
  1272. package/dist/types/session/stop-reason.d.ts +67 -0
  1273. package/dist/types/session/stop-reason.d.ts.map +1 -0
  1274. package/dist/types/session/stop-reason.js.map +1 -0
  1275. package/dist/types/session/store.d.ts +2 -43
  1276. package/dist/types/session/store.d.ts.map +1 -1
  1277. package/dist/types/session/tool-execution.d.ts +34 -0
  1278. package/dist/types/session/tool-execution.d.ts.map +1 -0
  1279. package/dist/types/session/tool-execution.js +11 -0
  1280. package/dist/types/session/tool-execution.js.map +1 -0
  1281. package/dist/types/session/turn-state.d.ts +74 -0
  1282. package/dist/types/session/turn-state.d.ts.map +1 -0
  1283. package/dist/types/session/turn-state.js +59 -0
  1284. package/dist/types/session/turn-state.js.map +1 -0
  1285. package/dist/types/session/turn.d.ts +215 -0
  1286. package/dist/types/session/turn.d.ts.map +1 -0
  1287. package/dist/types/session/turn.js +44 -0
  1288. package/dist/types/session/turn.js.map +1 -0
  1289. package/dist/types/structured-output/index.d.ts +2 -2
  1290. package/dist/types/structured-output/index.d.ts.map +1 -1
  1291. package/dist/types/summary/deliverable.d.ts +4 -4
  1292. package/dist/types/summary/deliverable.d.ts.map +1 -1
  1293. package/dist/types/task/index.d.ts +8 -4
  1294. package/dist/types/task/index.d.ts.map +1 -1
  1295. package/dist/types/tool/index.d.ts +73 -26
  1296. package/dist/types/tool/index.d.ts.map +1 -1
  1297. package/dist/types/tool/index.js.map +1 -1
  1298. package/dist/types/topic/entity.d.ts +6 -6
  1299. package/dist/types/topic/objective.d.ts +10 -5
  1300. package/dist/types/topic/objective.d.ts.map +1 -1
  1301. package/dist/types/topic/objective.js.map +1 -1
  1302. package/dist/types/topic/state.d.ts +4 -4
  1303. package/dist/types/topic/store.d.ts +1 -1
  1304. package/dist/types/topic/store.js +1 -1
  1305. package/dist/types/workspace/index.d.ts +1 -1
  1306. package/dist/types/workspace/index.d.ts.map +1 -1
  1307. package/dist/types/workspace/index.js +1 -1
  1308. package/dist/types/workspace/index.js.map +1 -1
  1309. package/dist/types/workspace/ref.d.ts +3 -3
  1310. package/dist/types/workspace/shared-session.d.ts +61 -0
  1311. package/dist/types/workspace/shared-session.d.ts.map +1 -0
  1312. package/dist/types/workspace/shared-session.js +2 -0
  1313. package/dist/types/workspace/shared-session.js.map +1 -0
  1314. package/dist/utils/abort.js +4 -4
  1315. package/dist/utils/abort.js.map +1 -1
  1316. package/dist/utils/atomic-write.d.ts +29 -1
  1317. package/dist/utils/atomic-write.d.ts.map +1 -1
  1318. package/dist/utils/atomic-write.js +60 -4
  1319. package/dist/utils/atomic-write.js.map +1 -1
  1320. package/dist/utils/cost.d.ts +3 -3
  1321. package/dist/utils/cost.d.ts.map +1 -1
  1322. package/dist/utils/cost.js +11 -12
  1323. package/dist/utils/cost.js.map +1 -1
  1324. package/dist/utils/env.d.ts +1 -1
  1325. package/dist/utils/env.js +1 -1
  1326. package/dist/utils/id.d.ts +9 -8
  1327. package/dist/utils/id.d.ts.map +1 -1
  1328. package/dist/utils/id.js +20 -13
  1329. package/dist/utils/id.js.map +1 -1
  1330. package/dist/utils/log/create-logger.js +1 -1
  1331. package/dist/utils/log/create-logger.js.map +1 -1
  1332. package/dist/utils/log/types.js +1 -1
  1333. package/dist/utils/log/types.js.map +1 -1
  1334. package/dist/utils/shell-compress.js +2 -2
  1335. package/dist/utils/shell-compress.js.map +1 -1
  1336. package/dist/utils/uuidv7.d.ts +33 -0
  1337. package/dist/utils/uuidv7.d.ts.map +1 -0
  1338. package/dist/utils/uuidv7.js +70 -0
  1339. package/dist/utils/uuidv7.js.map +1 -0
  1340. package/dist/vault/instrumentation.d.ts +5 -2
  1341. package/dist/vault/instrumentation.d.ts.map +1 -1
  1342. package/dist/vault/instrumentation.js +12 -6
  1343. package/dist/vault/instrumentation.js.map +1 -1
  1344. package/package.json +1 -1
  1345. package/src/advisory/budget.ts +3 -3
  1346. package/src/advisory/context.ts +9 -9
  1347. package/src/advisory/evaluator.ts +2 -2
  1348. package/src/advisory/parse.ts +1 -1
  1349. package/src/agents/AbstractAgent.ts +74 -50
  1350. package/src/agents/PipelineAgent.ts +91 -26
  1351. package/src/agents/ReactiveAgent.ts +35 -29
  1352. package/src/agents/RouterAgent.ts +32 -44
  1353. package/src/agents/SupervisorAgent.ts +55 -41
  1354. package/src/agents/budget.ts +73 -16
  1355. package/src/agents/defineAgent.ts +7 -3
  1356. package/src/agents/handle.ts +17 -19
  1357. package/src/agents/lock.ts +4 -4
  1358. package/src/agents/runAgent.ts +96 -38
  1359. package/src/agents/storage.ts +36 -0
  1360. package/src/authorization/command-line.ts +1 -1
  1361. package/src/authorization/gate.ts +1 -1
  1362. package/src/authorization/permission-presets.ts +4 -4
  1363. package/src/bridge/a2a/client.ts +2 -2
  1364. package/src/bridge/a2a/context.ts +46 -0
  1365. package/src/bridge/a2a/index.ts +12 -5
  1366. package/src/bridge/a2a/mapper.ts +48 -38
  1367. package/src/bridge/a2a/task.ts +91 -37
  1368. package/src/bridge/acp/permission.ts +2 -2
  1369. package/src/bridge/acp/server.ts +45 -11
  1370. package/src/bridge/acp/update.ts +9 -9
  1371. package/src/bridge/external-session.ts +82 -0
  1372. package/src/bridge/sse/index.ts +1 -1
  1373. package/src/bridge/sse/mapper.ts +116 -145
  1374. package/src/bus/breaker.ts +30 -29
  1375. package/src/bus/index.ts +7 -7
  1376. package/src/bus/lock.ts +7 -7
  1377. package/src/bus/ownership.ts +8 -8
  1378. package/src/compaction/consolidation.ts +61 -15
  1379. package/src/compaction/context-window.ts +4 -4
  1380. package/src/compaction/index.ts +2 -2
  1381. package/src/compaction/manager.ts +4 -4
  1382. package/src/compaction/manual.ts +5 -5
  1383. package/src/compaction/plan.ts +8 -8
  1384. package/src/compaction/reducer.ts +8 -8
  1385. package/src/compaction/retention.ts +2 -2
  1386. package/src/compaction/salience/bm25.ts +2 -2
  1387. package/src/compaction/salience/goal.ts +3 -3
  1388. package/src/compaction/salience/minhash.ts +1 -1
  1389. package/src/compaction/salience/score.ts +3 -3
  1390. package/src/compaction/salience/tokenize.ts +1 -1
  1391. package/src/compaction/verifier.ts +7 -7
  1392. package/src/compaction/wire.ts +1 -1
  1393. package/src/config/registry.ts +4 -4
  1394. package/src/config/runtime.ts +3 -3
  1395. package/src/connector/http-operation.ts +1 -1
  1396. package/src/connector/mcp/adapter.ts +1 -1
  1397. package/src/connector/mcp/client.ts +1 -1
  1398. package/src/connector/mcp/discovery.ts +2 -2
  1399. package/src/connector/mcp/policy.ts +1 -1
  1400. package/src/connector/mcp/prompt-adapter.ts +3 -3
  1401. package/src/constants/a2a/index.ts +10 -3
  1402. package/src/constants/continuation.ts +1 -1
  1403. package/src/constants/index.ts +0 -1
  1404. package/src/constants/limits.ts +2 -2
  1405. package/src/constants/telemetry/index.ts +15 -12
  1406. package/src/constants/tools/index.ts +2 -2
  1407. package/src/contracts/api.ts +11 -202
  1408. package/src/contracts/index.ts +8 -15
  1409. package/src/contracts/schemas.ts +6 -39
  1410. package/src/contracts/session/api.ts +150 -0
  1411. package/src/contracts/session/index.ts +29 -0
  1412. package/src/contracts/session/schemas.ts +60 -0
  1413. package/src/contracts/session/turn-status.ts +83 -0
  1414. package/src/contracts/session/turn.ts +67 -0
  1415. package/src/directory/derive-supervisor.ts +2 -2
  1416. package/src/directory/derive.ts +4 -4
  1417. package/src/directory/index.ts +2 -2
  1418. package/src/directory/load.ts +2 -2
  1419. package/src/directory/types.ts +2 -2
  1420. package/src/eval/experiment.ts +23 -23
  1421. package/src/eval/from-turn.ts +50 -0
  1422. package/src/eval/harness-verification.ts +7 -7
  1423. package/src/eval/index.ts +2 -2
  1424. package/src/eval/judge.ts +10 -10
  1425. package/src/eval/scorers.ts +23 -23
  1426. package/src/eval/types.ts +12 -12
  1427. package/src/eval/uncertainty.ts +2 -2
  1428. package/src/execution/code-runtime/types.ts +4 -4
  1429. package/src/execution/code-runtime/worker.ts +1 -1
  1430. package/src/invariants/index.ts +2 -2
  1431. package/src/manager/agent/child-session.ts +120 -0
  1432. package/src/manager/agent/lifecycle.ts +422 -102
  1433. package/src/manager/index.ts +1 -2
  1434. package/src/manager/plan/lifecycle.ts +16 -10
  1435. package/src/manager/resident/consumption.ts +8 -6
  1436. package/src/manager/resident/evidence-recall.ts +14 -14
  1437. package/src/manager/resident/host.ts +2 -2
  1438. package/src/manager/resident/learning-cycle.ts +5 -3
  1439. package/src/manager/resident/learning-observation.ts +9 -4
  1440. package/src/manager/resident/learning-store.ts +46 -16
  1441. package/src/manager/resident/tool-evidence.ts +38 -31
  1442. package/src/manager/session/turn-recorder.ts +1291 -0
  1443. package/src/plugin/lifecycle.ts +20 -13
  1444. package/src/plugin/shell-hook.ts +64 -25
  1445. package/src/pricing/index.ts +5 -5
  1446. package/src/pricing/rates.source.json +5 -5
  1447. package/src/probe/context.ts +5 -3
  1448. package/src/probe/registry.ts +1 -1
  1449. package/src/prompt/coding-agent-doctrine.ts +1 -1
  1450. package/src/prompt/contributions.ts +28 -6
  1451. package/src/prompt/resident-learning.ts +2 -2
  1452. package/src/provider/collect-chat-completion.ts +3 -3
  1453. package/src/provider/conformance.ts +21 -6
  1454. package/src/provider/errors.ts +2 -2
  1455. package/src/provider/fallback.ts +8 -8
  1456. package/src/provider/idle-timeout.ts +4 -4
  1457. package/src/provider/instrumentation.ts +14 -7
  1458. package/src/provider/mock.ts +1 -1
  1459. package/src/provider/retry.ts +7 -7
  1460. package/src/provider/stream-text.ts +1 -1
  1461. package/src/provider/thinking-support.ts +2 -2
  1462. package/src/provider/token-budget.ts +2 -2
  1463. package/src/public-runtime.ts +213 -141
  1464. package/src/public-tools.ts +14 -7
  1465. package/src/public-types.ts +71 -59
  1466. package/src/rag/embedding.ts +1 -1
  1467. package/src/read-model/index.ts +2 -2
  1468. package/src/read-model/registry.ts +11 -11
  1469. package/src/read-model/session-status.ts +87 -0
  1470. package/src/registry/command/kernel-commands.ts +10 -10
  1471. package/src/registry/tool/dialect.ts +1 -1
  1472. package/src/registry/tool/execute.ts +20 -7
  1473. package/src/registry/tool/portable.ts +1 -1
  1474. package/src/registry/tool/presentation.ts +1 -1
  1475. package/src/registry/tool/schema.ts +1 -1
  1476. package/src/registry/tool/screen.ts +3 -3
  1477. package/src/runtime/bidi/index.ts +2 -2
  1478. package/src/runtime/bidi/session.ts +45 -34
  1479. package/src/runtime/jobs/awaited-jobs.ts +13 -13
  1480. package/src/runtime/jobs/registry.ts +11 -11
  1481. package/src/runtime/query/abandon-turn.ts +110 -0
  1482. package/src/runtime/query/approval-policy.ts +13 -13
  1483. package/src/runtime/query/callback-inference.ts +16 -10
  1484. package/src/runtime/query/cancelled-before-start.ts +96 -79
  1485. package/src/runtime/query/checkpoint.ts +519 -420
  1486. package/src/runtime/query/compact-session.ts +92 -0
  1487. package/src/runtime/query/context.ts +80 -136
  1488. package/src/runtime/query/events.ts +159 -126
  1489. package/src/runtime/query/executor/tool-call-admission.ts +6 -5
  1490. package/src/runtime/query/executor.ts +206 -111
  1491. package/src/runtime/query/file-evidence-seed.ts +2 -2
  1492. package/src/runtime/query/finalize-turn.ts +209 -0
  1493. package/src/runtime/query/fork/list.ts +20 -0
  1494. package/src/runtime/query/fork/mutate.ts +82 -0
  1495. package/src/runtime/query/fork/prepare.ts +92 -0
  1496. package/src/runtime/query/guard.ts +22 -22
  1497. package/src/runtime/query/guardrail-presets.ts +12 -12
  1498. package/src/runtime/query/guardrails.ts +11 -11
  1499. package/src/runtime/query/index.ts +1607 -1533
  1500. package/src/runtime/query/iteration/index.ts +304 -253
  1501. package/src/runtime/query/iteration/outstanding-work.ts +65 -65
  1502. package/src/runtime/query/iteration/phases/advisory.ts +16 -16
  1503. package/src/runtime/query/iteration/phases/checkpoint.ts +26 -10
  1504. package/src/runtime/query/iteration/phases/compaction.ts +74 -72
  1505. package/src/runtime/query/iteration/phases/context.ts +57 -60
  1506. package/src/runtime/query/iteration/phases/plan.ts +9 -6
  1507. package/src/runtime/query/iteration/phases/tool-review.ts +141 -27
  1508. package/src/runtime/query/iteration/phases/working-memory.ts +57 -22
  1509. package/src/runtime/query/iteration/step-context.ts +17 -0
  1510. package/src/runtime/query/iteration/step-shaping.ts +21 -24
  1511. package/src/runtime/query/iteration/stream-turn.ts +36 -32
  1512. package/src/runtime/query/plugin-hooks.ts +1 -1
  1513. package/src/runtime/query/prepare-turn.ts +932 -0
  1514. package/src/runtime/query/project-instructions.ts +5 -4
  1515. package/src/runtime/query/prompt-cache.ts +1 -1
  1516. package/src/runtime/query/prompt.ts +5 -5
  1517. package/src/runtime/query/question-park.ts +7 -7
  1518. package/src/runtime/query/release-turn.ts +157 -0
  1519. package/src/runtime/query/repeat-call.ts +7 -7
  1520. package/src/runtime/query/result.ts +123 -131
  1521. package/src/runtime/query/resume-pending.ts +101 -44
  1522. package/src/runtime/query/resume-session.ts +153 -0
  1523. package/src/runtime/query/review-policy.ts +147 -19
  1524. package/src/runtime/query/sandbox-lifecycle.ts +5 -5
  1525. package/src/runtime/query/session-storage.ts +302 -0
  1526. package/src/runtime/query/steering.ts +17 -4
  1527. package/src/runtime/query/token-budget.ts +59 -93
  1528. package/src/runtime/query/tool-call-budget.ts +14 -14
  1529. package/src/runtime/query/tool-executions.ts +77 -0
  1530. package/src/runtime/query/tool-grants.ts +3 -3
  1531. package/src/runtime/query/tool-output-budget.ts +4 -4
  1532. package/src/runtime/query/tool-pause.ts +8 -6
  1533. package/src/runtime/query/tooling.ts +22 -14
  1534. package/src/runtime/query/turn-state.ts +153 -0
  1535. package/src/sandbox/isolation.ts +2 -2
  1536. package/src/sandbox/provider/local.ts +8 -8
  1537. package/src/scheduler/completion-inbox.ts +36 -36
  1538. package/src/scheduler/delegating.ts +27 -13
  1539. package/src/scheduler/local.ts +49 -21
  1540. package/src/session/events/index.ts +10 -14
  1541. package/src/session/handoff/broadcast.ts +7 -7
  1542. package/src/session/handoff/events.ts +1 -1
  1543. package/src/session/handoff/index.ts +1 -1
  1544. package/src/session/handoff/single.ts +21 -21
  1545. package/src/session/handoff/version.ts +11 -7
  1546. package/src/session/home.ts +66 -0
  1547. package/src/session/index.ts +1 -0
  1548. package/src/session/log-hash.ts +115 -0
  1549. package/src/session/messages.ts +39 -0
  1550. package/src/session/paths.ts +449 -0
  1551. package/src/session/retention/archive.ts +13 -5
  1552. package/src/session/status/derive.ts +21 -21
  1553. package/src/session/workspace/git-worktree.ts +31 -2
  1554. package/src/session/workspace/index.ts +5 -8
  1555. package/src/session/workspace/shared-session.ts +354 -0
  1556. package/src/session-query/index.ts +152 -0
  1557. package/src/skills/registry.ts +1 -1
  1558. package/src/store/activity/memory.ts +5 -5
  1559. package/src/store/attachment/index.ts +5 -5
  1560. package/src/store/budget/disk.ts +243 -0
  1561. package/src/store/budget/index.ts +24 -0
  1562. package/src/store/budget/ledger.ts +836 -0
  1563. package/src/store/budget/memory.ts +39 -0
  1564. package/src/store/checkpoint/contract.ts +225 -0
  1565. package/src/store/checkpoint/disk.ts +209 -0
  1566. package/src/store/checkpoint/index.ts +22 -0
  1567. package/src/store/checkpoint/memory.ts +112 -0
  1568. package/src/store/checkpoint/prune.ts +93 -0
  1569. package/src/store/config/index.ts +1 -1
  1570. package/src/store/evidence/disk.ts +185 -81
  1571. package/src/store/evidence/index-page.ts +67 -140
  1572. package/src/store/evidence/source-text.ts +23 -28
  1573. package/src/store/evidence/types.ts +51 -41
  1574. package/src/store/feedback/conformance.ts +37 -35
  1575. package/src/store/feedback/disk.ts +61 -63
  1576. package/src/store/feedback/index.ts +1 -1
  1577. package/src/store/feedback/memory.ts +0 -0
  1578. package/src/store/feedback/types.ts +14 -13
  1579. package/src/store/index.ts +24 -28
  1580. package/src/store/memory/digest.ts +35 -0
  1581. package/src/store/memory/disk.ts +66 -20
  1582. package/src/store/memory/index-file.ts +121 -0
  1583. package/src/store/memory/index.ts +4 -2
  1584. package/src/store/memory/links.ts +37 -0
  1585. package/src/store/memory/markdown-format.ts +276 -0
  1586. package/src/store/memory/markdown.ts +741 -0
  1587. package/src/store/memory/memory.ts +39 -17
  1588. package/src/store/memory/naming.ts +195 -0
  1589. package/src/store/memory/origin.ts +35 -0
  1590. package/src/store/session/disk.ts +27 -200
  1591. package/src/store/session/index.ts +5 -9
  1592. package/src/store/session/memory.ts +1 -78
  1593. package/src/store/session-claim.ts +101 -0
  1594. package/src/store/session-index/fts.ts +215 -0
  1595. package/src/store/session-index/index.ts +253 -0
  1596. package/src/store/session-index/rebuild.ts +869 -0
  1597. package/src/store/session-index/refs.ts +164 -0
  1598. package/src/store/session-index/scan.ts +273 -0
  1599. package/src/store/session-index/sqlite.ts +772 -0
  1600. package/src/store/session-log/chain.ts +314 -0
  1601. package/src/store/session-log/conformance.ts +487 -0
  1602. package/src/store/session-log/core.ts +809 -0
  1603. package/src/store/session-log/disk.ts +217 -0
  1604. package/src/store/session-log/fold.ts +368 -0
  1605. package/src/store/session-log/heal.ts +44 -0
  1606. package/src/store/session-log/held-leases.ts +103 -0
  1607. package/src/store/session-log/index.ts +87 -0
  1608. package/src/store/session-log/lease.ts +354 -0
  1609. package/src/store/session-log/memory.ts +111 -0
  1610. package/src/store/session-log/spill.ts +311 -0
  1611. package/src/store/task/context.ts +33 -0
  1612. package/src/store/task/disk.ts +122 -141
  1613. package/src/store/task/memory.ts +14 -8
  1614. package/src/store/topic/index.ts +2 -2
  1615. package/src/store/topic/objective.ts +12 -3
  1616. package/src/store/topic/state.ts +1 -1
  1617. package/src/streaming/coalesce.ts +8 -7
  1618. package/src/telemetry/attributes.ts +10 -9
  1619. package/src/telemetry/metrics.ts +6 -6
  1620. package/src/telemetry/runtime-accessors.ts +1 -1
  1621. package/src/test-support/ids.ts +5 -6
  1622. package/src/testing.ts +11 -16
  1623. package/src/tools/advisory/index.ts +1 -1
  1624. package/src/tools/builtins/bash.ts +43 -5
  1625. package/src/tools/builtins/content-fingerprint.ts +2 -2
  1626. package/src/tools/builtins/edit-apply.ts +1 -1
  1627. package/src/tools/builtins/edit.ts +3 -0
  1628. package/src/tools/builtins/glob.ts +3 -0
  1629. package/src/tools/builtins/grep.ts +3 -0
  1630. package/src/tools/builtins/job.ts +5 -5
  1631. package/src/tools/builtins/ls.ts +3 -0
  1632. package/src/tools/builtins/lsp.ts +5 -2
  1633. package/src/tools/builtins/read-file.ts +3 -0
  1634. package/src/tools/builtins/run-code.ts +11 -11
  1635. package/src/tools/builtins/skill.ts +3 -3
  1636. package/src/tools/builtins/wait-for-job-bounds.ts +6 -6
  1637. package/src/tools/builtins/wait-for-job.ts +3 -3
  1638. package/src/tools/builtins/web-guidance.ts +2 -2
  1639. package/src/tools/builtins/web.ts +3 -3
  1640. package/src/tools/builtins/write-file.ts +3 -0
  1641. package/src/tools/coordinator/agent.ts +8 -8
  1642. package/src/tools/coordinator/ask-user-question.ts +16 -14
  1643. package/src/tools/coordinator/index.ts +64 -54
  1644. package/src/tools/coordinator/outcome.ts +7 -7
  1645. package/src/tools/coordinator/plan-dependencies.ts +1 -1
  1646. package/src/tools/coordinator/wait-with-idle-bound.ts +6 -6
  1647. package/src/tools/defineTool.ts +9 -1
  1648. package/src/tools/env-scrub.ts +1 -1
  1649. package/src/tools/goal/index.ts +16 -12
  1650. package/src/tools/memory/fields.ts +26 -0
  1651. package/src/tools/memory/read.ts +75 -8
  1652. package/src/tools/memory/resolve.ts +37 -0
  1653. package/src/tools/memory/save.ts +54 -18
  1654. package/src/tools/memory/search.ts +9 -5
  1655. package/src/tools/memory/update.ts +43 -7
  1656. package/src/tools/paths.ts +87 -27
  1657. package/src/tools/posix-path.ts +1 -1
  1658. package/src/tools/resident-history.ts +1 -1
  1659. package/src/tools/resident-tool-evidence.ts +1 -1
  1660. package/src/tools/task/create.ts +7 -3
  1661. package/src/tools/task/index.ts +20 -4
  1662. package/src/tools/task/list.ts +12 -6
  1663. package/src/turn/LimitChecker.ts +99 -0
  1664. package/src/turn/command-gate.ts +294 -0
  1665. package/src/turn/drain.ts +324 -0
  1666. package/src/turn/evidence-query.ts +333 -0
  1667. package/src/turn/evidence-recall.ts +860 -0
  1668. package/src/turn/index.ts +38 -0
  1669. package/src/turn/json-claim-verifier.ts +298 -0
  1670. package/src/turn/memory-promoter.ts +160 -0
  1671. package/src/turn/memory-recall.ts +285 -0
  1672. package/src/turn/reporter.ts +469 -0
  1673. package/src/types/activity/index.ts +2 -2
  1674. package/src/types/advisory/config.ts +7 -7
  1675. package/src/types/agent/base.ts +74 -44
  1676. package/src/types/agent/core.ts +10 -10
  1677. package/src/types/agent/delegate.ts +2 -2
  1678. package/src/types/agent/factory.ts +8 -4
  1679. package/src/types/agent/manager.ts +6 -6
  1680. package/src/types/agent/pipeline.ts +5 -4
  1681. package/src/types/agent/reactive.ts +11 -10
  1682. package/src/types/agent/router.ts +1 -1
  1683. package/src/types/agent/scheduler.ts +28 -11
  1684. package/src/types/agent/supervisor.ts +13 -13
  1685. package/src/types/agent/task.ts +53 -12
  1686. package/src/types/agent/working-memory.ts +6 -4
  1687. package/src/types/bidi/index.ts +31 -12
  1688. package/src/types/bus/index.ts +32 -26
  1689. package/src/types/code-navigation/index.ts +1 -1
  1690. package/src/types/common/index.ts +12 -26
  1691. package/src/types/connector/core.ts +2 -2
  1692. package/src/types/connector/definition.ts +1 -1
  1693. package/src/types/connector/mcp.ts +1 -1
  1694. package/src/types/errors/catalog.ts +4 -4
  1695. package/src/types/errors/index.ts +5 -5
  1696. package/src/types/guardrail/index.ts +12 -10
  1697. package/src/types/hitl/index.ts +81 -125
  1698. package/src/types/hitl/policy.ts +8 -6
  1699. package/src/types/ids/brand.ts +10 -2
  1700. package/src/types/ids/index.ts +10 -4
  1701. package/src/types/memory/index.ts +53 -0
  1702. package/src/types/message/index.ts +4 -4
  1703. package/src/types/plan/index.ts +5 -3
  1704. package/src/types/plugin/index.ts +41 -24
  1705. package/src/types/probe/event-kind.ts +3 -3
  1706. package/src/types/probe/registry.ts +3 -2
  1707. package/src/types/project/entity.ts +3 -3
  1708. package/src/types/provider/config.ts +3 -3
  1709. package/src/types/provider/error.ts +1 -1
  1710. package/src/types/provider/errors.ts +3 -3
  1711. package/src/types/provider/interface.ts +5 -5
  1712. package/src/types/provider/model.ts +26 -2
  1713. package/src/types/router/task-router.ts +1 -1
  1714. package/src/types/sandbox/index.ts +12 -12
  1715. package/src/types/session/answer-review.ts +85 -0
  1716. package/src/types/session/audit.ts +167 -0
  1717. package/src/types/session/cancel-cause.ts +60 -0
  1718. package/src/types/session/checkpoint.ts +167 -0
  1719. package/src/types/session/config.ts +212 -0
  1720. package/src/types/session/derive-status.ts +61 -0
  1721. package/src/types/session/durable.ts +150 -0
  1722. package/src/types/session/entity.ts +1 -1
  1723. package/src/types/session/events.ts +1187 -0
  1724. package/src/types/session/fork.ts +52 -0
  1725. package/src/types/session/ids.ts +1 -1
  1726. package/src/types/session/index.ts +24 -4
  1727. package/src/types/session/lineage.ts +15 -0
  1728. package/src/types/session/log-cursor.ts +69 -0
  1729. package/src/types/session/memory-promotion.ts +116 -0
  1730. package/src/types/session/messages.ts +1 -1
  1731. package/src/types/session/prepare-step.ts +299 -0
  1732. package/src/types/session/records.ts +931 -0
  1733. package/src/types/session/step.ts +214 -0
  1734. package/src/types/session/stop-reason.ts +83 -0
  1735. package/src/types/session/store.ts +5 -52
  1736. package/src/types/session/tool-execution.ts +32 -0
  1737. package/src/types/session/turn-state.ts +136 -0
  1738. package/src/types/session/turn.ts +289 -0
  1739. package/src/types/structured-output/index.ts +4 -4
  1740. package/src/types/summary/deliverable.ts +4 -4
  1741. package/src/types/task/index.ts +8 -4
  1742. package/src/types/tool/index.ts +74 -27
  1743. package/src/types/topic/entity.ts +6 -6
  1744. package/src/types/topic/objective.ts +7 -5
  1745. package/src/types/topic/state.ts +4 -4
  1746. package/src/types/topic/store.ts +1 -1
  1747. package/src/types/workspace/index.ts +8 -8
  1748. package/src/types/workspace/ref.ts +3 -3
  1749. package/src/types/workspace/shared-session.ts +65 -0
  1750. package/src/utils/abort.ts +4 -4
  1751. package/src/utils/atomic-write.ts +67 -4
  1752. package/src/utils/cost.ts +11 -12
  1753. package/src/utils/env.ts +1 -1
  1754. package/src/utils/id.ts +25 -18
  1755. package/src/utils/log/attributes.ts +2 -2
  1756. package/src/utils/log/create-logger.ts +1 -1
  1757. package/src/utils/log/types.ts +1 -1
  1758. package/src/utils/shell-compress.ts +2 -2
  1759. package/src/utils/uuidv7.ts +107 -0
  1760. package/src/vault/instrumentation.ts +21 -8
  1761. package/dist/constants/emergency.d.ts +0 -4
  1762. package/dist/constants/emergency.d.ts.map +0 -1
  1763. package/dist/constants/emergency.js +0 -4
  1764. package/dist/constants/emergency.js.map +0 -1
  1765. package/dist/contracts/run-status.d.ts +0 -17
  1766. package/dist/contracts/run-status.d.ts.map +0 -1
  1767. package/dist/contracts/run-status.js +0 -41
  1768. package/dist/contracts/run-status.js.map +0 -1
  1769. package/dist/eval/from-run.d.ts +0 -30
  1770. package/dist/eval/from-run.d.ts.map +0 -1
  1771. package/dist/eval/from-run.js +0 -46
  1772. package/dist/eval/from-run.js.map +0 -1
  1773. package/dist/manager/run/emergency.d.ts +0 -19
  1774. package/dist/manager/run/emergency.d.ts.map +0 -1
  1775. package/dist/manager/run/emergency.js +0 -122
  1776. package/dist/manager/run/emergency.js.map +0 -1
  1777. package/dist/manager/run/persistence.d.ts +0 -312
  1778. package/dist/manager/run/persistence.d.ts.map +0 -1
  1779. package/dist/manager/run/persistence.js +0 -656
  1780. package/dist/manager/run/persistence.js.map +0 -1
  1781. package/dist/read-model/run-status.d.ts +0 -43
  1782. package/dist/read-model/run-status.d.ts.map +0 -1
  1783. package/dist/read-model/run-status.js +0 -89
  1784. package/dist/read-model/run-status.js.map +0 -1
  1785. package/dist/run/LimitChecker.d.ts +0 -30
  1786. package/dist/run/LimitChecker.d.ts.map +0 -1
  1787. package/dist/run/LimitChecker.js +0 -57
  1788. package/dist/run/LimitChecker.js.map +0 -1
  1789. package/dist/run/command-gate.d.ts +0 -107
  1790. package/dist/run/command-gate.d.ts.map +0 -1
  1791. package/dist/run/command-gate.js +0 -221
  1792. package/dist/run/command-gate.js.map +0 -1
  1793. package/dist/run/drain.d.ts +0 -204
  1794. package/dist/run/drain.d.ts.map +0 -1
  1795. package/dist/run/drain.js +0 -238
  1796. package/dist/run/drain.js.map +0 -1
  1797. package/dist/run/evidence-query.d.ts +0 -41
  1798. package/dist/run/evidence-query.d.ts.map +0 -1
  1799. package/dist/run/evidence-query.js +0 -270
  1800. package/dist/run/evidence-query.js.map +0 -1
  1801. package/dist/run/evidence-recall.d.ts +0 -99
  1802. package/dist/run/evidence-recall.d.ts.map +0 -1
  1803. package/dist/run/evidence-recall.js +0 -633
  1804. package/dist/run/evidence-recall.js.map +0 -1
  1805. package/dist/run/index.d.ts +0 -19
  1806. package/dist/run/index.d.ts.map +0 -1
  1807. package/dist/run/index.js +0 -11
  1808. package/dist/run/index.js.map +0 -1
  1809. package/dist/run/json-claim-verifier.d.ts +0 -83
  1810. package/dist/run/json-claim-verifier.d.ts.map +0 -1
  1811. package/dist/run/json-claim-verifier.js +0 -200
  1812. package/dist/run/json-claim-verifier.js.map +0 -1
  1813. package/dist/run/memory-promoter.d.ts +0 -38
  1814. package/dist/run/memory-promoter.d.ts.map +0 -1
  1815. package/dist/run/memory-promoter.js +0 -109
  1816. package/dist/run/memory-promoter.js.map +0 -1
  1817. package/dist/run/memory-recall.d.ts +0 -25
  1818. package/dist/run/memory-recall.d.ts.map +0 -1
  1819. package/dist/run/memory-recall.js +0 -228
  1820. package/dist/run/memory-recall.js.map +0 -1
  1821. package/dist/run/preparation-context-error.d.ts.map +0 -1
  1822. package/dist/run/preparation-context-error.js.map +0 -1
  1823. package/dist/run/reporter.d.ts +0 -8
  1824. package/dist/run/reporter.d.ts.map +0 -1
  1825. package/dist/run/reporter.js +0 -420
  1826. package/dist/run/reporter.js.map +0 -1
  1827. package/dist/run/token-budget.d.ts +0 -116
  1828. package/dist/run/token-budget.d.ts.map +0 -1
  1829. package/dist/run/token-budget.js +0 -626
  1830. package/dist/run/token-budget.js.map +0 -1
  1831. package/dist/run/workspace-fingerprint.d.ts.map +0 -1
  1832. package/dist/run/workspace-fingerprint.js.map +0 -1
  1833. package/dist/run-query/index.d.ts +0 -90
  1834. package/dist/run-query/index.d.ts.map +0 -1
  1835. package/dist/run-query/index.js +0 -127
  1836. package/dist/run-query/index.js.map +0 -1
  1837. package/dist/runtime/query/finalize-run.d.ts +0 -55
  1838. package/dist/runtime/query/finalize-run.d.ts.map +0 -1
  1839. package/dist/runtime/query/finalize-run.js +0 -113
  1840. package/dist/runtime/query/finalize-run.js.map +0 -1
  1841. package/dist/runtime/query/prepare-run.d.ts +0 -94
  1842. package/dist/runtime/query/prepare-run.d.ts.map +0 -1
  1843. package/dist/runtime/query/prepare-run.js +0 -589
  1844. package/dist/runtime/query/prepare-run.js.map +0 -1
  1845. package/dist/runtime/query/release-run.d.ts +0 -56
  1846. package/dist/runtime/query/release-run.d.ts.map +0 -1
  1847. package/dist/runtime/query/release-run.js +0 -101
  1848. package/dist/runtime/query/release-run.js.map +0 -1
  1849. package/dist/runtime/query/replay/list.d.ts +0 -40
  1850. package/dist/runtime/query/replay/list.d.ts.map +0 -1
  1851. package/dist/runtime/query/replay/list.js +0 -38
  1852. package/dist/runtime/query/replay/list.js.map +0 -1
  1853. package/dist/runtime/query/replay/mutate.d.ts +0 -17
  1854. package/dist/runtime/query/replay/mutate.d.ts.map +0 -1
  1855. package/dist/runtime/query/replay/mutate.js +0 -69
  1856. package/dist/runtime/query/replay/mutate.js.map +0 -1
  1857. package/dist/runtime/query/replay/prepare.d.ts +0 -66
  1858. package/dist/runtime/query/replay/prepare.d.ts.map +0 -1
  1859. package/dist/runtime/query/replay/prepare.js +0 -81
  1860. package/dist/runtime/query/replay/prepare.js.map +0 -1
  1861. package/dist/runtime/query/resume-run.d.ts +0 -103
  1862. package/dist/runtime/query/resume-run.d.ts.map +0 -1
  1863. package/dist/runtime/query/resume-run.js +0 -105
  1864. package/dist/runtime/query/resume-run.js.map +0 -1
  1865. package/dist/runtime/query/run-state.d.ts +0 -57
  1866. package/dist/runtime/query/run-state.d.ts.map +0 -1
  1867. package/dist/runtime/query/run-state.js +0 -96
  1868. package/dist/runtime/query/run-state.js.map +0 -1
  1869. package/dist/session/workspace/path-builder.d.ts +0 -50
  1870. package/dist/session/workspace/path-builder.d.ts.map +0 -1
  1871. package/dist/session/workspace/path-builder.js +0 -51
  1872. package/dist/session/workspace/path-builder.js.map +0 -1
  1873. package/dist/session/workspace/shared-run.d.ts +0 -112
  1874. package/dist/session/workspace/shared-run.d.ts.map +0 -1
  1875. package/dist/session/workspace/shared-run.js +0 -290
  1876. package/dist/session/workspace/shared-run.js.map +0 -1
  1877. package/dist/store/evidence/compaction-archive.d.ts +0 -109
  1878. package/dist/store/evidence/compaction-archive.d.ts.map +0 -1
  1879. package/dist/store/evidence/compaction-archive.js +0 -125
  1880. package/dist/store/evidence/compaction-archive.js.map +0 -1
  1881. package/dist/store/evidence/linked.d.ts +0 -9
  1882. package/dist/store/evidence/linked.d.ts.map +0 -1
  1883. package/dist/store/evidence/linked.js +0 -314
  1884. package/dist/store/evidence/linked.js.map +0 -1
  1885. package/dist/store/evidence/record-chain.d.ts +0 -42
  1886. package/dist/store/evidence/record-chain.d.ts.map +0 -1
  1887. package/dist/store/evidence/record-chain.js +0 -111
  1888. package/dist/store/evidence/record-chain.js.map +0 -1
  1889. package/dist/store/run/checkpoint-disk.d.ts +0 -98
  1890. package/dist/store/run/checkpoint-disk.d.ts.map +0 -1
  1891. package/dist/store/run/checkpoint-disk.js +0 -190
  1892. package/dist/store/run/checkpoint-disk.js.map +0 -1
  1893. package/dist/store/run/checkpoint-memory.d.ts +0 -51
  1894. package/dist/store/run/checkpoint-memory.d.ts.map +0 -1
  1895. package/dist/store/run/checkpoint-memory.js +0 -178
  1896. package/dist/store/run/checkpoint-memory.js.map +0 -1
  1897. package/dist/store/run/claim-disk.d.ts +0 -130
  1898. package/dist/store/run/claim-disk.d.ts.map +0 -1
  1899. package/dist/store/run/claim-disk.js +0 -570
  1900. package/dist/store/run/claim-disk.js.map +0 -1
  1901. package/dist/store/run/conformance.d.ts +0 -159
  1902. package/dist/store/run/conformance.d.ts.map +0 -1
  1903. package/dist/store/run/conformance.js +0 -466
  1904. package/dist/store/run/conformance.js.map +0 -1
  1905. package/dist/store/run/disk.d.ts +0 -189
  1906. package/dist/store/run/disk.d.ts.map +0 -1
  1907. package/dist/store/run/disk.js +0 -804
  1908. package/dist/store/run/disk.js.map +0 -1
  1909. package/dist/store/run/listing.d.ts +0 -118
  1910. package/dist/store/run/listing.d.ts.map +0 -1
  1911. package/dist/store/run/listing.js +0 -333
  1912. package/dist/store/run/listing.js.map +0 -1
  1913. package/dist/store/run/memory.d.ts +0 -55
  1914. package/dist/store/run/memory.d.ts.map +0 -1
  1915. package/dist/store/run/memory.js +0 -176
  1916. package/dist/store/run/memory.js.map +0 -1
  1917. package/dist/store/run/token-budget-disk.d.ts +0 -37
  1918. package/dist/store/run/token-budget-disk.d.ts.map +0 -1
  1919. package/dist/store/run/token-budget-disk.js +0 -211
  1920. package/dist/store/run/token-budget-disk.js.map +0 -1
  1921. package/dist/store/run/tool-executions.d.ts +0 -13
  1922. package/dist/store/run/tool-executions.d.ts.map +0 -1
  1923. package/dist/store/run/tool-executions.js +0 -99
  1924. package/dist/store/run/tool-executions.js.map +0 -1
  1925. package/dist/store/session/sqlite.d.ts +0 -57
  1926. package/dist/store/session/sqlite.d.ts.map +0 -1
  1927. package/dist/store/session/sqlite.js +0 -430
  1928. package/dist/store/session/sqlite.js.map +0 -1
  1929. package/dist/types/run/answer-review.d.ts +0 -79
  1930. package/dist/types/run/answer-review.d.ts.map +0 -1
  1931. package/dist/types/run/answer-review.js.map +0 -1
  1932. package/dist/types/run/audit.d.ts +0 -150
  1933. package/dist/types/run/audit.d.ts.map +0 -1
  1934. package/dist/types/run/audit.js +0 -39
  1935. package/dist/types/run/audit.js.map +0 -1
  1936. package/dist/types/run/cancel-cause.d.ts +0 -49
  1937. package/dist/types/run/cancel-cause.d.ts.map +0 -1
  1938. package/dist/types/run/cancel-cause.js +0 -39
  1939. package/dist/types/run/cancel-cause.js.map +0 -1
  1940. package/dist/types/run/checkpoint-store.d.ts +0 -511
  1941. package/dist/types/run/checkpoint-store.d.ts.map +0 -1
  1942. package/dist/types/run/checkpoint-store.js +0 -12
  1943. package/dist/types/run/checkpoint-store.js.map +0 -1
  1944. package/dist/types/run/config.d.ts +0 -207
  1945. package/dist/types/run/config.d.ts.map +0 -1
  1946. package/dist/types/run/config.js.map +0 -1
  1947. package/dist/types/run/derive-status.d.ts +0 -29
  1948. package/dist/types/run/derive-status.d.ts.map +0 -1
  1949. package/dist/types/run/derive-status.js +0 -49
  1950. package/dist/types/run/derive-status.js.map +0 -1
  1951. package/dist/types/run/emergency.d.ts +0 -32
  1952. package/dist/types/run/emergency.d.ts.map +0 -1
  1953. package/dist/types/run/emergency.js +0 -6
  1954. package/dist/types/run/emergency.js.map +0 -1
  1955. package/dist/types/run/entity.d.ts +0 -151
  1956. package/dist/types/run/entity.d.ts.map +0 -1
  1957. package/dist/types/run/entity.js +0 -2
  1958. package/dist/types/run/entity.js.map +0 -1
  1959. package/dist/types/run/event-cursor.d.ts +0 -90
  1960. package/dist/types/run/event-cursor.d.ts.map +0 -1
  1961. package/dist/types/run/event-cursor.js +0 -47
  1962. package/dist/types/run/event-cursor.js.map +0 -1
  1963. package/dist/types/run/events.d.ts +0 -1064
  1964. package/dist/types/run/events.d.ts.map +0 -1
  1965. package/dist/types/run/events.js +0 -31
  1966. package/dist/types/run/events.js.map +0 -1
  1967. package/dist/types/run/index.d.ts +0 -24
  1968. package/dist/types/run/index.d.ts.map +0 -1
  1969. package/dist/types/run/index.js +0 -23
  1970. package/dist/types/run/index.js.map +0 -1
  1971. package/dist/types/run/lineage.d.ts +0 -15
  1972. package/dist/types/run/lineage.d.ts.map +0 -1
  1973. package/dist/types/run/lineage.js.map +0 -1
  1974. package/dist/types/run/memory-promotion.d.ts +0 -90
  1975. package/dist/types/run/memory-promotion.d.ts.map +0 -1
  1976. package/dist/types/run/memory-promotion.js +0 -38
  1977. package/dist/types/run/memory-promotion.js.map +0 -1
  1978. package/dist/types/run/metadata.d.ts +0 -47
  1979. package/dist/types/run/metadata.d.ts.map +0 -1
  1980. package/dist/types/run/metadata.js +0 -2
  1981. package/dist/types/run/metadata.js.map +0 -1
  1982. package/dist/types/run/prepare-step.d.ts +0 -260
  1983. package/dist/types/run/prepare-step.d.ts.map +0 -1
  1984. package/dist/types/run/prepare-step.js.map +0 -1
  1985. package/dist/types/run/replay.d.ts +0 -53
  1986. package/dist/types/run/replay.d.ts.map +0 -1
  1987. package/dist/types/run/replay.js +0 -15
  1988. package/dist/types/run/replay.js.map +0 -1
  1989. package/dist/types/run/schema-version.d.ts +0 -19
  1990. package/dist/types/run/schema-version.d.ts.map +0 -1
  1991. package/dist/types/run/schema-version.js +0 -18
  1992. package/dist/types/run/schema-version.js.map +0 -1
  1993. package/dist/types/run/state.d.ts +0 -109
  1994. package/dist/types/run/state.d.ts.map +0 -1
  1995. package/dist/types/run/state.js +0 -109
  1996. package/dist/types/run/state.js.map +0 -1
  1997. package/dist/types/run/status.d.ts +0 -26
  1998. package/dist/types/run/status.d.ts.map +0 -1
  1999. package/dist/types/run/status.js +0 -2
  2000. package/dist/types/run/status.js.map +0 -1
  2001. package/dist/types/run/step.d.ts +0 -198
  2002. package/dist/types/run/step.d.ts.map +0 -1
  2003. package/dist/types/run/step.js +0 -26
  2004. package/dist/types/run/step.js.map +0 -1
  2005. package/dist/types/run/stop-reason.d.ts +0 -67
  2006. package/dist/types/run/stop-reason.d.ts.map +0 -1
  2007. package/dist/types/run/stop-reason.js.map +0 -1
  2008. package/dist/types/run/store.d.ts +0 -300
  2009. package/dist/types/run/store.d.ts.map +0 -1
  2010. package/dist/types/run/store.js +0 -2
  2011. package/dist/types/run/store.js.map +0 -1
  2012. package/dist/types/run/subsession-events.d.ts +0 -64
  2013. package/dist/types/run/subsession-events.d.ts.map +0 -1
  2014. package/dist/types/run/subsession-events.js +0 -2
  2015. package/dist/types/run/subsession-events.js.map +0 -1
  2016. package/dist/types/run/token-budget-store.d.ts +0 -29
  2017. package/dist/types/run/token-budget-store.d.ts.map +0 -1
  2018. package/dist/types/run/token-budget-store.js +0 -25
  2019. package/dist/types/run/token-budget-store.js.map +0 -1
  2020. package/dist/types/workspace/shared-run.d.ts +0 -61
  2021. package/dist/types/workspace/shared-run.d.ts.map +0 -1
  2022. package/dist/types/workspace/shared-run.js +0 -2
  2023. package/dist/types/workspace/shared-run.js.map +0 -1
  2024. package/src/constants/emergency.ts +0 -3
  2025. package/src/contracts/run-status.ts +0 -43
  2026. package/src/eval/from-run.ts +0 -48
  2027. package/src/manager/run/emergency.ts +0 -148
  2028. package/src/manager/run/persistence.ts +0 -746
  2029. package/src/read-model/run-status.ts +0 -127
  2030. package/src/run/LimitChecker.ts +0 -99
  2031. package/src/run/command-gate.ts +0 -294
  2032. package/src/run/drain.ts +0 -403
  2033. package/src/run/evidence-query.ts +0 -333
  2034. package/src/run/evidence-recall.ts +0 -854
  2035. package/src/run/index.ts +0 -42
  2036. package/src/run/json-claim-verifier.ts +0 -298
  2037. package/src/run/memory-promoter.ts +0 -147
  2038. package/src/run/memory-recall.ts +0 -254
  2039. package/src/run/reporter.ts +0 -469
  2040. package/src/run/token-budget.ts +0 -733
  2041. package/src/run-query/index.ts +0 -177
  2042. package/src/runtime/query/finalize-run.ts +0 -192
  2043. package/src/runtime/query/prepare-run.ts +0 -718
  2044. package/src/runtime/query/release-run.ts +0 -168
  2045. package/src/runtime/query/replay/list.ts +0 -66
  2046. package/src/runtime/query/replay/mutate.ts +0 -82
  2047. package/src/runtime/query/replay/prepare.ts +0 -147
  2048. package/src/runtime/query/resume-run.ts +0 -202
  2049. package/src/runtime/query/run-state.ts +0 -138
  2050. package/src/session/workspace/path-builder.ts +0 -72
  2051. package/src/session/workspace/shared-run.ts +0 -354
  2052. package/src/store/evidence/compaction-archive.ts +0 -139
  2053. package/src/store/evidence/linked.ts +0 -365
  2054. package/src/store/evidence/record-chain.ts +0 -108
  2055. package/src/store/run/checkpoint-disk.ts +0 -264
  2056. package/src/store/run/checkpoint-memory.ts +0 -216
  2057. package/src/store/run/claim-disk.ts +0 -638
  2058. package/src/store/run/conformance.ts +0 -728
  2059. package/src/store/run/disk.ts +0 -911
  2060. package/src/store/run/listing.ts +0 -422
  2061. package/src/store/run/memory.ts +0 -204
  2062. package/src/store/run/token-budget-disk.ts +0 -250
  2063. package/src/store/run/tool-executions.ts +0 -112
  2064. package/src/store/session/sqlite.ts +0 -584
  2065. package/src/types/run/answer-review.ts +0 -84
  2066. package/src/types/run/audit.ts +0 -164
  2067. package/src/types/run/cancel-cause.ts +0 -60
  2068. package/src/types/run/checkpoint-store.ts +0 -545
  2069. package/src/types/run/config.ts +0 -221
  2070. package/src/types/run/derive-status.ts +0 -62
  2071. package/src/types/run/emergency.ts +0 -28
  2072. package/src/types/run/entity.ts +0 -161
  2073. package/src/types/run/event-cursor.ts +0 -118
  2074. package/src/types/run/events.ts +0 -1146
  2075. package/src/types/run/index.ts +0 -32
  2076. package/src/types/run/lineage.ts +0 -15
  2077. package/src/types/run/memory-promotion.ts +0 -112
  2078. package/src/types/run/metadata.ts +0 -51
  2079. package/src/types/run/prepare-step.ts +0 -281
  2080. package/src/types/run/replay.ts +0 -61
  2081. package/src/types/run/schema-version.ts +0 -19
  2082. package/src/types/run/state.ts +0 -206
  2083. package/src/types/run/status.ts +0 -33
  2084. package/src/types/run/step.ts +0 -217
  2085. package/src/types/run/stop-reason.ts +0 -83
  2086. package/src/types/run/store.ts +0 -325
  2087. package/src/types/run/subsession-events.ts +0 -71
  2088. package/src/types/run/token-budget-store.ts +0 -54
  2089. package/src/types/workspace/shared-run.ts +0 -65
  2090. /package/dist/{run → turn}/preparation-context-error.d.ts +0 -0
  2091. /package/dist/{run → turn}/preparation-context-error.js +0 -0
  2092. /package/dist/{run → turn}/workspace-fingerprint.d.ts +0 -0
  2093. /package/dist/{run → turn}/workspace-fingerprint.js +0 -0
  2094. /package/dist/types/{run → session}/answer-review.js +0 -0
  2095. /package/dist/types/{run → session}/config.js +0 -0
  2096. /package/dist/types/{run → session}/lineage.js +0 -0
  2097. /package/dist/types/{run → session}/prepare-step.js +0 -0
  2098. /package/dist/types/{run → session}/stop-reason.js +0 -0
  2099. /package/src/{run → turn}/preparation-context-error.ts +0 -0
  2100. /package/src/{run → turn}/workspace-fingerprint.ts +0 -0
@@ -0,0 +1,779 @@
1
+ import { drainQueuedMessages } from '../../agents/handle.js';
2
+ import { repairToolMessageHistory, toolHistoryRepairChanged, } from '../../compaction/dangling.js';
3
+ import { readFoldedHistory } from '../../manager/session/turn-recorder.js';
4
+ import { resolveModelPricing } from '../../pricing/index.js';
5
+ import { isCallerAbortError } from '../../provider/errors.js';
6
+ import { withProviderFallback, } from '../../provider/fallback.js';
7
+ import { resolveStreamIdleTimeoutMs, withStreamIdleTimeout } from '../../provider/idle-timeout.js';
8
+ import { withProviderRetry } from '../../provider/retry.js';
9
+ import { withTokenBudget } from '../../provider/token-budget.js';
10
+ import { resolveAttachments } from '../../store/attachment/index.js';
11
+ import { NAMZU } from '../../telemetry/attributes.js';
12
+ import { NamzuError } from '../../types/errors/index.js';
13
+ import { autoApproveHandler } from '../../types/hitl/index.js';
14
+ import { cancelCauseOf } from '../../types/session/cancel-cause.js';
15
+ import { TurnInProgressError } from '../../types/session/turn.js';
16
+ import { toErrorMessage } from '../../utils/error.js';
17
+ import { generateCheckpointId, generateTurnId } from '../../utils/id.js';
18
+ import { errorAttributes } from '../../utils/log/exception.js';
19
+ import { AUTO_APPROVE_POLICY_NAME, createSessionApprovalPolicy } from './approval-policy.js';
20
+ import { TurnContextFactory } from './context.js';
21
+ import { EventTranslator } from './events.js';
22
+ import { isCompactionMessage } from './iteration/phases/compaction.js';
23
+ import { isWorkingMemoryMessage } from './iteration/phases/working-memory.js';
24
+ import { awaitProjectInstructionCallback, collapseProjectInstructionSnapshots, replaceProjectInstructionSnapshot, } from './project-instructions.js';
25
+ import { resolveMaxRequestRichContentBytes } from './request-rich-content.js';
26
+ import { resolveSandboxTeardownTimeoutMs } from './sandbox-lifecycle.js';
27
+ import { resolveSessionStorage } from './session-storage.js';
28
+ import { resolveQueryBudget } from './token-budget.js';
29
+ import { assertMaxToolCalls } from './tool-call-budget.js';
30
+ export const selectedResumeStates = new WeakMap();
31
+ /**
32
+ * Refuse to price a turn whose tokens two differently-priced members may produce.
33
+ *
34
+ * `TurnRecorder` holds ONE {@link ModelPricing} table and applies it to every
35
+ * accumulation regardless of which model produced the tokens. Across a swap that
36
+ * makes `costInfo.totalCost` wrong by an unbounded margin, and silently — the
37
+ * number keeps the shape of an answer. `CostInfo` cannot express the truth
38
+ * either: it carries `inputCostPer1M` / `outputCostPer1M`, and there is no
39
+ * honest value for those once a total spans two rate cards.
40
+ *
41
+ * So the total is refused rather than blended. Naming what that costs is part
42
+ * of the refusal, because the caller loses `costLimitUsd` with it: the guard
43
+ * enforces that limit from this same accumulated total, and a limit enforced
44
+ * with the wrong rate card stops a turn early or late by the same unbounded
45
+ * margin. A budget that is quietly wrong is worse than a budget that is
46
+ * declined.
47
+ *
48
+ * Reachable, not decorative: a host that passes `pricing` and declares a chain
49
+ * hits it on the first call. It costs `@namzu/cli` nothing, which passes no
50
+ * pricing at all — its `/cost` already reports that the provider gave no price.
51
+ *
52
+ * The way out is per-member pricing, which needs a `CostInfo` that can sum over
53
+ * heterogeneous rates. That is a public-type change and it is not this one.
54
+ */
55
+ function assertCostIsAttributable(chain, pricing) {
56
+ if (pricing === undefined || chain.length < 2)
57
+ return;
58
+ throw new NamzuError({
59
+ code: 'invalid_config',
60
+ message: `A provider chain of ${chain.length} members was declared together with a single pricing table. ` +
61
+ 'One table cannot price two members, so the turn would report a total that is wrong by an unbounded ' +
62
+ 'margin — and `turnConfig.costLimitUsd` would be enforced against that same wrong total. ' +
63
+ 'Either drop `pricing` (usage is still reported per model in the turn) or declare one member.',
64
+ details: { chainLength: chain.length },
65
+ });
66
+ }
67
+ /**
68
+ * Refuse a budget that cannot be measured.
69
+ *
70
+ * `turnConfig.costLimitUsd` is enforced against `costInfo.totalCost`, and that
71
+ * total only moves for tokens something has a rate for. A model no rate card
72
+ * covers therefore produced a limit that could never trip — a host that set a
73
+ * cost cap had no cost cap, and nothing said so. That was every turn before the
74
+ * price catalogue existed, which is how it went unnoticed.
75
+ *
76
+ * Refusing at the front is the cheap half of the answer: it costs the caller
77
+ * nothing, fires before any spend, and names both ways out. The other half is
78
+ * the `cost_unmeasurable` stop, for the models this cannot see — a step naming
79
+ * its own, or a chain member declaring one.
80
+ *
81
+ * This is the same shape `advisory/budget.ts` already applies to
82
+ * `AdvisoryBudget.maxCostPerTurn`, one layer down, and for the same reason. The
83
+ * run path simply never had it.
84
+ */
85
+ function assertBudgetIsMeasurable(params) {
86
+ const limit = params.turnConfig.costLimitUsd;
87
+ if (limit === undefined || limit <= 0)
88
+ return;
89
+ // A host-supplied table prices whatever it is pointed at, so a caller who
90
+ // brought one has answered the question themselves.
91
+ if (params.pricing !== undefined)
92
+ return;
93
+ const model = params.turnConfig.model;
94
+ if (resolveModelPricing(params.provider.id, model) !== undefined)
95
+ return;
96
+ throw new NamzuError({
97
+ code: 'invalid_config',
98
+ message: `turnConfig.costLimitUsd is set to ${limit}, but no rate is known for model "${model}" on ` +
99
+ `provider "${params.provider.id}". The limit is enforced against the turn's accumulated ` +
100
+ 'cost, and tokens with no rate never reach that total — so the budget would read as ' +
101
+ 'satisfied for the whole turn and stop nothing. Either pass `pricing` to declare the rate ' +
102
+ 'yourself, add the model to packages/sdk/src/pricing/rates.source.json, or drop ' +
103
+ '`costLimitUsd` and bound the turn with `tokenBudget`, which is measurable here.',
104
+ details: { model, providerId: params.provider.id, costLimitUsd: limit },
105
+ });
106
+ }
107
+ /**
108
+ * Ask the driver what this model's window is, and never let the answer
109
+ * cost the turn.
110
+ *
111
+ * Three outcomes collapse to two here on purpose. No member and a resolved
112
+ * `undefined` both mean "no answer" — the distinction matters to a driver
113
+ * author, not to a caller about to fall through to the table. A rejection
114
+ * is the third, and it is logged rather than propagated: a turn that would
115
+ * have worked on the table must not fail because a listing endpoint was
116
+ * down.
117
+ */
118
+ export async function resolveProviderContextWindow(provider, model, signal, timeoutMs, log) {
119
+ if (!provider.resolveContextWindow || !model)
120
+ return undefined;
121
+ if (signal?.aborted)
122
+ return undefined;
123
+ // The resolver is an optional optimisation that runs before TurnContext
124
+ // owns its child controller. Give it a private deadline signal and fuse
125
+ // caller cancellation into that transport in the safe direction: neither
126
+ // outcome aborts the caller's controller. Passing a signal is necessary
127
+ // but not sufficient, because a third-party driver can accept it and still
128
+ // leave its promise pending; the race below makes fallback independent of
129
+ // driver cooperation. Promise.race keeps the losing provider promise
130
+ // observed, so a later rejection cannot become unhandled.
131
+ const deadline = new AbortController();
132
+ const resolverSignal = signal ? AbortSignal.any([signal, deadline.signal]) : deadline.signal;
133
+ const interrupted = Symbol('provider-context-window-interrupted');
134
+ let onAbort;
135
+ const interruption = new Promise((resolve) => {
136
+ onAbort = () => resolve(interrupted);
137
+ resolverSignal.addEventListener('abort', onAbort, { once: true });
138
+ });
139
+ // Direct QueryParams callers can supply a large turn deadline. The clamp
140
+ // avoids Node's >2^31-1 one-millisecond timer coercion during metadata lookup.
141
+ // Metadata discovery remains optional and bounded even without a turn deadline.
142
+ const deadlineMs = timeoutMs === 0 ? 5_000 : Math.min(Math.max(0, timeoutMs), 2_147_483_647);
143
+ const timer = setTimeout(() => {
144
+ deadline.abort(new Error(`Provider context-window lookup exceeded ${deadlineMs}ms`));
145
+ }, deadlineMs);
146
+ try {
147
+ const resolution = provider.resolveContextWindow(model, resolverSignal);
148
+ const reported = await Promise.race([resolution, interruption]);
149
+ if (reported === interrupted) {
150
+ if (deadline.signal.aborted) {
151
+ log.debug('Provider context-window lookup timed out; using the table', {
152
+ 'namzu.model.id': model,
153
+ 'namzu.runtime.timeout_ms': deadlineMs,
154
+ });
155
+ }
156
+ return undefined;
157
+ }
158
+ return typeof reported === 'number' && reported > 0 ? reported : undefined;
159
+ }
160
+ catch (err) {
161
+ log.debug('Provider could not report a context window; using the table', {
162
+ 'namzu.model.id': model,
163
+ 'namzu.error.message': toErrorMessage(err),
164
+ });
165
+ return undefined;
166
+ }
167
+ finally {
168
+ clearTimeout(timer);
169
+ if (onAbort)
170
+ resolverSignal.removeEventListener('abort', onAbort);
171
+ }
172
+ }
173
+ /**
174
+ * Project historical system messages exactly as a new turn will persist them.
175
+ *
176
+ * Arbitrary historical prompt floors are rebuilt for this turn and therefore
177
+ * never reach its provider-bound conversation. Repair must happen AFTER that
178
+ * removal: treating a soon-to-be-dropped system message as a tool-result
179
+ * boundary can replace an exact real result with an invented unknown outcome.
180
+ * The two state-bearing system forms survive; fresh inherited compaction is
181
+ * pinned until this turn can prove it reconstructed equivalent state.
182
+ */
183
+ export function projectStateBearingHistory(messages, options) {
184
+ const projected = [];
185
+ for (const message of messages) {
186
+ if (message.role !== 'system') {
187
+ projected.push(message);
188
+ continue;
189
+ }
190
+ if (isCompactionMessage(message.content)) {
191
+ projected.push(options.pinCompaction ? { ...message, retain: true } : message);
192
+ }
193
+ else if (isWorkingMemoryMessage(message.content)) {
194
+ projected.push(message);
195
+ }
196
+ }
197
+ return collapseProjectInstructionSnapshots(projected);
198
+ }
199
+ export async function prepareTurn(params) {
200
+ assertMaxToolCalls(params.maxToolCalls);
201
+ // Required types do not protect JavaScript callers. Reject missing scope
202
+ // before opening a budget or persisting a turn without its owning identity.
203
+ const missingFields = ['sessionId', 'topicId', 'projectId', 'tenantId'].filter((field) => !params[field]);
204
+ if (missingFields.length > 0) {
205
+ throw new NamzuError({
206
+ code: 'invalid_config',
207
+ message: `query requires sessionId, topicId, projectId, and tenantId; missing: ${missingFields.join(', ')}.`,
208
+ details: { missingFields },
209
+ });
210
+ }
211
+ const selectedResumeState = selectedResumeStates.get(params);
212
+ selectedResumeStates.delete(params);
213
+ // Resolved at the DOOR, before a turn id exists or a logger is built.
214
+ // A caller who set both spellings of a renamed field has a config bug,
215
+ // and refusing it here costs them nothing; refusing it at the read site
216
+ // deep in the loop turns the same bug into a mid-run failure, after a
217
+ // provider call has been paid for and a partial transcript written.
218
+ const promptCache = params.promptCache;
219
+ const taskScheduler = params.taskScheduler;
220
+ const streamIdleTimeoutMs = resolveStreamIdleTimeoutMs(params.turnConfig.streamIdleTimeoutMs);
221
+ const maxRequestRichContentBytes = resolveMaxRequestRichContentBytes(params.turnConfig.maxRequestRichContentBytes);
222
+ const sandboxTeardownTimeoutMs = resolveSandboxTeardownTimeoutMs(params.sandboxTeardownTimeoutMs);
223
+ // Persist the EFFECTIVE value, not only an override. A turn replayed after a
224
+ // later release must be able to explain which liveness policy settled it;
225
+ // an absent field whose meaning follows the currently-installed default
226
+ // would rewrite that evidence at read time.
227
+ const turnConfig = {
228
+ ...params.turnConfig,
229
+ streamIdleTimeoutMs,
230
+ maxRequestRichContentBytes,
231
+ };
232
+ // The turn's one correlated logger, built before anything below needs
233
+ // one — the migration check, the retry/fallback wrappers and `ctx`
234
+ // itself all read this SAME object, so a retry warning and the turn
235
+ // record it retried for carry the identical `namzu.turn.id` instead of
236
+ // three separate `getRootLogger()` reads that happened to agree by
237
+ // accident. `turnId` is resolved here, once, rather than left to
238
+ // `build`'s own `config.turnId ?? generateTurnId()` fallback —
239
+ // generating it twice would silently hand the log and the turn two
240
+ // different ids.
241
+ const turnId = params.turnId ?? generateTurnId();
242
+ if (params.resumeFromCheckpoint && !params.turnId) {
243
+ throw new NamzuError({
244
+ code: 'invalid_config',
245
+ message: 'resumeFromCheckpoint continues an existing turn and needs its turnId; a new turn cannot start from a checkpoint (fork a new session instead).',
246
+ details: { resumeFromCheckpoint: params.resumeFromCheckpoint },
247
+ });
248
+ }
249
+ const storage = await resolveSessionStorage({
250
+ sessionId: params.sessionId,
251
+ ...(params.parentSessionId ? { parentSessionId: params.parentSessionId } : {}),
252
+ ...(params.sessionLog ? { sessionLog: params.sessionLog } : {}),
253
+ ...(params.paths ? { paths: params.paths } : {}),
254
+ ...(params.checkpointStore ? { checkpointStore: params.checkpointStore } : {}),
255
+ ...(params.tokenBudgetStore ? { tokenBudgetStore: params.tokenBudgetStore } : {}),
256
+ ...(params.workingDirectory ? { workingDirectory: params.workingDirectory } : {}),
257
+ });
258
+ const savedBudget = await savedBudgetReference(params, turnId, storage, selectedResumeState);
259
+ const budget = await resolveQueryBudget(params, turnId, storage.tokenBudget, savedBudget);
260
+ const log = TurnContextFactory.buildLogger({
261
+ agentName: params.agentName,
262
+ turnConfig,
263
+ turnId,
264
+ ...(params.parentSessionId ? { parentSessionId: params.parentSessionId } : {}),
265
+ sessionId: params.sessionId,
266
+ topicId: params.topicId,
267
+ projectId: params.projectId,
268
+ tenantId: params.tenantId,
269
+ });
270
+ // Every model call in the turn — the loop's turns, the forced-final
271
+ // summary, advisory and compaction side calls — goes through this one
272
+ // wrapped provider, so the retry policy cannot be bypassed by a code
273
+ // path that happens to hold the raw driver.
274
+ // The logger is passed on purpose: `withProviderRetry` guards every one
275
+ // of its warns behind `options.log`, and this is its only production
276
+ // call site — so without it the "failed, retrying" and "failed, giving
277
+ // up" lines were dead code and a backoff left no trace anywhere.
278
+ //
279
+ // With a chain declared, the same sentence holds two levels out. The idle
280
+ // watchdog is applied to each raw member, retry wraps that, and fallback
281
+ // wraps the members: `fallback(retry(idle(m0)), retry(idle(m1)), …)`. The
282
+ // idle layer cannot sit outside retry, because its timer would then count a
283
+ // legitimate backoff as provider silence. This order is not a
284
+ // preference. Assembled the other way round — which is what a host gets if
285
+ // it wraps its own chain and hands the result in, because this function
286
+ // would then wrap THAT in retry — an exhausted chain gets restarted from
287
+ // the head by the outer loop and a throttle on the last member is counted
288
+ // by two budgets. Building it here is what makes the order unspellable
289
+ // wrong.
290
+ const chain = [
291
+ { provider: params.provider },
292
+ ...(params.fallbackProviders ?? []),
293
+ ];
294
+ assertCostIsAttributable(chain, params.pricing);
295
+ assertBudgetIsMeasurable(params);
296
+ const withRecovery = (provider) => {
297
+ const withIdleBound = withStreamIdleTimeout(provider, {
298
+ idleTimeoutMs: streamIdleTimeoutMs,
299
+ log,
300
+ });
301
+ const metered = withTokenBudget(withIdleBound, budget);
302
+ return params.retry === false
303
+ ? metered
304
+ : withProviderRetry(metered, {
305
+ config: params.retry,
306
+ log,
307
+ canRetry: () => budget.remaining > 0,
308
+ });
309
+ };
310
+ // Who is serving right now, for the turn RECORD rather than for the request.
311
+ //
312
+ // It starts at the head and moves only when the chain does, which is the
313
+ // whole of the truth because the cursor never rewinds. The turn cannot read
314
+ // this off `resilientProvider`: that wrapper reports the head's `id` on
315
+ // purpose, so asking it produces the declaration back — the defect this
316
+ // record exists to fix.
317
+ const serving = {
318
+ current: { index: 0, providerId: params.provider.id },
319
+ };
320
+ const resilientProvider = withProviderFallback(chain.map((member) => ({
321
+ ...member,
322
+ provider: withRecovery(member.provider),
323
+ })), {
324
+ log,
325
+ canFallback: () => budget.remaining > 0,
326
+ onSwap: (to) => {
327
+ serving.current = to;
328
+ // `ctx` is declared below and is initialized before anything can
329
+ // call the provider: this fires from inside a `chatStream`, and
330
+ // the first one is issued by the loop that `ctx` is built for.
331
+ ctx.recorder.setServingProvider(to.providerId);
332
+ },
333
+ });
334
+ // Asked ONCE, here, before the loop exists. Both readers are synchronous
335
+ // and hot, so this can never move inside the iteration — and a driver
336
+ // that rejects, or one that hangs until the turn is cancelled, must not
337
+ // take down a run the table could have served perfectly well. That is
338
+ // why the failure path is a swallow with a log rather than a throw: the
339
+ // window is an optimisation over a working default, not a prerequisite.
340
+ const providerContextWindow = await resolveProviderContextWindow(resilientProvider, turnConfig.model, params.signal, turnConfig.timeoutMs, log);
341
+ const modelContextWindows = new Map();
342
+ if (turnConfig.model)
343
+ modelContextWindows.set(turnConfig.model, providerContextWindow);
344
+ // The mode this conversation was left in, when the turn config names none.
345
+ // Read once, before the loop exists, for the same reason the context
346
+ // window is: the executor's resolver is synchronous and hot.
347
+ //
348
+ // A store that throws is not a turn failure — the turn falls back to the
349
+ // config's answer, which is exactly what it did before this existed.
350
+ const topicState = params.topicStateStore
351
+ ? await params.topicStateStore
352
+ .getState(params.topicId, params.tenantId)
353
+ .catch((err) => {
354
+ log.debug('Could not read the topic state; using the turn config', {
355
+ 'namzu.topic.id': params.topicId,
356
+ 'namzu.error.message': toErrorMessage(err),
357
+ });
358
+ return null;
359
+ })
360
+ : null;
361
+ // Whatever a host left for "the next turn", taken and cleared in one
362
+ // compare-and-set write. Prepended to the messages this turn starts from,
363
+ // so it is in the FIRST request rather than arriving a turn late.
364
+ //
365
+ // Cleared as it is read: a queue read and cleared separately re-delivers
366
+ // on a crash between the two, and "start with this" arriving twice is a
367
+ // different instruction from the one that was left.
368
+ const queuedForThisRun = params.topicStateStore
369
+ ? await drainQueuedMessages(params.topicStateStore, params.topicId, params.tenantId).catch((err) => {
370
+ log.debug('Could not drain the topic queue; starting without it', {
371
+ 'namzu.topic.id': params.topicId,
372
+ 'namzu.error.message': toErrorMessage(err),
373
+ });
374
+ return [];
375
+ })
376
+ : [];
377
+ // One effective list, used everywhere the turn is seeded from. Three
378
+ // branches below push from it, and computing it at each would be three
379
+ // places to forget the queue.
380
+ //
381
+ // Stored attachments are resolved HERE, once, before the messages reach
382
+ // the turn record. Resolving later — at the provider boundary — would put
383
+ // refs in the durable transcript and in every checkpoint, and a turn
384
+ // resumed against a store that had since forgotten a ref would fail
385
+ // replaying its own history rather than at the moment somebody asked for
386
+ // the bytes. Every failure refuses: a message that silently lost its
387
+ // image is a model answering about a picture it never saw.
388
+ const ctx = TurnContextFactory.build({
389
+ budget,
390
+ ...(topicState ? { topicPermissionMode: topicState.permissionMode } : {}),
391
+ ...(params.permissionModeRef ? { permissionModeRef: params.permissionModeRef } : {}),
392
+ agentId: params.agentId,
393
+ agentName: params.agentName,
394
+ turnConfig,
395
+ provider: resilientProvider,
396
+ workingDirectory: params.workingDirectory,
397
+ pricing: params.pricing,
398
+ enableActivityTracking: params.enableActivityTracking,
399
+ signal: params.signal,
400
+ sessionId: params.sessionId,
401
+ topicId: params.topicId,
402
+ projectId: params.projectId,
403
+ tenantId: params.tenantId,
404
+ storage,
405
+ turnId,
406
+ ...(params.parentSessionId ? { parentSessionId: params.parentSessionId } : {}),
407
+ ...(params.parentTurnId ? { parentTurnId: params.parentTurnId } : {}),
408
+ ...(params.depth !== undefined ? { depth: params.depth } : {}),
409
+ log,
410
+ });
411
+ // The writer lease, and `session_started` on an empty log. Everything
412
+ // from here to the end of the turn holds the lease, so a failure before
413
+ // the turn body owns it releases it.
414
+ await ctx.recorder.open({
415
+ ...(params.lease ? { lease: params.lease } : {}),
416
+ session: {
417
+ cwd: ctx.cwd,
418
+ ...(params.origin ? { origin: params.origin } : {}),
419
+ ...(params.forkedFrom ? { forkedFrom: params.forkedFrom } : {}),
420
+ },
421
+ });
422
+ try {
423
+ await assertTurnMayStart(params, turnId, storage, ctx);
424
+ // The session log is the conversation's source of truth. A new turn starts
425
+ // from its folded history, and `params.messages` is what this turn adds.
426
+ // A host that still passes the whole conversation is tolerated: the part
427
+ // of it the log already holds is not added a second time.
428
+ const history = params.resumeFromCheckpoint
429
+ ? []
430
+ : await readFoldedHistory(storage.log);
431
+ const input = withoutRecordedPrefix(params.messages, history);
432
+ const seeded = queuedForThisRun.length > 0 ? [...queuedForThisRun, ...input] : input;
433
+ let resolvedInitialMessages;
434
+ let attachmentResolutionCancelled = false;
435
+ try {
436
+ resolvedInitialMessages = [
437
+ ...(await resolveAttachments(seeded, params.attachmentStore, {
438
+ signal: params.signal,
439
+ timeoutMs: params.attachmentResolveTimeoutMs,
440
+ })),
441
+ ];
442
+ params.signal?.throwIfAborted();
443
+ }
444
+ catch (error) {
445
+ // Attachment materialization precedes TurnContext construction so stored
446
+ // bytes never enter a live turn's checkpoints. Cancellation still belongs
447
+ // to that turn: preserve the exact input refs, build the context below, and
448
+ // let its normal terminal path classify/persist a cancelled turn. Every
449
+ // other store failure remains a pre-turn refusal.
450
+ if (!params.signal?.aborted || error !== params.signal.reason)
451
+ throw error;
452
+ resolvedInitialMessages = [...seeded];
453
+ attachmentResolutionCancelled = true;
454
+ }
455
+ if (!attachmentResolutionCancelled &&
456
+ params.projectInstructionContext?.prepareInitialSnapshot) {
457
+ const preparationSignal = params.signal ?? new AbortController().signal;
458
+ let snapshot;
459
+ try {
460
+ const prepared = await awaitProjectInstructionCallback(preparationSignal, () => params.projectInstructionContext?.prepareInitialSnapshot?.({
461
+ messages: [...resolvedInitialMessages],
462
+ signal: preparationSignal,
463
+ }));
464
+ // The callback promise can settle, remove its listener, and queue this
465
+ // continuation immediately before a queued abort. Publication is a
466
+ // separate authority boundary, so fence it too.
467
+ preparationSignal.throwIfAborted();
468
+ snapshot = prepared;
469
+ }
470
+ catch (error) {
471
+ // This callback runs before TurnContext owns its child controller. A
472
+ // caller cancellation here still belongs to the turn: publish no late
473
+ // snapshot and let the context below settle the normal cancelled turn.
474
+ // Compare the exact reason: a callback failure that won first must not
475
+ // be erased merely because cancellation arrived before this catch ran.
476
+ if (!preparationSignal.aborted || error !== preparationSignal.reason)
477
+ throw error;
478
+ }
479
+ if (snapshot !== undefined) {
480
+ resolvedInitialMessages = replaceProjectInstructionSnapshot(resolvedInitialMessages, snapshot, 'before-latest-user');
481
+ }
482
+ }
483
+ const pendingHistoryRepairs = [];
484
+ const historyIds = new Map();
485
+ const projectedHistory = params.continuationMode
486
+ ? history.map((entry) => {
487
+ if (entry.messageId)
488
+ historyIds.set(entry.message, entry.messageId);
489
+ return entry.message;
490
+ })
491
+ : projectRecordedHistory(history, historyIds);
492
+ const projectedInitialMessages = collapseProjectInstructionSnapshots([
493
+ ...projectedHistory,
494
+ ...(params.resumeFromCheckpoint || params.continuationMode
495
+ ? resolvedInitialMessages
496
+ : projectStateBearingHistory(resolvedInitialMessages, {
497
+ pinCompaction: true,
498
+ })),
499
+ ]);
500
+ const initialRepair = params.resumeFromCheckpoint
501
+ ? { messages: projectedInitialMessages, report: undefined }
502
+ : repairToolMessageHistory(projectedInitialMessages);
503
+ const initialMessages = initialRepair.messages;
504
+ if (initialRepair.report && toolHistoryRepairChanged(initialRepair.report)) {
505
+ pendingHistoryRepairs.push({
506
+ source: 'fresh-history',
507
+ report: initialRepair.report,
508
+ });
509
+ log.warn('Repaired provider-invalid tool history before starting the turn', {
510
+ [NAMZU.TURN_ID]: turnId,
511
+ 'namzu.history.source': 'fresh-history',
512
+ 'namzu.history.duplicate_tool_results_removed': initialRepair.report.duplicateToolResultsRemoved,
513
+ 'namzu.history.orphaned_tool_results_removed': initialRepair.report.orphanedToolResultsRemoved,
514
+ 'namzu.history.synthetic_tool_results_inserted': initialRepair.report.syntheticToolResultsInserted,
515
+ });
516
+ }
517
+ // Built here because the plan-approval closure below captures it, and
518
+ // its `emit` resolves `eventTranslator` at CALL time — the translator is
519
+ // a `const` some lines further down.
520
+ //
521
+ // The HANDOUT is therefore deliberately NOT here. A host given the box
522
+ // at this point can call `set` synchronously, `emit` reaches
523
+ // `eventTranslator` inside its temporal dead zone, and the turn dies
524
+ // before it starts. That is not hypothetical: it is what the first
525
+ // version of this did, and the test that hands out the box and
526
+ // immediately swaps the policy is the one that found it.
527
+ const approvalPolicy = createSessionApprovalPolicy({
528
+ turnId: ctx.turnId,
529
+ initial: {
530
+ // By identity against the default, not by presence. `resumeHandler`
531
+ // is REQUIRED on `QueryParams` — `drainQuery` substitutes
532
+ // `autoApproveHandler` before calling here — so "is it set" is
533
+ // always yes and would name every turn `host`, including the ones
534
+ // approving everything unattended. Identity is what actually
535
+ // separates the two.
536
+ name: params.approvalPolicyName ??
537
+ (params.resumeHandler === autoApproveHandler ? AUTO_APPROVE_POLICY_NAME : 'host'),
538
+ handler: params.resumeHandler,
539
+ },
540
+ emit: (event) => eventTranslator.emitEvent(event),
541
+ });
542
+ const planApprovalIds = new Map();
543
+ ctx.planManager.setApprovalHandler(async (request) => {
544
+ let checkpointId = planApprovalIds.get(request.planId);
545
+ if (!checkpointId) {
546
+ checkpointId = generateCheckpointId();
547
+ planApprovalIds.set(request.planId, checkpointId);
548
+ }
549
+ // `.current.handler`, never a captured `params.resumeHandler`. That
550
+ // capture is what made changing the policy mean ending the turn.
551
+ const decision = await approvalPolicy.current.handler({
552
+ type: 'plan_approval',
553
+ sessionId: ctx.sessionId,
554
+ turnId: ctx.turnId,
555
+ checkpointId,
556
+ plan: {
557
+ planId: request.planId,
558
+ title: request.title,
559
+ steps: request.steps.map((s, i) => ({
560
+ id: s.id,
561
+ description: s.description,
562
+ toolName: s.toolName,
563
+ agentId: s.agentId,
564
+ dependsOn: s.dependsOn,
565
+ order: s.order ?? i + 1,
566
+ })),
567
+ summary: request.summary,
568
+ },
569
+ });
570
+ if (decision.action === 'approve_plan') {
571
+ // Optional approve-with-edits channel: the host may attach
572
+ // feedback to an approval. `PlanApprovalResponse.feedback`
573
+ // already exists on the type; threading it through lets the
574
+ // coordinator's approve_plan tool surface the user's edits in
575
+ // the same tool_result that unblocks the park. Bare approvals
576
+ // stay byte-identical (`{ approved: true }`).
577
+ return decision.feedback
578
+ ? { approved: true, feedback: decision.feedback }
579
+ : { approved: true };
580
+ }
581
+ if (decision.action === 'reject_plan') {
582
+ return { approved: false, feedback: decision.feedback };
583
+ }
584
+ return { approved: false, feedback: `Action: ${decision.action}` };
585
+ });
586
+ const eventTranslator = new EventTranslator(ctx.recorder, undefined, ctx.log);
587
+ eventTranslator.wireActivityStore(ctx.activityStore);
588
+ eventTranslator.wirePlanManager(ctx.planManager);
589
+ let interruptHooksStarted = false;
590
+ const executeUserInterruptHooks = async (terminalError) => {
591
+ if (interruptHooksStarted ||
592
+ !params.pluginManager ||
593
+ !isCallerAbortError(terminalError, ctx.abortController.signal) ||
594
+ params.parentSessionId !== undefined ||
595
+ (params.depth ?? 0) !== 0 ||
596
+ cancelCauseOf(ctx.abortController.signal.reason) !== 'user') {
597
+ return;
598
+ }
599
+ interruptHooksStarted = true;
600
+ try {
601
+ // Deliberately omit the already-aborted run signal. The lifecycle
602
+ // manager still supplies each handler its own deadline signal, while
603
+ // `run_interrupt`'s observational fan-out prevents one result from
604
+ // suppressing the cleanup hooks that follow it.
605
+ await params.pluginManager.executeHooks('turn_interrupt', { sessionId: ctx.sessionId, turnId: ctx.turnId, cancelCause: 'user' }, eventTranslator.emitEvent);
606
+ }
607
+ catch (error) {
608
+ // Cancellation is the terminal authority. A hook event sink or an
609
+ // unexpected manager failure is reported, but cannot turn Stop into a
610
+ // failed turn or prevent the durable cancellation verdict.
611
+ ctx.log.error('Turn interrupt hooks did not settle cleanly', {
612
+ [NAMZU.TURN_ID]: ctx.turnId,
613
+ ...errorAttributes(error),
614
+ });
615
+ }
616
+ };
617
+ return {
618
+ turnConfig,
619
+ budget,
620
+ storage,
621
+ log,
622
+ ctx,
623
+ resilientProvider,
624
+ serving,
625
+ providerContextWindow,
626
+ modelContextWindows,
627
+ approvalPolicy,
628
+ eventTranslator,
629
+ executeUserInterruptHooks,
630
+ pendingHistoryRepairs,
631
+ initialMessages,
632
+ historyIds,
633
+ queuedForThisRun,
634
+ selectedResumeState,
635
+ attachmentResolutionCancelled,
636
+ streamIdleTimeoutMs,
637
+ sandboxTeardownTimeoutMs,
638
+ promptCache,
639
+ taskScheduler,
640
+ };
641
+ }
642
+ catch (error) {
643
+ await ctx.recorder.release();
644
+ throw error;
645
+ }
646
+ }
647
+ /**
648
+ * The ledger reference a resumed turn continues: the selected resume state's
649
+ * binding, or the one its checkpoint document carries.
650
+ */
651
+ async function savedBudgetReference(params, turnId, storage, selected) {
652
+ if (selected?.budgetBinding) {
653
+ return { binding: selected.budgetBinding, accountId: selected.budgetBinding.accountId };
654
+ }
655
+ // A selected state carries only a durable binding. An account held in
656
+ // memory is named by the checkpoint document alone, and a resume must
657
+ // still see it, so the host is asked for that authority rather than
658
+ // handed a fresh ledger.
659
+ if (!params.resumeFromCheckpoint)
660
+ return undefined;
661
+ const checkpoint = await storage.checkpoints.read({
662
+ tenantId: params.tenantId,
663
+ projectId: params.projectId,
664
+ sessionId: params.sessionId,
665
+ turnId,
666
+ }, params.resumeFromCheckpoint);
667
+ if (!checkpoint)
668
+ throw new Error('Cannot restore a token budget from a missing checkpoint.');
669
+ return checkpoint.budget
670
+ ? {
671
+ ...(checkpoint.budget.binding ? { binding: checkpoint.budget.binding } : {}),
672
+ accountId: checkpoint.budget.accountId,
673
+ }
674
+ : undefined;
675
+ }
676
+ /**
677
+ * The folded history a new turn starts from, projected the way a fresh turn
678
+ * treats historical system messages: the prompt floor is rebuilt for this
679
+ * turn, so only the two state-bearing system forms survive, and an inherited
680
+ * compaction summary is pinned. `ids` receives the record id of every
681
+ * message that survives.
682
+ */
683
+ function projectRecordedHistory(history, ids) {
684
+ const projected = [];
685
+ for (const { message, messageId } of history) {
686
+ let kept;
687
+ if (message.role !== 'system')
688
+ kept = message;
689
+ else if (isCompactionMessage(message.content))
690
+ kept = { ...message, retain: true };
691
+ else if (isWorkingMemoryMessage(message.content))
692
+ kept = message;
693
+ if (!kept)
694
+ continue;
695
+ if (messageId)
696
+ ids.set(kept, messageId);
697
+ projected.push(kept);
698
+ }
699
+ return projected;
700
+ }
701
+ /**
702
+ * `messages` without the leading run of messages the session log already
703
+ * holds, compared by value. A host that passes only the new input is
704
+ * unaffected; one that passes the whole conversation adds only its tail.
705
+ */
706
+ function withoutRecordedPrefix(messages, history) {
707
+ const recorded = history.filter((entry) => entry.message.role !== 'system');
708
+ let matched = 0;
709
+ let r = 0;
710
+ for (const message of messages) {
711
+ if (message.role === 'system') {
712
+ matched++;
713
+ continue;
714
+ }
715
+ const next = recorded[r];
716
+ if (!next || JSON.stringify(next.message) !== JSON.stringify(message))
717
+ break;
718
+ r++;
719
+ matched++;
720
+ }
721
+ if (r === 0)
722
+ return [...messages];
723
+ return messages.slice(matched);
724
+ }
725
+ /**
726
+ * A new turn named by the host must not reuse the id of a turn the session
727
+ * already holds: two `turn_started` records under one id would be one turn
728
+ * to every reader. Only checked when the host names the id; a generated one
729
+ * is new by construction.
730
+ */
731
+ async function assertTurnIdIsNew(params, turnId, storage) {
732
+ if (params.turnId === undefined)
733
+ return;
734
+ for await (const { record } of storage.log.read({ mode: 'tolerant' })) {
735
+ if (record.type === 'turn_started' && record.turnId === turnId) {
736
+ throw new NamzuError({
737
+ code: 'invalid_config',
738
+ message: `Turn ${turnId} already exists in session ${params.sessionId}. A new turn needs a new id; to continue that turn, pass resumeFromCheckpoint.`,
739
+ details: { sessionId: params.sessionId, turnId },
740
+ });
741
+ }
742
+ }
743
+ }
744
+ /**
745
+ * One active turn per session (spec §4.5). A new turn is refused while
746
+ * another is running, paused or interrupted — unless it is interrupted and
747
+ * the caller opted into closing it. A resume must name the active turn.
748
+ */
749
+ async function assertTurnMayStart(params, turnId, storage, ctx) {
750
+ const lease = ctx.recorder.lease;
751
+ const active = await storage.log.activeTurn(lease ? { lease } : {});
752
+ if (params.resumeFromCheckpoint) {
753
+ if (active?.turnId === turnId)
754
+ return;
755
+ if (active) {
756
+ throw new TurnInProgressError({
757
+ sessionId: params.sessionId,
758
+ activeTurnId: active.turnId,
759
+ state: active.state,
760
+ });
761
+ }
762
+ throw new NamzuError({
763
+ code: 'invalid_config',
764
+ message: `Turn ${turnId} is not the active turn of session ${params.sessionId}; a settled turn cannot be resumed.`,
765
+ details: { sessionId: params.sessionId, turnId },
766
+ });
767
+ }
768
+ if (!active)
769
+ return assertTurnIdIsNew(params, turnId, storage);
770
+ if (active.state === 'interrupted' && params.abandonInterrupted) {
771
+ return assertTurnIdIsNew(params, turnId, storage);
772
+ }
773
+ throw new TurnInProgressError({
774
+ sessionId: params.sessionId,
775
+ activeTurnId: active.turnId,
776
+ state: active.state,
777
+ });
778
+ }
779
+ //# sourceMappingURL=prepare-turn.js.map