stitchkit 0.92.0 → 0.94.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 (793) hide show
  1. package/CHANGELOG.md +191 -0
  2. package/README.md +5 -2
  3. package/dist/agent-runtime/children-control.d.ts +6 -0
  4. package/dist/agent-runtime/children-control.d.ts.map +1 -0
  5. package/dist/agent-runtime/children-spawn.d.ts +6 -0
  6. package/dist/agent-runtime/children-spawn.d.ts.map +1 -0
  7. package/dist/agent-runtime/children-state.d.ts +46 -0
  8. package/dist/agent-runtime/children-state.d.ts.map +1 -0
  9. package/dist/agent-runtime/children-usage.d.ts +8 -0
  10. package/dist/agent-runtime/children-usage.d.ts.map +1 -0
  11. package/dist/agent-runtime/children.d.ts +11 -14
  12. package/dist/agent-runtime/children.d.ts.map +1 -1
  13. package/dist/agent-runtime/coding-tool-contract.d.ts +2 -1
  14. package/dist/agent-runtime/coding-tool-contract.d.ts.map +1 -1
  15. package/dist/agent-runtime/deferred-tool-types.d.ts +2 -2
  16. package/dist/agent-runtime/deferred-tool-types.d.ts.map +1 -1
  17. package/dist/agent-runtime/events.d.ts +1 -1
  18. package/dist/agent-runtime/events.d.ts.map +1 -1
  19. package/dist/agent-runtime/managed-tools.d.ts +1 -1
  20. package/dist/agent-runtime/managed-tools.d.ts.map +1 -1
  21. package/dist/agent-runtime/observability.d.ts +1 -1
  22. package/dist/agent-runtime/observability.d.ts.map +1 -1
  23. package/dist/{agent-runtime-openrouter.d.ts → agent-runtime/openrouter.d.ts} +3 -3
  24. package/dist/agent-runtime/openrouter.d.ts.map +1 -0
  25. package/dist/agent-runtime/projections.d.ts +1 -1
  26. package/dist/agent-runtime/projections.d.ts.map +1 -1
  27. package/dist/agent-runtime/run-acquisition.d.ts +17 -0
  28. package/dist/agent-runtime/run-acquisition.d.ts.map +1 -0
  29. package/dist/agent-runtime/run-execution-state.d.ts +133 -0
  30. package/dist/agent-runtime/run-execution-state.d.ts.map +1 -0
  31. package/dist/agent-runtime/run-execution.d.ts +17 -33
  32. package/dist/agent-runtime/run-execution.d.ts.map +1 -1
  33. package/dist/agent-runtime/run-failure.d.ts +18 -0
  34. package/dist/agent-runtime/run-failure.d.ts.map +1 -0
  35. package/dist/agent-runtime/run-model-attempts.d.ts +6 -0
  36. package/dist/agent-runtime/run-model-attempts.d.ts.map +1 -0
  37. package/dist/agent-runtime/run-prompt-history.d.ts +58 -0
  38. package/dist/agent-runtime/run-prompt-history.d.ts.map +1 -0
  39. package/dist/agent-runtime/run-provider-ledger.d.ts +26 -0
  40. package/dist/agent-runtime/run-provider-ledger.d.ts.map +1 -0
  41. package/dist/agent-runtime/run-stream-parts.d.ts +17 -0
  42. package/dist/agent-runtime/run-stream-parts.d.ts.map +1 -0
  43. package/dist/agent-runtime/run-terminal.d.ts +11 -0
  44. package/dist/agent-runtime/run-terminal.d.ts.map +1 -0
  45. package/dist/agent-runtime/run-turn-preparation.d.ts +22 -0
  46. package/dist/agent-runtime/run-turn-preparation.d.ts.map +1 -0
  47. package/dist/agent-runtime/runtime-admission-gate.d.ts +29 -0
  48. package/dist/agent-runtime/runtime-admission-gate.d.ts.map +1 -0
  49. package/dist/agent-runtime/runtime-control.d.ts +9 -0
  50. package/dist/agent-runtime/runtime-control.d.ts.map +1 -0
  51. package/dist/agent-runtime/runtime-recovery.d.ts +10 -0
  52. package/dist/agent-runtime/runtime-recovery.d.ts.map +1 -0
  53. package/dist/agent-runtime/runtime-state.d.ts +36 -0
  54. package/dist/agent-runtime/runtime-state.d.ts.map +1 -0
  55. package/dist/agent-runtime/runtime-submit.d.ts +5 -0
  56. package/dist/agent-runtime/runtime-submit.d.ts.map +1 -0
  57. package/dist/agent-runtime/runtime.d.ts +9 -4
  58. package/dist/agent-runtime/runtime.d.ts.map +1 -1
  59. package/dist/{agent-runtime-sqlite-bun.d.ts → agent-runtime/sqlite-bun.d.ts} +5 -4
  60. package/dist/agent-runtime/sqlite-bun.d.ts.map +1 -0
  61. package/dist/agent-runtime/sqlite-events.d.ts +5 -0
  62. package/dist/agent-runtime/sqlite-events.d.ts.map +1 -0
  63. package/dist/agent-runtime/sqlite-history.d.ts +7 -0
  64. package/dist/agent-runtime/sqlite-history.d.ts.map +1 -0
  65. package/dist/agent-runtime/sqlite-ledger.d.ts +7 -0
  66. package/dist/agent-runtime/sqlite-ledger.d.ts.map +1 -0
  67. package/dist/{agent-runtime-sqlite-node.d.ts → agent-runtime/sqlite-node.d.ts} +5 -4
  68. package/dist/agent-runtime/sqlite-node.d.ts.map +1 -0
  69. package/dist/agent-runtime/sqlite-reads.d.ts +14 -0
  70. package/dist/agent-runtime/sqlite-reads.d.ts.map +1 -0
  71. package/dist/agent-runtime/sqlite-rows.d.ts +178 -0
  72. package/dist/agent-runtime/sqlite-rows.d.ts.map +1 -0
  73. package/dist/agent-runtime/sqlite-schema.d.ts +7 -0
  74. package/dist/agent-runtime/sqlite-schema.d.ts.map +1 -0
  75. package/dist/agent-runtime/sqlite-transactions.d.ts +25 -0
  76. package/dist/agent-runtime/sqlite-transactions.d.ts.map +1 -0
  77. package/dist/agent-runtime/sqlite.d.ts +10 -6
  78. package/dist/agent-runtime/sqlite.d.ts.map +1 -1
  79. package/dist/agent-runtime/store-archive.d.ts +16 -0
  80. package/dist/agent-runtime/store-archive.d.ts.map +1 -0
  81. package/dist/{testing/agent-store-conformance.d.ts → agent-runtime/store-conformance.d.ts} +2 -2
  82. package/dist/agent-runtime/store-conformance.d.ts.map +1 -0
  83. package/dist/agent-runtime/store-create.d.ts +11 -0
  84. package/dist/agent-runtime/store-create.d.ts.map +1 -0
  85. package/dist/agent-runtime/{store-driver.d.ts → store-driver-contract.d.ts} +7 -7
  86. package/dist/agent-runtime/store-driver-contract.d.ts.map +1 -0
  87. package/dist/agent-runtime/store-events.d.ts +7 -89
  88. package/dist/agent-runtime/store-events.d.ts.map +1 -1
  89. package/dist/agent-runtime/store-memory.d.ts +4 -0
  90. package/dist/agent-runtime/store-memory.d.ts.map +1 -0
  91. package/dist/agent-runtime/store-mutate.d.ts +13 -0
  92. package/dist/agent-runtime/store-mutate.d.ts.map +1 -0
  93. package/dist/agent-runtime/store-purge.d.ts +1 -1
  94. package/dist/agent-runtime/store-purge.d.ts.map +1 -1
  95. package/dist/agent-runtime/store-reads.d.ts +29 -0
  96. package/dist/agent-runtime/store-reads.d.ts.map +1 -0
  97. package/dist/agent-runtime/store-reduce-history.d.ts +10 -0
  98. package/dist/agent-runtime/store-reduce-history.d.ts.map +1 -0
  99. package/dist/agent-runtime/store-reduce-run.d.ts +14 -0
  100. package/dist/agent-runtime/store-reduce-run.d.ts.map +1 -0
  101. package/dist/agent-runtime/store-reduce-shared.d.ts +76 -0
  102. package/dist/agent-runtime/store-reduce-shared.d.ts.map +1 -0
  103. package/dist/agent-runtime/store-reduce-terminal.d.ts +6 -0
  104. package/dist/agent-runtime/store-reduce-terminal.d.ts.map +1 -0
  105. package/dist/agent-runtime/store-reducer.d.ts +24 -0
  106. package/dist/agent-runtime/store-reducer.d.ts.map +1 -0
  107. package/dist/agent-runtime/store-snapshot.d.ts +19 -0
  108. package/dist/agent-runtime/store-snapshot.d.ts.map +1 -0
  109. package/dist/agent-runtime/store.d.ts +1 -1
  110. package/dist/agent-runtime/store.d.ts.map +1 -1
  111. package/dist/application/admission.d.ts +1 -1
  112. package/dist/application/admission.d.ts.map +1 -1
  113. package/dist/application/events.d.ts +1 -1
  114. package/dist/application/events.d.ts.map +1 -1
  115. package/dist/{server → application}/file-state-store.d.ts +1 -1
  116. package/dist/application/file-state-store.d.ts.map +1 -0
  117. package/dist/application/health.d.ts +1 -1
  118. package/dist/application/health.d.ts.map +1 -1
  119. package/dist/application/kernel-admission.d.ts +8 -0
  120. package/dist/application/kernel-admission.d.ts.map +1 -0
  121. package/dist/application/kernel-contract.d.ts +142 -0
  122. package/dist/application/kernel-contract.d.ts.map +1 -0
  123. package/dist/application/kernel-resource-context.d.ts +24 -0
  124. package/dist/application/kernel-resource-context.d.ts.map +1 -0
  125. package/dist/application/kernel-restart.d.ts +5 -0
  126. package/dist/application/kernel-restart.d.ts.map +1 -0
  127. package/dist/application/kernel-rollback.d.ts +4 -0
  128. package/dist/application/kernel-rollback.d.ts.map +1 -0
  129. package/dist/application/kernel-shutdown.d.ts +6 -0
  130. package/dist/application/kernel-shutdown.d.ts.map +1 -0
  131. package/dist/application/kernel-start.d.ts +20 -0
  132. package/dist/application/kernel-start.d.ts.map +1 -0
  133. package/dist/application/kernel-state.d.ts +116 -0
  134. package/dist/application/kernel-state.d.ts.map +1 -0
  135. package/dist/application/kernel.d.ts +9 -140
  136. package/dist/application/kernel.d.ts.map +1 -1
  137. package/dist/application/latest-sink.d.ts +1 -1
  138. package/dist/application/latest-sink.d.ts.map +1 -1
  139. package/dist/application/opentelemetry.d.ts +1 -1
  140. package/dist/application/opentelemetry.d.ts.map +1 -1
  141. package/dist/application/watch-hub.d.ts +2 -2
  142. package/dist/application/watch-hub.d.ts.map +1 -1
  143. package/dist/browser/client-multipart.d.ts +1 -1
  144. package/dist/browser/client-multipart.d.ts.map +1 -1
  145. package/dist/browser/client-url.d.ts +1 -1
  146. package/dist/browser/client-url.d.ts.map +1 -1
  147. package/dist/browser/client.d.ts +1 -1
  148. package/dist/browser/client.d.ts.map +1 -1
  149. package/dist/browser/contract-stream.d.ts +1 -1
  150. package/dist/browser/contract-stream.d.ts.map +1 -1
  151. package/dist/browser/http.d.ts +1 -1
  152. package/dist/browser/http.d.ts.map +1 -1
  153. package/dist/browser/resumable.d.ts +1 -28
  154. package/dist/browser/resumable.d.ts.map +1 -1
  155. package/dist/browser/retained.d.ts.map +1 -0
  156. package/dist/browser/socket-io.d.ts +23 -1
  157. package/dist/browser/socket-io.d.ts.map +1 -1
  158. package/dist/browser/stream.d.ts +14 -2
  159. package/dist/browser/stream.d.ts.map +1 -1
  160. package/dist/contract/define.d.ts +72 -65
  161. package/dist/contract/define.d.ts.map +1 -1
  162. package/dist/{internal/errors.d.ts → contract/normalize.d.ts} +3 -39
  163. package/dist/contract/normalize.d.ts.map +1 -0
  164. package/dist/contract/tool-view.d.ts +135 -0
  165. package/dist/contract/tool-view.d.ts.map +1 -0
  166. package/dist/declaration/declaration.d.ts.map +1 -0
  167. package/dist/{agent-runtime/durability-contract.d.ts → durability/contract.d.ts} +2 -2
  168. package/dist/durability/contract.d.ts.map +1 -0
  169. package/dist/{agent-runtime/durability.d.ts → durability/engine.d.ts} +4 -4
  170. package/dist/durability/engine.d.ts.map +1 -0
  171. package/dist/durability/events.d.ts +101 -0
  172. package/dist/durability/events.d.ts.map +1 -0
  173. package/dist/{agent-runtime/durability-json.d.ts → durability/json.d.ts} +1 -1
  174. package/dist/durability/json.d.ts.map +1 -0
  175. package/dist/{agent-runtime/durability-ledger.d.ts → durability/ledger.d.ts} +2 -2
  176. package/dist/durability/ledger.d.ts.map +1 -0
  177. package/dist/{agent-runtime/durability-scheduler.d.ts → durability/scheduler.d.ts} +2 -2
  178. package/dist/durability/scheduler.d.ts.map +1 -0
  179. package/dist/entrypoints/agent-runtime/browser.d.ts +5 -0
  180. package/dist/entrypoints/agent-runtime/browser.d.ts.map +1 -0
  181. package/dist/{agent-runtime-browser.js → entrypoints/agent-runtime/browser.js} +3 -3
  182. package/dist/{agent-runtime-coding-tools.d.ts → entrypoints/agent-runtime/coding-tools.d.ts} +2 -2
  183. package/dist/entrypoints/agent-runtime/coding-tools.d.ts.map +1 -0
  184. package/dist/entrypoints/agent-runtime/coding-tools.js +22 -0
  185. package/dist/{agent-runtime-harness.d.ts → entrypoints/agent-runtime/harness.d.ts} +2 -2
  186. package/dist/entrypoints/agent-runtime/harness.d.ts.map +1 -0
  187. package/dist/{agent-runtime-harness.js → entrypoints/agent-runtime/harness.js} +24 -25
  188. package/dist/entrypoints/agent-runtime/openrouter.d.ts +2 -0
  189. package/dist/entrypoints/agent-runtime/openrouter.d.ts.map +1 -0
  190. package/dist/{agent-runtime-openrouter.js → entrypoints/agent-runtime/openrouter.js} +3 -3
  191. package/dist/{agent-runtime-sandbox.d.ts → entrypoints/agent-runtime/sandbox.d.ts} +5 -5
  192. package/dist/entrypoints/agent-runtime/sandbox.d.ts.map +1 -0
  193. package/dist/{agent-runtime-sandbox.js → entrypoints/agent-runtime/sandbox.js} +11 -12
  194. package/dist/entrypoints/agent-runtime/sqlite/bun.d.ts +2 -0
  195. package/dist/entrypoints/agent-runtime/sqlite/bun.d.ts.map +1 -0
  196. package/dist/{agent-runtime-sqlite-bun.js → entrypoints/agent-runtime/sqlite/bun.js} +8 -6
  197. package/dist/entrypoints/agent-runtime/sqlite/node.d.ts +2 -0
  198. package/dist/entrypoints/agent-runtime/sqlite/node.d.ts.map +1 -0
  199. package/dist/{agent-runtime-sqlite-node.js → entrypoints/agent-runtime/sqlite/node.js} +8 -6
  200. package/dist/entrypoints/agent-runtime/testing.d.ts +4 -0
  201. package/dist/entrypoints/agent-runtime/testing.d.ts.map +1 -0
  202. package/dist/entrypoints/agent-runtime/testing.js +1084 -0
  203. package/dist/{agent-runtime.d.ts → entrypoints/agent-runtime.d.ts} +41 -37
  204. package/dist/entrypoints/agent-runtime.d.ts.map +1 -0
  205. package/dist/{agent-runtime.js → entrypoints/agent-runtime.js} +408 -366
  206. package/dist/{application-diagnostic-journal.d.ts → entrypoints/application/diagnostic-journal.d.ts} +2 -2
  207. package/dist/entrypoints/application/diagnostic-journal.d.ts.map +1 -0
  208. package/dist/{application-diagnostic-journal.js → entrypoints/application/diagnostic-journal.js} +3 -3
  209. package/dist/{application-grammy.d.ts → entrypoints/application/grammy.d.ts} +2 -2
  210. package/dist/entrypoints/application/grammy.d.ts.map +1 -0
  211. package/dist/{application-grammy.js → entrypoints/application/grammy.js} +2 -2
  212. package/dist/{application-opentelemetry.d.ts → entrypoints/application/opentelemetry.d.ts} +2 -2
  213. package/dist/entrypoints/application/opentelemetry.d.ts.map +1 -0
  214. package/dist/{application-opentelemetry.js → entrypoints/application/opentelemetry.js} +4 -4
  215. package/dist/{application-schemas.d.ts → entrypoints/application/schemas.d.ts} +2 -2
  216. package/dist/entrypoints/application/schemas.d.ts.map +1 -0
  217. package/dist/{application-schemas.js → entrypoints/application/schemas.js} +2 -2
  218. package/dist/{application.d.ts → entrypoints/application.d.ts} +22 -21
  219. package/dist/entrypoints/application.d.ts.map +1 -0
  220. package/dist/{application.js → entrypoints/application.js} +24 -22
  221. package/dist/entrypoints/bin/upgrade-cli.d.ts.map +1 -0
  222. package/dist/{upgrade-cli.js → entrypoints/bin/upgrade-cli.js} +3 -3
  223. package/dist/{cli.d.ts → entrypoints/cli.d.ts} +15 -15
  224. package/dist/entrypoints/cli.d.ts.map +1 -0
  225. package/dist/{cli.js → entrypoints/cli.js} +37 -32
  226. package/dist/entrypoints/contract.d.ts +9 -0
  227. package/dist/entrypoints/contract.d.ts.map +1 -0
  228. package/dist/{contract/index.js → entrypoints/contract.js} +14 -6
  229. package/dist/entrypoints/declaration.d.ts +2 -0
  230. package/dist/entrypoints/declaration.d.ts.map +1 -0
  231. package/dist/{declaration.js → entrypoints/declaration.js} +1 -1
  232. package/dist/{files.d.ts → entrypoints/files.d.ts} +2 -2
  233. package/dist/entrypoints/files.d.ts.map +1 -0
  234. package/dist/{files.js → entrypoints/files.js} +3 -3
  235. package/dist/{geo.d.ts → entrypoints/geo.d.ts} +1 -1
  236. package/dist/entrypoints/geo.d.ts.map +1 -0
  237. package/dist/{geo.js → entrypoints/geo.js} +4 -4
  238. package/dist/entrypoints/google.d.ts +2 -0
  239. package/dist/entrypoints/google.d.ts.map +1 -0
  240. package/dist/{google.js → entrypoints/google.js} +1 -1
  241. package/dist/{index.d.ts → entrypoints/index.d.ts} +14 -13
  242. package/dist/entrypoints/index.d.ts.map +1 -0
  243. package/dist/{index.js → entrypoints/index.js} +99 -33
  244. package/dist/{live.d.ts → entrypoints/live.d.ts} +4 -4
  245. package/dist/entrypoints/live.d.ts.map +1 -0
  246. package/dist/{live.js → entrypoints/live.js} +6 -4
  247. package/dist/{node.d.ts → entrypoints/node.d.ts} +11 -11
  248. package/dist/entrypoints/node.d.ts.map +1 -0
  249. package/dist/{node.js → entrypoints/node.js} +20 -16
  250. package/dist/entrypoints/oauth.d.ts +2 -0
  251. package/dist/entrypoints/oauth.d.ts.map +1 -0
  252. package/dist/{oauth.js → entrypoints/oauth.js} +3 -3
  253. package/dist/{observability/index.d.ts → entrypoints/observability.d.ts} +11 -11
  254. package/dist/entrypoints/observability.d.ts.map +1 -0
  255. package/dist/{observability/index.js → entrypoints/observability.js} +9 -11
  256. package/dist/entrypoints/primitives.d.ts +3 -0
  257. package/dist/entrypoints/primitives.d.ts.map +1 -0
  258. package/dist/{primitives.js → entrypoints/primitives.js} +1 -6
  259. package/dist/{react.d.ts → entrypoints/react.d.ts} +4 -4
  260. package/dist/entrypoints/react.d.ts.map +1 -0
  261. package/dist/{react.js → entrypoints/react.js} +3 -3
  262. package/dist/{release.d.ts → entrypoints/release.d.ts} +4 -4
  263. package/dist/entrypoints/release.d.ts.map +1 -0
  264. package/dist/{release.js → entrypoints/release.js} +1 -1
  265. package/dist/{remote.d.ts → entrypoints/remote.d.ts} +1 -1
  266. package/dist/entrypoints/remote.d.ts.map +1 -0
  267. package/dist/entrypoints/remote.js +66 -0
  268. package/dist/{server/index.d.ts → entrypoints/server.d.ts} +35 -34
  269. package/dist/entrypoints/server.d.ts.map +1 -0
  270. package/dist/{server/index.js → entrypoints/server.js} +294 -244
  271. package/dist/{telegram.d.ts → entrypoints/telegram.d.ts} +2 -2
  272. package/dist/entrypoints/telegram.d.ts.map +1 -0
  273. package/dist/{telegram.js → entrypoints/telegram.js} +1 -1
  274. package/dist/entrypoints/testing.d.ts +9 -0
  275. package/dist/entrypoints/testing.d.ts.map +1 -0
  276. package/dist/{testing.js → entrypoints/testing.js} +107 -926
  277. package/dist/{tools/connections/index.d.ts → entrypoints/tools/connections.d.ts} +6 -7
  278. package/dist/entrypoints/tools/connections.d.ts.map +1 -0
  279. package/dist/{tools/connections/index.js → entrypoints/tools/connections.js} +7 -4
  280. package/dist/{tools-contract.d.ts → entrypoints/tools/contract.d.ts} +5 -5
  281. package/dist/entrypoints/tools/contract.d.ts.map +1 -0
  282. package/dist/{tools-contract.js → entrypoints/tools/contract.js} +4 -4
  283. package/dist/{tool-invoker.d.ts → entrypoints/tools/invoker.d.ts} +2 -2
  284. package/dist/entrypoints/tools/invoker.d.ts.map +1 -0
  285. package/dist/entrypoints/tools/invoker.js +20 -0
  286. package/dist/entrypoints/tools.d.ts +51 -0
  287. package/dist/entrypoints/tools.d.ts.map +1 -0
  288. package/dist/{tools.js → entrypoints/tools.js} +1787 -1751
  289. package/dist/{tracking-server.d.ts → entrypoints/tracking/server.d.ts} +8 -8
  290. package/dist/entrypoints/tracking/server.d.ts.map +1 -0
  291. package/dist/{tracking.d.ts → entrypoints/tracking.d.ts} +15 -15
  292. package/dist/entrypoints/tracking.d.ts.map +1 -0
  293. package/dist/{tracking.js → entrypoints/tracking.js} +5 -8
  294. package/dist/google/google.d.ts.map +1 -0
  295. package/dist/{index-a916km3r.js → index-0b1ess5e.js} +6 -13
  296. package/dist/{index-zwkgfq1s.js → index-1nd48tm9.js} +113 -118
  297. package/dist/{index-7zbps32p.js → index-1zbbzgfh.js} +2 -2
  298. package/dist/{index-mzvgxp0n.js → index-2cr1cqhn.js} +16 -4
  299. package/dist/{index-f9mb610r.js → index-35mh5bhj.js} +2 -2
  300. package/dist/index-48ffdxgk.js +6 -0
  301. package/dist/index-58k4fp34.js +1023 -0
  302. package/dist/{index-p13mwz16.js → index-83bdg97s.js} +1 -1
  303. package/dist/index-97ac4gph.js +3618 -0
  304. package/dist/{index-kw9t5ayn.js → index-cq4qfycf.js} +5 -5
  305. package/dist/{index-7gnkny4z.js → index-d9pk3td4.js} +1 -1
  306. package/dist/{index-e42wzzz5.js → index-dcpdvjsc.js} +7 -7
  307. package/dist/{index-h9etkkyk.js → index-dydjcp8z.js} +102 -25
  308. package/dist/{index-sr93cwf9.js → index-e2z3ahw9.js} +2 -2
  309. package/dist/{index-yewwh1w4.js → index-e87kakm4.js} +96 -11
  310. package/dist/{index-cby4ar3v.js → index-eqqvgdb3.js} +1 -1
  311. package/dist/index-fdp6hdxn.js +942 -0
  312. package/dist/{index-0a349c33.js → index-gyr48nzg.js} +125 -198
  313. package/dist/{index-wnfk50r0.js → index-h6eeys1v.js} +1 -1
  314. package/dist/{index-77fekveh.js → index-hffjpmq9.js} +1 -15
  315. package/dist/{index-yn8remb1.js → index-j05z5gn4.js} +50 -14
  316. package/dist/index-k5hsfc3j.js +31 -0
  317. package/dist/{index-fq77yfzc.js → index-kj2wbeta.js} +1 -1
  318. package/dist/index-kvj7f4hq.js +39 -0
  319. package/dist/{index-4fpa9dy2.js → index-m9zn6cpq.js} +2 -2
  320. package/dist/{index-2na0qrfn.js → index-mdzh02yc.js} +7 -7
  321. package/dist/{index-ywd0y6m1.js → index-mkm15s49.js} +1 -1
  322. package/dist/index-mp5sn43f.js +1084 -0
  323. package/dist/{index-7n145nbe.js → index-n6hxg8as.js} +530 -387
  324. package/dist/index-ngfhvfpd.js +30 -0
  325. package/dist/{index-e0znv5gn.js → index-p5r7qpdd.js} +2 -93
  326. package/dist/{index-n0f51dfn.js → index-p81267c2.js} +608 -549
  327. package/dist/{index-wc4x00bn.js → index-qwhynv6x.js} +1 -1
  328. package/dist/index-r7nmqpsg.js +154 -0
  329. package/dist/{index-bx75zwt7.js → index-rewkc2hj.js} +5 -4
  330. package/dist/{index-9f8ztey6.js → index-sees8yf8.js} +2 -2
  331. package/dist/{index-vjpvjqpn.js → index-v38qyerb.js} +16 -2
  332. package/dist/{index-2c2bjw3s.js → index-vcvkq30w.js} +3 -3
  333. package/dist/index-wqgjfstn.js +18 -0
  334. package/dist/{index-f477k430.js → index-x4799c19.js} +1 -1
  335. package/dist/{index-cxqhvq21.js → index-xnj9bgxe.js} +142 -129
  336. package/dist/index-xsqjkha9.js +281 -0
  337. package/dist/{index-6kyksz9y.js → index-yw4fzmdz.js} +1 -1
  338. package/dist/{index-3xwxfj4z.js → index-zeemqhqx.js} +1 -1
  339. package/dist/{index-tmwcrptx.js → index-zfrhfn82.js} +1 -1
  340. package/dist/index-znfs20ss.js +98 -0
  341. package/dist/internal/backoff.d.ts +29 -0
  342. package/dist/internal/backoff.d.ts.map +1 -0
  343. package/dist/internal/canonical-json.d.ts +21 -11
  344. package/dist/internal/canonical-json.d.ts.map +1 -1
  345. package/dist/internal/channel.d.ts.map +1 -0
  346. package/dist/internal/logger.d.ts.map +1 -0
  347. package/dist/internal/request.d.ts.map +1 -0
  348. package/dist/internal/secure-fetch.d.ts +12 -0
  349. package/dist/internal/secure-fetch.d.ts.map +1 -1
  350. package/dist/internal/stable-digest.d.ts +0 -43
  351. package/dist/internal/stable-digest.d.ts.map +1 -1
  352. package/dist/internal/typed.d.ts +0 -8
  353. package/dist/internal/typed.d.ts.map +1 -1
  354. package/dist/internal/zod-issues.d.ts +38 -0
  355. package/dist/internal/zod-issues.d.ts.map +1 -0
  356. package/dist/{tools/json-schema-dialect.d.ts → json-schema/dialect.d.ts} +1 -1
  357. package/dist/json-schema/dialect.d.ts.map +1 -0
  358. package/dist/json-schema/json-schema.d.ts.map +1 -0
  359. package/dist/live/watch-delta.d.ts.map +1 -1
  360. package/dist/{oauth.d.ts → oauth/authorization-code.d.ts} +1 -1
  361. package/dist/oauth/authorization-code.d.ts.map +1 -0
  362. package/dist/observability/audit.d.ts +2 -2
  363. package/dist/observability/audit.d.ts.map +1 -1
  364. package/dist/observability/bounded-logger.d.ts +1 -1
  365. package/dist/observability/bounded-logger.d.ts.map +1 -1
  366. package/dist/{internal/observability-sink.d.ts → observability/bounded-sink.d.ts} +2 -2
  367. package/dist/observability/bounded-sink.d.ts.map +1 -0
  368. package/dist/observability/context.d.ts +1 -1
  369. package/dist/observability/context.d.ts.map +1 -1
  370. package/dist/observability/event.d.ts +1 -1
  371. package/dist/observability/event.d.ts.map +1 -1
  372. package/dist/observability/work.d.ts +1 -1
  373. package/dist/observability/work.d.ts.map +1 -1
  374. package/dist/primitives/audit.d.ts +1 -1
  375. package/dist/primitives/audit.d.ts.map +1 -1
  376. package/dist/primitives/export-operation.d.ts +4 -2
  377. package/dist/primitives/export-operation.d.ts.map +1 -1
  378. package/dist/realtime/socket.d.ts +1 -1
  379. package/dist/realtime/socket.d.ts.map +1 -1
  380. package/dist/server/context-contribution.d.ts +1 -1
  381. package/dist/server/context-contribution.d.ts.map +1 -1
  382. package/dist/server/context.d.ts +2 -2
  383. package/dist/server/context.d.ts.map +1 -1
  384. package/dist/server/contract-method.d.ts +15 -0
  385. package/dist/server/contract-method.d.ts.map +1 -0
  386. package/dist/server/contract-stream.d.ts +1 -1
  387. package/dist/server/contract-stream.d.ts.map +1 -1
  388. package/dist/server/create.d.ts +8 -0
  389. package/dist/server/create.d.ts.map +1 -1
  390. package/dist/server/endpoint-dispatch.d.ts +10 -0
  391. package/dist/server/endpoint-dispatch.d.ts.map +1 -0
  392. package/dist/server/endpoint-response.d.ts +18 -0
  393. package/dist/server/endpoint-response.d.ts.map +1 -0
  394. package/dist/server/error-dispatch.d.ts +17 -1
  395. package/dist/server/error-dispatch.d.ts.map +1 -1
  396. package/dist/server/error-hook.d.ts +2 -2
  397. package/dist/server/error-hook.d.ts.map +1 -1
  398. package/dist/server/handler-state.d.ts +44 -0
  399. package/dist/server/handler-state.d.ts.map +1 -0
  400. package/dist/server/implement.d.ts +1 -1
  401. package/dist/server/implement.d.ts.map +1 -1
  402. package/dist/server/middleware/auth.d.ts +1 -1
  403. package/dist/server/middleware/auth.d.ts.map +1 -1
  404. package/dist/server/middleware/cors.d.ts +17 -0
  405. package/dist/server/middleware/cors.d.ts.map +1 -1
  406. package/dist/server/middleware/trust-fence.d.ts +1 -1
  407. package/dist/server/middleware/trust-fence.d.ts.map +1 -1
  408. package/dist/server/multipart.d.ts +1 -1
  409. package/dist/server/multipart.d.ts.map +1 -1
  410. package/dist/{tools/oauth-metadata.d.ts → server/oauth/metadata.d.ts} +2 -2
  411. package/dist/server/oauth/metadata.d.ts.map +1 -0
  412. package/dist/{tools/oauth-provider.d.ts → server/oauth/provider.d.ts} +2 -2
  413. package/dist/server/oauth/provider.d.ts.map +1 -0
  414. package/dist/server/realtime.d.ts +1 -1
  415. package/dist/server/realtime.d.ts.map +1 -1
  416. package/dist/server/request-completion.d.ts +16 -0
  417. package/dist/server/request-completion.d.ts.map +1 -0
  418. package/dist/server/response-metadata.d.ts +1 -1
  419. package/dist/server/response-metadata.d.ts.map +1 -1
  420. package/dist/server/route-table.d.ts +9 -0
  421. package/dist/server/route-table.d.ts.map +1 -0
  422. package/dist/server/stream.d.ts +0 -13
  423. package/dist/server/stream.d.ts.map +1 -1
  424. package/dist/server/types.d.ts +7 -4
  425. package/dist/server/types.d.ts.map +1 -1
  426. package/dist/testing/handler-clients.d.ts +31 -0
  427. package/dist/testing/handler-clients.d.ts.map +1 -0
  428. package/dist/testing/managed-resource-conformance-scenarios.d.ts.map +1 -1
  429. package/dist/testing/surface-conformance.d.ts +2 -1
  430. package/dist/testing/surface-conformance.d.ts.map +1 -1
  431. package/dist/testing/surface-manifest.d.ts +64 -5
  432. package/dist/testing/surface-manifest.d.ts.map +1 -1
  433. package/dist/tools/{cli-args.d.ts → cli/args.d.ts} +1 -1
  434. package/dist/tools/cli/args.d.ts.map +1 -0
  435. package/dist/tools/{cli-checkpoint.d.ts → cli/checkpoint.d.ts} +1 -1
  436. package/dist/tools/cli/checkpoint.d.ts.map +1 -0
  437. package/dist/tools/{cli-command.d.ts → cli/command.d.ts} +22 -4
  438. package/dist/tools/cli/command.d.ts.map +1 -0
  439. package/dist/tools/{cli.d.ts → cli/config.d.ts} +5 -12
  440. package/dist/tools/cli/config.d.ts.map +1 -0
  441. package/dist/tools/cli/create-cli.d.ts +36 -0
  442. package/dist/tools/cli/create-cli.d.ts.map +1 -0
  443. package/dist/tools/cli/download.d.ts +8 -0
  444. package/dist/tools/cli/download.d.ts.map +1 -0
  445. package/dist/tools/{cli-format.d.ts → cli/format.d.ts} +2 -2
  446. package/dist/tools/cli/format.d.ts.map +1 -0
  447. package/dist/tools/cli/help.d.ts +24 -0
  448. package/dist/tools/cli/help.d.ts.map +1 -0
  449. package/dist/tools/{cli-installer.d.ts → cli/installer.d.ts} +2 -2
  450. package/dist/tools/cli/installer.d.ts.map +1 -0
  451. package/dist/tools/{cli-invoke.d.ts → cli/invoke.d.ts} +35 -10
  452. package/dist/tools/cli/invoke.d.ts.map +1 -0
  453. package/dist/tools/cli/io.d.ts +10 -0
  454. package/dist/tools/cli/io.d.ts.map +1 -0
  455. package/dist/tools/cli/managed-surface.d.ts +30 -0
  456. package/dist/tools/cli/managed-surface.d.ts.map +1 -0
  457. package/dist/tools/{cli-manifest.d.ts → cli/manifest.d.ts} +1 -1
  458. package/dist/tools/cli/manifest.d.ts.map +1 -0
  459. package/dist/tools/{cli-policy.d.ts → cli/policy.d.ts} +2 -2
  460. package/dist/tools/cli/policy.d.ts.map +1 -0
  461. package/dist/tools/cli/prepare.d.ts +14 -0
  462. package/dist/tools/cli/prepare.d.ts.map +1 -0
  463. package/dist/tools/{cli-profile.d.ts → cli/profile.d.ts} +2 -2
  464. package/dist/tools/cli/profile.d.ts.map +1 -0
  465. package/dist/tools/cli/run-managed.d.ts +5 -0
  466. package/dist/tools/cli/run-managed.d.ts.map +1 -0
  467. package/dist/tools/cli/run-native.d.ts +9 -0
  468. package/dist/tools/cli/run-native.d.ts.map +1 -0
  469. package/dist/tools/cli/session.d.ts +40 -0
  470. package/dist/tools/cli/session.d.ts.map +1 -0
  471. package/dist/tools/{cli-signature.d.ts → cli/signature.d.ts} +2 -2
  472. package/dist/tools/cli/signature.d.ts.map +1 -0
  473. package/dist/tools/{cli-stream.d.ts → cli/stream.d.ts} +4 -4
  474. package/dist/tools/cli/stream.d.ts.map +1 -0
  475. package/dist/tools/{cli-update.d.ts → cli/update.d.ts} +3 -3
  476. package/dist/tools/cli/update.d.ts.map +1 -0
  477. package/dist/tools/{cli-view.d.ts → cli/view.d.ts} +2 -2
  478. package/dist/tools/cli/view.d.ts.map +1 -0
  479. package/dist/tools/{cli-wait.d.ts → cli/wait.d.ts} +2 -2
  480. package/dist/tools/cli/wait.d.ts.map +1 -0
  481. package/dist/tools/connections/runtime.d.ts +1 -1
  482. package/dist/tools/connections/runtime.d.ts.map +1 -1
  483. package/dist/tools/connections/types.d.ts +3 -3
  484. package/dist/tools/connections/types.d.ts.map +1 -1
  485. package/dist/tools/durability-context.d.ts +1 -1
  486. package/dist/tools/durability-context.d.ts.map +1 -1
  487. package/dist/tools/execute.d.ts +30 -3
  488. package/dist/tools/execute.d.ts.map +1 -1
  489. package/dist/tools/internal/surface-projector.d.ts +8 -6
  490. package/dist/tools/internal/surface-projector.d.ts.map +1 -1
  491. package/dist/tools/internal/tool-view.d.ts +41 -0
  492. package/dist/tools/internal/tool-view.d.ts.map +1 -0
  493. package/dist/tools/invoker.d.ts +11 -3
  494. package/dist/tools/invoker.d.ts.map +1 -1
  495. package/dist/tools/list-names.d.ts +3 -3
  496. package/dist/tools/list-names.d.ts.map +1 -1
  497. package/dist/tools/manifest.d.ts +2 -2
  498. package/dist/tools/manifest.d.ts.map +1 -1
  499. package/dist/tools/{mcp-app.d.ts → mcp/app.d.ts} +1 -1
  500. package/dist/tools/mcp/app.d.ts.map +1 -0
  501. package/dist/tools/{mcp-catalog.d.ts → mcp/catalog.d.ts} +2 -2
  502. package/dist/tools/mcp/catalog.d.ts.map +1 -0
  503. package/dist/tools/{mcp-handler.d.ts → mcp/handler.d.ts} +5 -5
  504. package/dist/tools/mcp/handler.d.ts.map +1 -0
  505. package/dist/tools/{mcp.d.ts → mcp/mount.d.ts} +9 -9
  506. package/dist/tools/mcp/mount.d.ts.map +1 -0
  507. package/dist/tools/{mcp-prepare.d.ts → mcp/prepare.d.ts} +9 -9
  508. package/dist/tools/mcp/prepare.d.ts.map +1 -0
  509. package/dist/tools/{mcp-progress.d.ts → mcp/progress.d.ts} +2 -2
  510. package/dist/tools/mcp/progress.d.ts.map +1 -0
  511. package/dist/tools/mcp/register.d.ts +35 -0
  512. package/dist/tools/mcp/register.d.ts.map +1 -0
  513. package/dist/tools/{mcp-round-policy.d.ts → mcp/round-policy.d.ts} +2 -2
  514. package/dist/tools/mcp/round-policy.d.ts.map +1 -0
  515. package/dist/tools/{mcp-round.d.ts → mcp/round.d.ts} +4 -4
  516. package/dist/tools/mcp/round.d.ts.map +1 -0
  517. package/dist/tools/mcp/runtime-tools.d.ts +24 -0
  518. package/dist/tools/mcp/runtime-tools.d.ts.map +1 -0
  519. package/dist/tools/{mcp-stdio-signals.d.ts → mcp/stdio-signals.d.ts} +3 -3
  520. package/dist/tools/mcp/stdio-signals.d.ts.map +1 -0
  521. package/dist/tools/{mcp-stdio.d.ts → mcp/stdio.d.ts} +4 -4
  522. package/dist/tools/mcp/stdio.d.ts.map +1 -0
  523. package/dist/tools/{mcp-trace.d.ts → mcp/trace.d.ts} +1 -1
  524. package/dist/tools/mcp/trace.d.ts.map +1 -0
  525. package/dist/tools/mount.d.ts +12 -7
  526. package/dist/tools/mount.d.ts.map +1 -1
  527. package/dist/tools/native-definition.d.ts +3 -3
  528. package/dist/tools/native-definition.d.ts.map +1 -1
  529. package/dist/tools/operations/async-operation-binding-types.d.ts +127 -0
  530. package/dist/tools/operations/async-operation-binding-types.d.ts.map +1 -0
  531. package/dist/tools/operations/async-operation-binding.d.ts +28 -0
  532. package/dist/tools/operations/async-operation-binding.d.ts.map +1 -0
  533. package/dist/tools/operations/async-operation-canonical-types.d.ts +110 -0
  534. package/dist/tools/operations/async-operation-canonical-types.d.ts.map +1 -0
  535. package/dist/tools/operations/async-operation-canonical.d.ts +7 -0
  536. package/dist/tools/operations/async-operation-canonical.d.ts.map +1 -0
  537. package/dist/tools/operations/async-operation-contract.d.ts.map +1 -0
  538. package/dist/tools/operations/async-operation-id.d.ts +23 -0
  539. package/dist/tools/operations/async-operation-id.d.ts.map +1 -0
  540. package/dist/tools/operations/async-operation-runtime-tools.d.ts +40 -0
  541. package/dist/tools/operations/async-operation-runtime-tools.d.ts.map +1 -0
  542. package/dist/tools/operations/async-operation-runtime-types.d.ts +68 -0
  543. package/dist/tools/operations/async-operation-runtime-types.d.ts.map +1 -0
  544. package/dist/tools/operations/async-operation-runtime.d.ts +5 -0
  545. package/dist/tools/operations/async-operation-runtime.d.ts.map +1 -0
  546. package/dist/tools/{define-wait-tool.d.ts → operations/define-wait-tool.d.ts} +2 -2
  547. package/dist/tools/operations/define-wait-tool.d.ts.map +1 -0
  548. package/dist/tools/operations/mount-wait.d.ts.map +1 -0
  549. package/dist/tools/operations/wait-core.d.ts.map +1 -0
  550. package/dist/tools/remote.d.ts +1 -1
  551. package/dist/tools/remote.d.ts.map +1 -1
  552. package/dist/tools/runtime-tool.d.ts +11 -4
  553. package/dist/tools/runtime-tool.d.ts.map +1 -1
  554. package/dist/tools/schema/coerce.d.ts.map +1 -0
  555. package/dist/tools/schema/flatten-join.d.ts.map +1 -0
  556. package/dist/tools/schema/flatten.d.ts.map +1 -0
  557. package/dist/tools/schema/portable-formats.d.ts.map +1 -0
  558. package/dist/tools/{presentation.d.ts → schema/presentation.d.ts} +2 -0
  559. package/dist/tools/schema/presentation.d.ts.map +1 -0
  560. package/dist/tools/schema/schema.d.ts.map +1 -0
  561. package/dist/tools/schema/untyped-properties.d.ts.map +1 -0
  562. package/dist/tools/surface.d.ts +2 -3
  563. package/dist/tools/surface.d.ts.map +1 -1
  564. package/dist/tools/toolkit.d.ts +4 -4
  565. package/dist/tools/toolkit.d.ts.map +1 -1
  566. package/dist/tools/{define-download-tool.d.ts → transfer/define-download-tool.d.ts} +4 -4
  567. package/dist/tools/transfer/define-download-tool.d.ts.map +1 -0
  568. package/dist/tools/{define-upload-tool.d.ts → transfer/define-upload-tool.d.ts} +3 -3
  569. package/dist/tools/transfer/define-upload-tool.d.ts.map +1 -0
  570. package/dist/tools/{define-view-file-tool.d.ts → transfer/define-view-file-tool.d.ts} +2 -2
  571. package/dist/tools/transfer/define-view-file-tool.d.ts.map +1 -0
  572. package/dist/tools/{download-core.d.ts → transfer/download-core.d.ts} +2 -2
  573. package/dist/tools/transfer/download-core.d.ts.map +1 -0
  574. package/dist/tools/{managed-file-error.d.ts → transfer/managed-file-error.d.ts} +1 -1
  575. package/dist/tools/transfer/managed-file-error.d.ts.map +1 -0
  576. package/dist/tools/{mount-download.d.ts → transfer/mount-download.d.ts} +1 -1
  577. package/dist/tools/transfer/mount-download.d.ts.map +1 -0
  578. package/dist/tools/{mount-upload.d.ts → transfer/mount-upload.d.ts} +1 -1
  579. package/dist/tools/transfer/mount-upload.d.ts.map +1 -0
  580. package/dist/tools/transfer/native-result.d.ts.map +1 -0
  581. package/dist/tools/{upload-core.d.ts → transfer/upload-core.d.ts} +1 -1
  582. package/dist/tools/transfer/upload-core.d.ts.map +1 -0
  583. package/dist/tools/transfer/view-file-contract.d.ts.map +1 -0
  584. package/dist/tools/{view-file.d.ts → transfer/view-file.d.ts} +1 -1
  585. package/dist/tools/transfer/view-file.d.ts.map +1 -0
  586. package/dist/tools/transports.d.ts +1 -1
  587. package/dist/tools/transports.d.ts.map +1 -1
  588. package/dist/tracking/contract.d.ts +1 -1
  589. package/dist/tracking/contract.d.ts.map +1 -1
  590. package/llms/agent-runtime-browser.txt +33 -0
  591. package/llms/agent-runtime-coding-tools.txt +58 -0
  592. package/llms/agent-runtime-harness.txt +45 -0
  593. package/llms/agent-runtime-openrouter.txt +22 -0
  594. package/llms/agent-runtime-sandbox.txt +159 -0
  595. package/llms/agent-runtime-sqlite-bun.txt +29 -0
  596. package/llms/agent-runtime-sqlite-node.txt +26 -0
  597. package/llms/agent-runtime-testing.txt +30 -0
  598. package/llms/agent-runtime.2.txt +550 -0
  599. package/llms/agent-runtime.3.txt +311 -0
  600. package/llms/agent-runtime.txt +893 -0
  601. package/llms/application-diagnostic-journal.txt +30 -0
  602. package/llms/application-grammy.txt +27 -0
  603. package/llms/application-opentelemetry.txt +27 -0
  604. package/llms/application-schemas.txt +42 -0
  605. package/llms/application.2.txt +223 -0
  606. package/llms/application.txt +1144 -0
  607. package/llms/cli.txt +977 -0
  608. package/llms/contract.txt +606 -0
  609. package/llms/declaration.txt +286 -0
  610. package/llms/files.txt +30 -0
  611. package/llms/geo.txt +114 -0
  612. package/llms/google.txt +27 -0
  613. package/llms/live.txt +471 -0
  614. package/llms/node.txt +43 -0
  615. package/llms/oauth.txt +136 -0
  616. package/llms/observability.txt +893 -0
  617. package/llms/primitives.txt +158 -0
  618. package/llms/react.txt +184 -0
  619. package/llms/release.txt +176 -0
  620. package/llms/remote.txt +25 -0
  621. package/llms/server.2.txt +361 -0
  622. package/llms/server.3.txt +1031 -0
  623. package/llms/server.4.txt +905 -0
  624. package/llms/server.5.txt +250 -0
  625. package/llms/server.txt +996 -0
  626. package/llms/stitchkit.2.txt +836 -0
  627. package/llms/stitchkit.3.txt +147 -0
  628. package/llms/stitchkit.txt +260 -0
  629. package/llms/telegram.txt +30 -0
  630. package/llms/testing.txt +676 -0
  631. package/llms/tools-connections.txt +45 -0
  632. package/llms/tools-contract.txt +9 -0
  633. package/llms/tools-invoker.txt +9 -0
  634. package/llms/tools.2.txt +838 -0
  635. package/llms/tools.txt +1004 -0
  636. package/llms/tracking-server.txt +32 -0
  637. package/llms/tracking.txt +263 -0
  638. package/llms/upgrading-0.37.0-0.50.0.txt +947 -0
  639. package/llms/upgrading-0.53.0-0.67.0.txt +1174 -0
  640. package/llms/upgrading-0.68.0-0.94.0.txt +1159 -0
  641. package/llms/upgrading.txt +215 -0
  642. package/llms-full.txt +305 -75
  643. package/llms.txt +54 -5
  644. package/package.json +84 -83
  645. package/dist/agent-runtime/durability-contract.d.ts.map +0 -1
  646. package/dist/agent-runtime/durability-json.d.ts.map +0 -1
  647. package/dist/agent-runtime/durability-ledger.d.ts.map +0 -1
  648. package/dist/agent-runtime/durability-scheduler.d.ts.map +0 -1
  649. package/dist/agent-runtime/durability.d.ts.map +0 -1
  650. package/dist/agent-runtime/store-driver.d.ts.map +0 -1
  651. package/dist/agent-runtime-browser.d.ts +0 -5
  652. package/dist/agent-runtime-browser.d.ts.map +0 -1
  653. package/dist/agent-runtime-coding-tools.d.ts.map +0 -1
  654. package/dist/agent-runtime-coding-tools.js +0 -23
  655. package/dist/agent-runtime-harness.d.ts.map +0 -1
  656. package/dist/agent-runtime-openrouter.d.ts.map +0 -1
  657. package/dist/agent-runtime-sandbox.d.ts.map +0 -1
  658. package/dist/agent-runtime-sqlite-bun.d.ts.map +0 -1
  659. package/dist/agent-runtime-sqlite-node.d.ts.map +0 -1
  660. package/dist/agent-runtime-testing.d.ts +0 -3
  661. package/dist/agent-runtime-testing.d.ts.map +0 -1
  662. package/dist/agent-runtime-testing.js +0 -156
  663. package/dist/agent-runtime.d.ts.map +0 -1
  664. package/dist/application/channel.d.ts.map +0 -1
  665. package/dist/application-diagnostic-journal.d.ts.map +0 -1
  666. package/dist/application-grammy.d.ts.map +0 -1
  667. package/dist/application-opentelemetry.d.ts.map +0 -1
  668. package/dist/application-schemas.d.ts.map +0 -1
  669. package/dist/application.d.ts.map +0 -1
  670. package/dist/cli.d.ts.map +0 -1
  671. package/dist/contract/index.d.ts +0 -8
  672. package/dist/contract/index.d.ts.map +0 -1
  673. package/dist/declaration.d.ts.map +0 -1
  674. package/dist/files.d.ts.map +0 -1
  675. package/dist/geo.d.ts.map +0 -1
  676. package/dist/google.d.ts.map +0 -1
  677. package/dist/index-0j3vcp5m.js +0 -28
  678. package/dist/index-a11g2kry.js +0 -866
  679. package/dist/index-cnyk6te3.js +0 -77
  680. package/dist/index-fadnxwna.js +0 -1046
  681. package/dist/index-hrbajay7.js +0 -1196
  682. package/dist/index-s8cnx02s.js +0 -90
  683. package/dist/index-v5573g1k.js +0 -142
  684. package/dist/index-vk3kq9sb.js +0 -3344
  685. package/dist/index.d.ts.map +0 -1
  686. package/dist/internal/errors.d.ts.map +0 -1
  687. package/dist/internal/observability-sink.d.ts.map +0 -1
  688. package/dist/live.d.ts.map +0 -1
  689. package/dist/logger.d.ts.map +0 -1
  690. package/dist/node.d.ts.map +0 -1
  691. package/dist/oauth.d.ts.map +0 -1
  692. package/dist/observability/index.d.ts.map +0 -1
  693. package/dist/primitives.d.ts +0 -3
  694. package/dist/primitives.d.ts.map +0 -1
  695. package/dist/react.d.ts.map +0 -1
  696. package/dist/release.d.ts.map +0 -1
  697. package/dist/remote.d.ts.map +0 -1
  698. package/dist/remote.js +0 -88
  699. package/dist/retained.d.ts.map +0 -1
  700. package/dist/server/file-state-store.d.ts.map +0 -1
  701. package/dist/server/index.d.ts.map +0 -1
  702. package/dist/server/request.d.ts.map +0 -1
  703. package/dist/telegram.d.ts.map +0 -1
  704. package/dist/testing/agent-store-conformance.d.ts.map +0 -1
  705. package/dist/testing.d.ts +0 -39
  706. package/dist/testing.d.ts.map +0 -1
  707. package/dist/tool-invoker.d.ts.map +0 -1
  708. package/dist/tool-invoker.js +0 -21
  709. package/dist/tools/async-operation-contract.d.ts.map +0 -1
  710. package/dist/tools/async-operation.d.ts +0 -332
  711. package/dist/tools/async-operation.d.ts.map +0 -1
  712. package/dist/tools/cli-args.d.ts.map +0 -1
  713. package/dist/tools/cli-checkpoint.d.ts.map +0 -1
  714. package/dist/tools/cli-command.d.ts.map +0 -1
  715. package/dist/tools/cli-format.d.ts.map +0 -1
  716. package/dist/tools/cli-installer.d.ts.map +0 -1
  717. package/dist/tools/cli-invoke.d.ts.map +0 -1
  718. package/dist/tools/cli-manifest.d.ts.map +0 -1
  719. package/dist/tools/cli-policy.d.ts.map +0 -1
  720. package/dist/tools/cli-profile.d.ts.map +0 -1
  721. package/dist/tools/cli-signature.d.ts.map +0 -1
  722. package/dist/tools/cli-stream.d.ts.map +0 -1
  723. package/dist/tools/cli-update.d.ts.map +0 -1
  724. package/dist/tools/cli-view.d.ts.map +0 -1
  725. package/dist/tools/cli-wait.d.ts.map +0 -1
  726. package/dist/tools/cli.d.ts.map +0 -1
  727. package/dist/tools/coerce.d.ts.map +0 -1
  728. package/dist/tools/connections/index.d.ts.map +0 -1
  729. package/dist/tools/define-download-tool.d.ts.map +0 -1
  730. package/dist/tools/define-upload-tool.d.ts.map +0 -1
  731. package/dist/tools/define-view-file-tool.d.ts.map +0 -1
  732. package/dist/tools/define-wait-tool.d.ts.map +0 -1
  733. package/dist/tools/download-core.d.ts.map +0 -1
  734. package/dist/tools/flatten-join.d.ts.map +0 -1
  735. package/dist/tools/flatten.d.ts.map +0 -1
  736. package/dist/tools/json-schema-dialect.d.ts.map +0 -1
  737. package/dist/tools/json-schema.d.ts.map +0 -1
  738. package/dist/tools/managed-file-error.d.ts.map +0 -1
  739. package/dist/tools/mcp-app.d.ts.map +0 -1
  740. package/dist/tools/mcp-catalog.d.ts.map +0 -1
  741. package/dist/tools/mcp-handler.d.ts.map +0 -1
  742. package/dist/tools/mcp-prepare.d.ts.map +0 -1
  743. package/dist/tools/mcp-progress.d.ts.map +0 -1
  744. package/dist/tools/mcp-round-policy.d.ts.map +0 -1
  745. package/dist/tools/mcp-round.d.ts.map +0 -1
  746. package/dist/tools/mcp-stdio-signals.d.ts.map +0 -1
  747. package/dist/tools/mcp-stdio.d.ts.map +0 -1
  748. package/dist/tools/mcp-trace.d.ts.map +0 -1
  749. package/dist/tools/mcp.d.ts.map +0 -1
  750. package/dist/tools/mount-download.d.ts.map +0 -1
  751. package/dist/tools/mount-upload.d.ts.map +0 -1
  752. package/dist/tools/mount-wait.d.ts.map +0 -1
  753. package/dist/tools/native-mcp.d.ts +0 -20
  754. package/dist/tools/native-mcp.d.ts.map +0 -1
  755. package/dist/tools/native-result.d.ts.map +0 -1
  756. package/dist/tools/oauth-metadata.d.ts.map +0 -1
  757. package/dist/tools/oauth-provider.d.ts.map +0 -1
  758. package/dist/tools/portable-formats.d.ts.map +0 -1
  759. package/dist/tools/presentation.d.ts.map +0 -1
  760. package/dist/tools/schema.d.ts.map +0 -1
  761. package/dist/tools/untyped-properties.d.ts.map +0 -1
  762. package/dist/tools/upload-core.d.ts.map +0 -1
  763. package/dist/tools/view-file-contract.d.ts.map +0 -1
  764. package/dist/tools/view-file.d.ts.map +0 -1
  765. package/dist/tools/wait-core.d.ts.map +0 -1
  766. package/dist/tools-contract.d.ts.map +0 -1
  767. package/dist/tools.d.ts +0 -50
  768. package/dist/tools.d.ts.map +0 -1
  769. package/dist/tracking-server.d.ts.map +0 -1
  770. package/dist/tracking.d.ts.map +0 -1
  771. package/dist/upgrade-cli.d.ts.map +0 -1
  772. package/dist/{retained.d.ts → browser/retained.d.ts} +0 -0
  773. package/dist/{declaration.d.ts → declaration/declaration.d.ts} +0 -0
  774. package/dist/{upgrade-cli.d.ts → entrypoints/bin/upgrade-cli.d.ts} +0 -0
  775. package/dist/{tracking-server.js → entrypoints/tracking/server.js} +0 -0
  776. package/dist/{google.d.ts → google/google.d.ts} +0 -0
  777. package/dist/{index-pq95qkbf.js → index-5jm36zv1.js} +0 -0
  778. package/dist/{index-actkayzn.js → index-70yj2ebz.js} +3 -3
  779. /package/dist/{application → internal}/channel.d.ts +0 -0
  780. /package/dist/{logger.d.ts → internal/logger.d.ts} +0 -0
  781. /package/dist/{server → internal}/request.d.ts +0 -0
  782. /package/dist/{tools → json-schema}/json-schema.d.ts +0 -0
  783. /package/dist/tools/{async-operation-contract.d.ts → operations/async-operation-contract.d.ts} +0 -0
  784. /package/dist/tools/{mount-wait.d.ts → operations/mount-wait.d.ts} +0 -0
  785. /package/dist/tools/{wait-core.d.ts → operations/wait-core.d.ts} +0 -0
  786. /package/dist/tools/{coerce.d.ts → schema/coerce.d.ts} +0 -0
  787. /package/dist/tools/{flatten-join.d.ts → schema/flatten-join.d.ts} +0 -0
  788. /package/dist/tools/{flatten.d.ts → schema/flatten.d.ts} +0 -0
  789. /package/dist/tools/{portable-formats.d.ts → schema/portable-formats.d.ts} +0 -0
  790. /package/dist/tools/{schema.d.ts → schema/schema.d.ts} +0 -0
  791. /package/dist/tools/{untyped-properties.d.ts → schema/untyped-properties.d.ts} +0 -0
  792. /package/dist/tools/{native-result.d.ts → transfer/native-result.d.ts} +0 -0
  793. /package/dist/tools/{view-file-contract.d.ts → transfer/view-file-contract.d.ts} +0 -0
@@ -1,1046 +0,0 @@
1
- import {
2
- AgentConversationMessagePageSchema,
3
- AgentConversationPageSchema
4
- } from "./index-crykmqkr.js";
5
- import {
6
- AgentAdmissionReceiptSchema,
7
- AgentConversationPurgedError,
8
- AgentHistoryMutationSchema,
9
- AgentRuntimeHeadSchema,
10
- AgentSeedReceiptSchema,
11
- AgentStoredRunSchema,
12
- createAgentRuntimeStore
13
- } from "./index-hrbajay7.js";
14
- import {
15
- AgentRecoverableDescriptorSchema,
16
- AgentRecoverablePageSchema,
17
- AgentStoreEventEnvelopeSchema,
18
- AgentStoreEventPageSchema,
19
- AppendAgentStoreEventSchema,
20
- agentStoreEventDraft,
21
- canonicalAgentJson
22
- } from "./index-zwkgfq1s.js";
23
- import {
24
- AgentMessageSchema,
25
- AgentRunSchema
26
- } from "./index-gtj3zc53.js";
27
-
28
- // src/agent-runtime/sqlite.ts
29
- import { AsyncLocalStorage } from "node:async_hooks";
30
- import { createHash } from "node:crypto";
31
- import { z as z2 } from "zod";
32
-
33
- // src/agent-runtime/sqlite-purge.ts
34
- var OWNED_TABLES = [
35
- "stitchkit_agent_runtime_spills",
36
- "stitchkit_agent_runtime_schedules",
37
- "stitchkit_agent_runtime_projections",
38
- "stitchkit_agent_runtime_events",
39
- "stitchkit_agent_runtime_messages",
40
- "stitchkit_agent_runtime_seeds",
41
- "stitchkit_agent_runtime_admissions",
42
- "stitchkit_agent_runtime_runs",
43
- "stitchkit_agent_runtime_heads"
44
- ];
45
- function initializeSqliteConversationPurge(database) {
46
- database.exec(`
47
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_purged (
48
- conversation_id TEXT PRIMARY KEY
49
- );
50
- `);
51
- for (const table of OWNED_TABLES) {
52
- for (const operation of ["INSERT", "UPDATE"]) {
53
- database.exec(`
54
- CREATE TRIGGER IF NOT EXISTS ${table}_purge_${operation.toLowerCase()}
55
- BEFORE ${operation} ON ${table}
56
- WHEN EXISTS (
57
- SELECT 1 FROM stitchkit_agent_runtime_purged WHERE conversation_id = NEW.conversation_id
58
- )
59
- BEGIN SELECT RAISE(ABORT, 'Agent conversation has been purged'); END;
60
- `);
61
- }
62
- }
63
- }
64
- function sqliteConversationPurge(database) {
65
- const table = database.prepare("SELECT name FROM sqlite_master WHERE type = 'table' AND name = 'stitchkit_agent_runtime_purged'").get();
66
- if (table === null || table === undefined)
67
- return;
68
- return {
69
- async isPurged(transaction, conversationId) {
70
- const row = transaction.prepare("SELECT conversation_id FROM stitchkit_agent_runtime_purged WHERE conversation_id = ?").get(conversationId);
71
- return row !== null && row !== undefined;
72
- },
73
- async remove(transaction, conversationId) {
74
- transaction.prepare("INSERT INTO stitchkit_agent_runtime_purged (conversation_id) VALUES (?)").run(conversationId);
75
- for (const table2 of OWNED_TABLES) {
76
- transaction.prepare(`DELETE FROM ${table2} WHERE conversation_id = ?`).run(conversationId);
77
- }
78
- transaction.prepare("DELETE FROM stitchkit_agent_runtime_children WHERE parent_conversation_id = ? OR child_conversation_id = ?").run(conversationId, conversationId);
79
- }
80
- };
81
- }
82
-
83
- // src/agent-runtime/store-migrations/v1-to-v2.ts
84
- import { randomUUID } from "node:crypto";
85
- import { z } from "zod";
86
- var ConversationRowSchema = z.object({
87
- conversation_id: z.string().min(1),
88
- version: z.int().nonnegative()
89
- });
90
- var PayloadRowSchema = z.object({
91
- payload: z.string(),
92
- terminal_assistant_payload: z.string().nullable().optional()
93
- });
94
- var HistoryRowSchema = z.object({
95
- payload: z.string(),
96
- active: z.union([z.literal(0), z.literal(1)])
97
- });
98
- var AdmissionRowSchema = z.object({
99
- conversation_id: z.string(),
100
- idempotency_key: z.string(),
101
- input_payload: z.string(),
102
- run_id: z.string(),
103
- assistant_message_id: z.string()
104
- });
105
- function parseJson(value) {
106
- return JSON.parse(value);
107
- }
108
- function createDurableTables(database) {
109
- database.exec(`
110
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_events (
111
- row_id INTEGER PRIMARY KEY AUTOINCREMENT,
112
- conversation_id TEXT NOT NULL,
113
- seq INTEGER NOT NULL CHECK (seq > 0),
114
- event_id TEXT NOT NULL UNIQUE,
115
- schema_version INTEGER NOT NULL CHECK (schema_version > 0),
116
- kind TEXT NOT NULL,
117
- occurred_at TEXT NOT NULL,
118
- ignorable INTEGER NOT NULL DEFAULT 0 CHECK (ignorable IN (0, 1)),
119
- payload TEXT NOT NULL,
120
- UNIQUE (conversation_id, seq)
121
- );
122
- CREATE INDEX IF NOT EXISTS stitchkit_agent_runtime_events_time
123
- ON stitchkit_agent_runtime_events (conversation_id, occurred_at, seq);
124
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_projections (
125
- conversation_id TEXT NOT NULL,
126
- name TEXT NOT NULL,
127
- version INTEGER NOT NULL CHECK (version > 0),
128
- upto_seq INTEGER NOT NULL CHECK (upto_seq >= 0),
129
- payload TEXT NOT NULL,
130
- updated_at TEXT NOT NULL,
131
- PRIMARY KEY (conversation_id, name)
132
- );
133
- CREATE INDEX IF NOT EXISTS stitchkit_agent_runtime_projection_updates
134
- ON stitchkit_agent_runtime_projections (name, updated_at, conversation_id);
135
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_spills (
136
- reference_id TEXT PRIMARY KEY,
137
- conversation_id TEXT NOT NULL,
138
- run_id TEXT,
139
- tool_call_id TEXT,
140
- media_type TEXT NOT NULL,
141
- bytes INTEGER NOT NULL CHECK (bytes >= 0),
142
- sha256 TEXT NOT NULL,
143
- created_at TEXT NOT NULL,
144
- expires_at TEXT,
145
- authorization_payload TEXT,
146
- payload BLOB NOT NULL
147
- );
148
- CREATE INDEX IF NOT EXISTS stitchkit_agent_runtime_spills_owner
149
- ON stitchkit_agent_runtime_spills (conversation_id, created_at);
150
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_schedules (
151
- id TEXT PRIMARY KEY,
152
- conversation_id TEXT NOT NULL,
153
- kind TEXT NOT NULL,
154
- next_at TEXT NOT NULL,
155
- interval_ms INTEGER,
156
- time_zone TEXT,
157
- input_payload TEXT NOT NULL,
158
- state TEXT NOT NULL,
159
- occurrence INTEGER NOT NULL DEFAULT 0 CHECK (occurrence >= 0),
160
- claim_owner TEXT,
161
- claim_until TEXT,
162
- created_at TEXT NOT NULL,
163
- updated_at TEXT NOT NULL
164
- );
165
- CREATE INDEX IF NOT EXISTS stitchkit_agent_runtime_schedules_due
166
- ON stitchkit_agent_runtime_schedules (state, next_at);
167
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_children (
168
- parent_conversation_id TEXT NOT NULL,
169
- child_conversation_id TEXT NOT NULL UNIQUE,
170
- seed_upto_seq INTEGER,
171
- state TEXT NOT NULL,
172
- budget_payload TEXT NOT NULL,
173
- usage_payload TEXT NOT NULL,
174
- result_reference TEXT,
175
- created_at TEXT NOT NULL,
176
- updated_at TEXT NOT NULL,
177
- PRIMARY KEY (parent_conversation_id, child_conversation_id)
178
- );
179
- `);
180
- try {
181
- database.exec(`
182
- CREATE VIRTUAL TABLE IF NOT EXISTS stitchkit_agent_runtime_events_fts
183
- USING fts5(
184
- conversation_id UNINDEXED,
185
- event_seq UNINDEXED,
186
- occurred_at UNINDEXED,
187
- body,
188
- tokenize = 'unicode61 remove_diacritics 2'
189
- );
190
- CREATE TRIGGER IF NOT EXISTS stitchkit_agent_runtime_events_fts_insert
191
- AFTER INSERT ON stitchkit_agent_runtime_events BEGIN
192
- INSERT INTO stitchkit_agent_runtime_events_fts(
193
- rowid, conversation_id, event_seq, occurred_at, body
194
- ) VALUES (new.row_id, new.conversation_id, new.seq, new.occurred_at, new.payload);
195
- END;
196
- CREATE TRIGGER IF NOT EXISTS stitchkit_agent_runtime_events_fts_delete
197
- AFTER DELETE ON stitchkit_agent_runtime_events BEGIN
198
- DELETE FROM stitchkit_agent_runtime_events_fts WHERE rowid = old.row_id;
199
- END;
200
- `);
201
- } catch (error) {
202
- throw new Error("SQLite agent-runtime requires FTS5 support", { cause: error });
203
- }
204
- }
205
- function writeBaselines(database, migratedAt) {
206
- const conversations = database.prepare("SELECT conversation_id, version FROM stitchkit_agent_runtime_heads ORDER BY conversation_id").all().map((row) => ConversationRowSchema.parse(row));
207
- const insert = database.prepare(`
208
- INSERT INTO stitchkit_agent_runtime_events (
209
- conversation_id, seq, event_id, schema_version, kind, occurred_at, ignorable, payload
210
- ) VALUES (?, 1, ?, 1, 'runtime/baseline', ?, 0, ?)
211
- `);
212
- for (const conversation of conversations) {
213
- const rows = database.prepare("SELECT payload, active FROM stitchkit_agent_runtime_messages WHERE conversation_id = ? ORDER BY position, rowid").all(conversation.conversation_id).map((row) => {
214
- const parsed = HistoryRowSchema.parse(row);
215
- return {
216
- message: AgentMessageSchema.parse(parseJson(parsed.payload)),
217
- active: parsed.active === 1
218
- };
219
- });
220
- const messages = rows.map((row) => row.message);
221
- const compacted = rows.filter((row) => !row.active).map((row) => row.message.id);
222
- const runs = database.prepare("SELECT payload, terminal_assistant_payload FROM stitchkit_agent_runtime_runs WHERE conversation_id = ? ORDER BY created_at, run_id").all(conversation.conversation_id).map((value) => {
223
- const row = PayloadRowSchema.parse(value);
224
- return {
225
- schemaVersion: 1,
226
- run: AgentRunSchema.parse(parseJson(row.payload)),
227
- ...row.terminal_assistant_payload ? {
228
- terminalAssistant: AgentMessageSchema.parse(parseJson(row.terminal_assistant_payload))
229
- } : {}
230
- };
231
- });
232
- const admissions = database.prepare("SELECT conversation_id, idempotency_key, input_payload, run_id, assistant_message_id FROM stitchkit_agent_runtime_admissions WHERE conversation_id = ? ORDER BY idempotency_key").all(conversation.conversation_id).map((value) => {
233
- const row = AdmissionRowSchema.parse(value);
234
- return {
235
- schemaVersion: 1,
236
- conversationId: row.conversation_id,
237
- idempotencyKey: row.idempotency_key,
238
- input: AgentMessageSchema.parse(parseJson(row.input_payload)),
239
- runId: row.run_id,
240
- assistantMessageId: row.assistant_message_id
241
- };
242
- });
243
- const asOf = messages.at(-1)?.createdAt ?? runs.at(-1)?.run.createdAt;
244
- insert.run(conversation.conversation_id, randomUUID(), migratedAt, canonicalAgentJson({
245
- migratedAt,
246
- ...asOf !== undefined && { asOf },
247
- head: {
248
- schemaVersion: 1,
249
- conversationId: conversation.conversation_id,
250
- version: conversation.version
251
- },
252
- messages,
253
- ...compacted.length > 0 && { compacted },
254
- runs,
255
- admissions
256
- }));
257
- }
258
- }
259
- function migrateAgentRuntimeSqliteV1ToV2(database, migratedAt = new Date().toISOString()) {
260
- createDurableTables(database);
261
- writeBaselines(database, migratedAt);
262
- database.prepare("UPDATE stitchkit_agent_runtime_meta SET value = '2' WHERE key = 'schema_version'").run();
263
- }
264
- function createAgentRuntimeSqliteV2Tables(database) {
265
- createDurableTables(database);
266
- }
267
-
268
- // src/agent-runtime/store-migrations/v2-to-v3.ts
269
- function createAgentRuntimeSqliteV3Tables(database) {
270
- database.exec(`
271
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_seeds (
272
- conversation_id TEXT NOT NULL,
273
- seed_key TEXT NOT NULL,
274
- message_ids TEXT NOT NULL,
275
- created_at TEXT NOT NULL,
276
- PRIMARY KEY (conversation_id, seed_key)
277
- );
278
- `);
279
- }
280
- function migrateAgentRuntimeSqliteV2ToV3(database) {
281
- createAgentRuntimeSqliteV3Tables(database);
282
- database.prepare("UPDATE stitchkit_agent_runtime_meta SET value = '3' WHERE key = 'schema_version'").run();
283
- }
284
-
285
- // src/agent-runtime/sqlite.ts
286
- var HeadRowSchema = z2.object({ version: z2.number().int().nonnegative() });
287
- var RunRowSchema = z2.object({
288
- payload: z2.string(),
289
- terminal_assistant_payload: z2.string().nullable()
290
- });
291
- var AdmissionRowSchema2 = z2.object({
292
- conversation_id: z2.string(),
293
- idempotency_key: z2.string(),
294
- input_payload: z2.string(),
295
- run_id: z2.string(),
296
- assistant_message_id: z2.string()
297
- });
298
- var SeedRowSchema = z2.object({
299
- conversation_id: z2.string(),
300
- seed_key: z2.string(),
301
- message_ids: z2.string()
302
- });
303
- var MessageRowSchema = z2.object({ payload: z2.string() });
304
- var PositionedMessageRowSchema = z2.object({ position: z2.number().int().nonnegative() });
305
- var RecoverableRowSchema = z2.object({
306
- conversation_id: z2.string(),
307
- run_id: z2.string(),
308
- payload: z2.string()
309
- });
310
- var MetaRowSchema = z2.object({ value: z2.string() });
311
- var TableRowSchema = z2.object({ name: z2.string() });
312
- var ConversationHeadRowSchema = z2.object({
313
- conversation_id: z2.string(),
314
- version: z2.number().int().nonnegative()
315
- });
316
- var CountRowSchema = z2.object({ count: z2.number().int().nonnegative() });
317
- var MessagePageRowSchema = z2.object({
318
- row_id: z2.number().int().positive(),
319
- position: z2.number().int().nonnegative(),
320
- active: z2.union([z2.literal(0), z2.literal(1)]),
321
- payload: z2.string()
322
- });
323
- var EventRowSchema = z2.object({
324
- event_id: z2.string(),
325
- conversation_id: z2.string(),
326
- seq: z2.int().positive(),
327
- schema_version: z2.int().positive(),
328
- kind: z2.string(),
329
- occurred_at: z2.string(),
330
- ignorable: z2.union([z2.literal(0), z2.literal(1)]),
331
- payload: z2.string()
332
- });
333
- var ArchiveProjectionRowSchema = z2.object({
334
- name: z2.string(),
335
- version: z2.int().positive(),
336
- upto_seq: z2.int().nonnegative(),
337
- payload: z2.string(),
338
- updated_at: z2.string()
339
- });
340
- var ArchiveSpillRowSchema = z2.object({
341
- reference_id: z2.string(),
342
- run_id: z2.string().nullable(),
343
- tool_call_id: z2.string().nullable(),
344
- media_type: z2.string(),
345
- bytes: z2.int().nonnegative(),
346
- sha256: z2.string(),
347
- created_at: z2.string(),
348
- expires_at: z2.string().nullable(),
349
- authorization_payload: z2.string().nullable(),
350
- payload: z2.instanceof(Uint8Array)
351
- });
352
- var SCHEMA_VERSION = 3;
353
- var TABLES = [
354
- "stitchkit_agent_runtime_heads",
355
- "stitchkit_agent_runtime_runs",
356
- "stitchkit_agent_runtime_admissions",
357
- "stitchkit_agent_runtime_messages",
358
- "stitchkit_agent_runtime_seeds",
359
- "stitchkit_agent_runtime_events",
360
- "stitchkit_agent_runtime_projections",
361
- "stitchkit_agent_runtime_spills",
362
- "stitchkit_agent_runtime_schedules",
363
- "stitchkit_agent_runtime_children"
364
- ];
365
- function parseJson2(value) {
366
- return JSON.parse(value);
367
- }
368
- function encodeJson(value) {
369
- return JSON.stringify(value);
370
- }
371
- function missing(value) {
372
- return value === null || value === undefined;
373
- }
374
- function placeholders(count) {
375
- return Array.from({ length: count }, () => "?").join(", ");
376
- }
377
- function parseRunRow(value) {
378
- const row = RunRowSchema.parse(value);
379
- return AgentStoredRunSchema.parse({
380
- schemaVersion: 1,
381
- run: AgentRunSchema.parse(parseJson2(row.payload)),
382
- ...row.terminal_assistant_payload === null ? {} : {
383
- terminalAssistant: AgentMessageSchema.parse(parseJson2(row.terminal_assistant_payload))
384
- }
385
- });
386
- }
387
- function parseEventRow(value) {
388
- const row = EventRowSchema.parse(value);
389
- return AgentStoreEventEnvelopeSchema.parse({
390
- schemaVersion: row.schema_version,
391
- eventId: row.event_id,
392
- conversationId: row.conversation_id,
393
- seq: row.seq,
394
- kind: row.kind,
395
- occurredAt: row.occurred_at,
396
- payload: parseJson2(row.payload),
397
- ...row.ignorable === 1 && { ignorable: true }
398
- });
399
- }
400
- function recoveryCursor(conversationId, runId) {
401
- return encodeJson([conversationId, runId]);
402
- }
403
- function parseRecoveryCursor(cursor) {
404
- return z2.tuple([z2.string().min(1), z2.string().min(1)]).parse(parseJson2(cursor));
405
- }
406
- function conversationCursor(conversationId) {
407
- return encodeJson([conversationId]);
408
- }
409
- function parseConversationCursor(cursor) {
410
- return z2.tuple([z2.string().min(1)]).parse(parseJson2(cursor))[0];
411
- }
412
- function messageCursor(position, rowId) {
413
- return encodeJson([position, rowId]);
414
- }
415
- function parseMessageCursor(cursor) {
416
- const parsed = z2.union([
417
- z2.tuple([z2.int().nonnegative(), z2.int().positive()]),
418
- z2.tuple([z2.int().nonnegative()])
419
- ]).parse(parseJson2(cursor));
420
- const [position, rowId] = parsed;
421
- return { position, ...rowId !== undefined && { rowId } };
422
- }
423
- function messagePreview(message) {
424
- const text = message.parts.find((part) => part.type === "text");
425
- return text?.type === "text" ? text.text.slice(0, 160) : message.role;
426
- }
427
- function initializeAgentRuntimeSqlite(database) {
428
- database.exec("BEGIN IMMEDIATE");
429
- try {
430
- const existing = database.prepare(`SELECT name FROM sqlite_master WHERE type = 'table' AND name LIKE 'stitchkit_agent_runtime_%' ORDER BY name`).all().map((row) => TableRowSchema.parse(row).name);
431
- const hasMeta = existing.includes("stitchkit_agent_runtime_meta");
432
- if (!hasMeta && existing.length > 0) {
433
- throw new Error("Refusing an unversioned partial Stitchkit agent-runtime SQLite schema");
434
- }
435
- database.exec(`
436
- CREATE TABLE IF NOT EXISTS stitchkit_agent_runtime_meta (
437
- key TEXT PRIMARY KEY,
438
- value TEXT NOT NULL
439
- );
440
- `);
441
- const versionRow = database.prepare("SELECT value FROM stitchkit_agent_runtime_meta WHERE key = 'schema_version'").get();
442
- if (!missing(versionRow)) {
443
- const version = Number(MetaRowSchema.parse(versionRow).value);
444
- if (version === 1) {
445
- migrateAgentRuntimeSqliteV1ToV2(database);
446
- migrateAgentRuntimeSqliteV2ToV3(database);
447
- initializeSqliteConversationPurge(database);
448
- database.exec("COMMIT");
449
- return;
450
- }
451
- if (version === 2) {
452
- migrateAgentRuntimeSqliteV2ToV3(database);
453
- initializeSqliteConversationPurge(database);
454
- database.exec("COMMIT");
455
- return;
456
- }
457
- if (version !== SCHEMA_VERSION) {
458
- throw new Error(`Unsupported Stitchkit agent-runtime SQLite schema version ${version}; expected ${SCHEMA_VERSION}`);
459
- }
460
- const missingTables = TABLES.filter((table) => !existing.includes(table));
461
- if (missingTables.length > 0) {
462
- throw new Error(`Refusing a partial Stitchkit agent-runtime SQLite schema; missing ${missingTables.join(", ")}`);
463
- }
464
- initializeSqliteConversationPurge(database);
465
- database.exec("COMMIT");
466
- return;
467
- }
468
- if (existing.some((table) => table !== "stitchkit_agent_runtime_meta")) {
469
- throw new Error("Refusing an unversioned partial Stitchkit agent-runtime SQLite schema");
470
- }
471
- database.exec(`
472
- CREATE TABLE stitchkit_agent_runtime_heads (
473
- conversation_id TEXT PRIMARY KEY,
474
- version INTEGER NOT NULL CHECK (version >= 0)
475
- );
476
- CREATE TABLE stitchkit_agent_runtime_runs (
477
- conversation_id TEXT NOT NULL,
478
- run_id TEXT NOT NULL,
479
- assistant_message_id TEXT NOT NULL,
480
- state TEXT NOT NULL,
481
- created_at TEXT NOT NULL,
482
- payload TEXT NOT NULL,
483
- terminal_assistant_payload TEXT,
484
- PRIMARY KEY (conversation_id, run_id),
485
- UNIQUE (conversation_id, assistant_message_id)
486
- );
487
- CREATE INDEX stitchkit_agent_runtime_recoverable
488
- ON stitchkit_agent_runtime_runs (state, conversation_id, run_id);
489
- CREATE TABLE stitchkit_agent_runtime_admissions (
490
- conversation_id TEXT NOT NULL,
491
- idempotency_key TEXT NOT NULL,
492
- input_message_id TEXT NOT NULL,
493
- run_id TEXT NOT NULL,
494
- assistant_message_id TEXT NOT NULL,
495
- input_payload TEXT NOT NULL,
496
- PRIMARY KEY (conversation_id, idempotency_key),
497
- UNIQUE (conversation_id, input_message_id)
498
- );
499
- CREATE TABLE stitchkit_agent_runtime_messages (
500
- conversation_id TEXT NOT NULL,
501
- id TEXT NOT NULL,
502
- position INTEGER NOT NULL CHECK (position >= 0),
503
- active INTEGER NOT NULL DEFAULT 1 CHECK (active IN (0, 1)),
504
- payload TEXT NOT NULL,
505
- PRIMARY KEY (conversation_id, id)
506
- );
507
- `);
508
- createAgentRuntimeSqliteV2Tables(database);
509
- createAgentRuntimeSqliteV3Tables(database);
510
- database.prepare("INSERT INTO stitchkit_agent_runtime_meta (key, value) VALUES ('schema_version', '3')").run();
511
- initializeSqliteConversationPurge(database);
512
- database.exec("COMMIT");
513
- } catch (error) {
514
- database.exec("ROLLBACK");
515
- throw error;
516
- }
517
- }
518
- function createSqliteAgentRuntimeStore(config) {
519
- const database = config.database;
520
- if (config.initialize !== false) {
521
- try {
522
- initializeAgentRuntimeSqlite(database);
523
- } catch (error) {
524
- database.close();
525
- throw error;
526
- }
527
- }
528
- let closing = false;
529
- let closed = false;
530
- let tail = Promise.resolve();
531
- const insideScope = new AsyncLocalStorage;
532
- const serial = (work) => {
533
- if (closing || closed) {
534
- return Promise.reject(new Error("SQLite agent-runtime store is closing"));
535
- }
536
- if (insideScope.getStore()) {
537
- return Promise.reject(new Error("SQLite agent-runtime store called from inside its own transaction scope; use scope.database and scope.appendEvent"));
538
- }
539
- const result = tail.then(work, work);
540
- tail = result.then(() => {
541
- return;
542
- }, () => {
543
- return;
544
- });
545
- return result;
546
- };
547
- const runTransaction = (access, work) => serial(async () => {
548
- database.exec(access === "read" ? "BEGIN" : "BEGIN IMMEDIATE");
549
- try {
550
- const result = await work(database);
551
- database.exec("COMMIT");
552
- return result;
553
- } catch (error) {
554
- database.exec("ROLLBACK");
555
- throw error;
556
- }
557
- });
558
- const driver = {
559
- conversations: sqliteConversationPurge(database),
560
- transaction: (work, options) => runTransaction(options?.access ?? "write", work),
561
- head: {
562
- async load(transaction, conversationId) {
563
- const value = transaction.prepare("SELECT version FROM stitchkit_agent_runtime_heads WHERE conversation_id = ?").get(conversationId);
564
- if (missing(value))
565
- return;
566
- const row = HeadRowSchema.parse(value);
567
- return AgentRuntimeHeadSchema.parse({
568
- schemaVersion: 1,
569
- conversationId,
570
- version: row.version
571
- });
572
- },
573
- async compareAndSwap(transaction, input) {
574
- const current = transaction.prepare("SELECT version FROM stitchkit_agent_runtime_heads WHERE conversation_id = ?").get(input.conversationId);
575
- const actualVersion = missing(current) ? 0 : HeadRowSchema.parse(current).version;
576
- if (actualVersion !== input.expectedVersion)
577
- return { outcome: "conflict", actualVersion };
578
- transaction.prepare(`
579
- INSERT INTO stitchkit_agent_runtime_heads (conversation_id, version)
580
- VALUES (?, ?)
581
- ON CONFLICT (conversation_id) DO UPDATE SET version = excluded.version
582
- `).run(input.conversationId, input.next.version);
583
- return { outcome: "applied" };
584
- }
585
- },
586
- runs: {
587
- async load(transaction, input) {
588
- const row = transaction.prepare(`
589
- SELECT payload, terminal_assistant_payload
590
- FROM stitchkit_agent_runtime_runs
591
- WHERE conversation_id = ? AND run_id = ?
592
- `).get(input.conversationId, input.runId);
593
- return missing(row) ? undefined : parseRunRow(row);
594
- },
595
- async loadByAssistantMessageId(transaction, input) {
596
- const row = transaction.prepare(`
597
- SELECT payload, terminal_assistant_payload
598
- FROM stitchkit_agent_runtime_runs
599
- WHERE conversation_id = ? AND assistant_message_id = ?
600
- `).get(input.conversationId, input.assistantMessageId);
601
- return missing(row) ? undefined : parseRunRow(row);
602
- },
603
- async loadMany(transaction, input) {
604
- if (input.runIds.length === 0)
605
- return [];
606
- return transaction.prepare(`
607
- SELECT payload, terminal_assistant_payload
608
- FROM stitchkit_agent_runtime_runs
609
- WHERE conversation_id = ? AND run_id IN (${placeholders(input.runIds.length)})
610
- `).all(input.conversationId, ...input.runIds).map(parseRunRow);
611
- },
612
- async listActive(transaction, conversationId) {
613
- return transaction.prepare(`
614
- SELECT payload, terminal_assistant_payload
615
- FROM stitchkit_agent_runtime_runs
616
- WHERE conversation_id = ? AND state IN ('queued', 'running', 'interrupt_requested')
617
- `).all(conversationId).map(parseRunRow);
618
- },
619
- async save(transaction, rawRecord) {
620
- const record = AgentStoredRunSchema.parse(rawRecord);
621
- transaction.prepare(`
622
- INSERT INTO stitchkit_agent_runtime_runs (
623
- conversation_id, run_id, assistant_message_id, state, created_at, payload,
624
- terminal_assistant_payload
625
- ) VALUES (?, ?, ?, ?, ?, ?, ?)
626
- ON CONFLICT (conversation_id, run_id) DO UPDATE SET
627
- assistant_message_id = excluded.assistant_message_id,
628
- state = excluded.state,
629
- created_at = excluded.created_at,
630
- payload = excluded.payload,
631
- terminal_assistant_payload = excluded.terminal_assistant_payload
632
- `).run(record.run.conversationId, record.run.id, record.run.assistantMessageId, record.run.state, record.run.createdAt, encodeJson(record.run), record.terminalAssistant ? encodeJson(record.terminalAssistant) : null);
633
- }
634
- },
635
- admissions: {
636
- async load(transaction, input) {
637
- const value = transaction.prepare(`
638
- SELECT conversation_id, idempotency_key, input_payload, run_id, assistant_message_id
639
- FROM stitchkit_agent_runtime_admissions
640
- WHERE conversation_id = ? AND idempotency_key = ?
641
- `).get(input.conversationId, input.idempotencyKey);
642
- if (missing(value))
643
- return;
644
- const row = AdmissionRowSchema2.parse(value);
645
- return AgentAdmissionReceiptSchema.parse({
646
- schemaVersion: 1,
647
- conversationId: row.conversation_id,
648
- idempotencyKey: row.idempotency_key,
649
- input: AgentMessageSchema.parse(parseJson2(row.input_payload)),
650
- runId: row.run_id,
651
- assistantMessageId: row.assistant_message_id
652
- });
653
- },
654
- async loadByInputMessageId(transaction, input) {
655
- const value = transaction.prepare(`
656
- SELECT conversation_id, idempotency_key, input_payload, run_id, assistant_message_id
657
- FROM stitchkit_agent_runtime_admissions
658
- WHERE conversation_id = ? AND input_message_id = ?
659
- `).get(input.conversationId, input.inputMessageId);
660
- if (missing(value))
661
- return;
662
- const row = AdmissionRowSchema2.parse(value);
663
- return AgentAdmissionReceiptSchema.parse({
664
- schemaVersion: 1,
665
- conversationId: row.conversation_id,
666
- idempotencyKey: row.idempotency_key,
667
- input: AgentMessageSchema.parse(parseJson2(row.input_payload)),
668
- runId: row.run_id,
669
- assistantMessageId: row.assistant_message_id
670
- });
671
- },
672
- async create(transaction, rawReceipt) {
673
- const receipt = AgentAdmissionReceiptSchema.parse(rawReceipt);
674
- transaction.prepare(`
675
- INSERT INTO stitchkit_agent_runtime_admissions (
676
- conversation_id, idempotency_key, input_message_id, run_id,
677
- assistant_message_id, input_payload
678
- ) VALUES (?, ?, ?, ?, ?, ?)
679
- `).run(receipt.conversationId, receipt.idempotencyKey, receipt.input.id, receipt.runId, receipt.assistantMessageId, encodeJson(receipt.input));
680
- }
681
- },
682
- seeds: {
683
- async load(transaction, input) {
684
- const value = transaction.prepare(`
685
- SELECT conversation_id, seed_key, message_ids
686
- FROM stitchkit_agent_runtime_seeds
687
- WHERE conversation_id = ? AND seed_key = ?
688
- `).get(input.conversationId, input.seedKey);
689
- if (missing(value))
690
- return;
691
- const row = SeedRowSchema.parse(value);
692
- return AgentSeedReceiptSchema.parse({
693
- schemaVersion: 1,
694
- conversationId: row.conversation_id,
695
- seedKey: row.seed_key,
696
- messageIds: z2.array(z2.string().min(1)).parse(parseJson2(row.message_ids))
697
- });
698
- },
699
- async create(transaction, rawReceipt) {
700
- const receipt = AgentSeedReceiptSchema.parse(rawReceipt);
701
- transaction.prepare(`
702
- INSERT INTO stitchkit_agent_runtime_seeds (
703
- conversation_id, seed_key, message_ids, created_at
704
- ) VALUES (?, ?, ?, ?)
705
- `).run(receipt.conversationId, receipt.seedKey, encodeJson(receipt.messageIds), new Date().toISOString());
706
- }
707
- },
708
- history: {
709
- async load(transaction, conversationId) {
710
- return transaction.prepare(`
711
- SELECT payload FROM stitchkit_agent_runtime_messages
712
- WHERE conversation_id = ? AND active = 1 ORDER BY position ASC
713
- `).all(conversationId).map((value) => AgentMessageSchema.parse(parseJson2(MessageRowSchema.parse(value).payload)));
714
- },
715
- async hasMessage(transaction, input) {
716
- const row = transaction.prepare(`
717
- SELECT count(*) AS count FROM stitchkit_agent_runtime_messages
718
- WHERE conversation_id = ? AND id = ?
719
- `).get(input.conversationId, input.messageId);
720
- return CountRowSchema.parse(row).count > 0;
721
- },
722
- async apply(transaction, rawMutation) {
723
- const mutation = AgentHistoryMutationSchema.parse(rawMutation);
724
- const message = mutation.type === "admit" ? mutation.input : mutation.type === "upsert-assistant" ? mutation.message : mutation.type === "seed" ? mutation.message : mutation.summary;
725
- if (mutation.type === "seed") {
726
- transaction.prepare(`
727
- UPDATE stitchkit_agent_runtime_messages SET position = position + 1
728
- WHERE conversation_id = ?
729
- `).run(mutation.message.conversationId);
730
- transaction.prepare(`
731
- INSERT INTO stitchkit_agent_runtime_messages
732
- (conversation_id, id, position, active, payload)
733
- VALUES (?, ?, 0, 1, ?)
734
- ON CONFLICT (conversation_id, id) DO UPDATE SET
735
- position = excluded.position,
736
- active = excluded.active,
737
- payload = excluded.payload
738
- `).run(mutation.message.conversationId, mutation.message.id, encodeJson(mutation.message));
739
- return;
740
- }
741
- if (mutation.type === "replace-compacted-range") {
742
- const parameters = mutation.replacedMessageIds;
743
- const rows = transaction.prepare(`
744
- SELECT position FROM stitchkit_agent_runtime_messages
745
- WHERE conversation_id = ? AND active = 1
746
- AND id IN (${placeholders(parameters.length)})
747
- ORDER BY position ASC
748
- `).all(message.conversationId, ...parameters).map((row) => PositionedMessageRowSchema.parse(row));
749
- const anchor = rows.at(-1);
750
- if (!anchor || rows.length !== parameters.length) {
751
- throw new Error("Compaction range changed inside the transaction");
752
- }
753
- transaction.prepare(`
754
- UPDATE stitchkit_agent_runtime_messages SET active = 0
755
- WHERE conversation_id = ? AND id IN (${placeholders(parameters.length)})
756
- `).run(message.conversationId, ...parameters);
757
- transaction.prepare(`
758
- INSERT INTO stitchkit_agent_runtime_messages
759
- (conversation_id, id, position, active, payload)
760
- VALUES (?, ?, ?, 1, ?)
761
- `).run(message.conversationId, message.id, anchor.position, encodeJson(message));
762
- return;
763
- }
764
- const existing = transaction.prepare(`
765
- SELECT position FROM stitchkit_agent_runtime_messages
766
- WHERE conversation_id = ? AND id = ?
767
- `).get(message.conversationId, message.id);
768
- if (!missing(existing)) {
769
- transaction.prepare(`
770
- UPDATE stitchkit_agent_runtime_messages SET payload = ?, active = 1
771
- WHERE conversation_id = ? AND id = ?
772
- `).run(encodeJson(message), message.conversationId, message.id);
773
- return;
774
- }
775
- const last = transaction.prepare(`
776
- SELECT position FROM stitchkit_agent_runtime_messages
777
- WHERE conversation_id = ? ORDER BY position DESC LIMIT 1
778
- `).get(message.conversationId);
779
- const position = missing(last) ? 0 : PositionedMessageRowSchema.parse(last).position + 1;
780
- transaction.prepare(`
781
- INSERT INTO stitchkit_agent_runtime_messages
782
- (conversation_id, id, position, active, payload)
783
- VALUES (?, ?, ?, 1, ?)
784
- `).run(message.conversationId, message.id, position, encodeJson(message));
785
- }
786
- },
787
- events: {
788
- async append(transaction, rawEvent) {
789
- const event = rawEvent;
790
- const last = transaction.prepare("SELECT COALESCE(MAX(seq), 0) AS count FROM stitchkit_agent_runtime_events WHERE conversation_id = ?").get(event.conversationId);
791
- const seq = CountRowSchema.parse(last).count + 1;
792
- transaction.prepare(`
793
- INSERT INTO stitchkit_agent_runtime_events (
794
- conversation_id, seq, event_id, schema_version, kind, occurred_at, ignorable, payload
795
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
796
- `).run(event.conversationId, seq, event.eventId, event.schemaVersion, event.kind, event.occurredAt, event.ignorable ? 1 : 0, encodeJson(event.payload));
797
- return AgentStoreEventEnvelopeSchema.parse({ ...event, seq });
798
- },
799
- async list(transaction, input) {
800
- const clauses = ["conversation_id = ?"];
801
- const values = [input.conversationId];
802
- if (input.fromSeq !== undefined) {
803
- clauses.push("seq >= ?");
804
- values.push(input.fromSeq);
805
- }
806
- if (input.toSeq !== undefined) {
807
- clauses.push("seq <= ?");
808
- values.push(input.toSeq);
809
- }
810
- const rows = transaction.prepare(`
811
- SELECT event_id, conversation_id, seq, schema_version, kind, occurred_at,
812
- ignorable, payload
813
- FROM stitchkit_agent_runtime_events
814
- WHERE ${clauses.join(" AND ")}
815
- ORDER BY seq ASC LIMIT ?
816
- `).all(...values, input.limit + 1).map(parseEventRow);
817
- const hasMore = rows.length > input.limit;
818
- const items = rows.slice(0, input.limit);
819
- const lastEvent = items.at(-1);
820
- return AgentStoreEventPageSchema.parse({
821
- items,
822
- ...hasMore && lastEvent ? { nextSeq: lastEvent.seq + 1 } : {}
823
- });
824
- }
825
- },
826
- archive: {
827
- async export(transaction, conversationId) {
828
- const projections = transaction.prepare(`
829
- SELECT name, version, upto_seq, payload, updated_at
830
- FROM stitchkit_agent_runtime_projections
831
- WHERE conversation_id = ? ORDER BY name
832
- `).all(conversationId).map((raw) => {
833
- const row = ArchiveProjectionRowSchema.parse(raw);
834
- return {
835
- name: row.name,
836
- version: row.version,
837
- uptoSeq: row.upto_seq,
838
- value: z2.json().parse(parseJson2(row.payload)),
839
- updatedAt: row.updated_at
840
- };
841
- });
842
- const spills = transaction.prepare(`
843
- SELECT reference_id, run_id, tool_call_id, media_type, bytes, sha256,
844
- created_at, expires_at, authorization_payload, payload
845
- FROM stitchkit_agent_runtime_spills
846
- WHERE conversation_id = ? ORDER BY created_at, reference_id
847
- `).all(conversationId).map((raw) => {
848
- const row = ArchiveSpillRowSchema.parse(raw);
849
- return {
850
- reference: row.reference_id,
851
- ...row.run_id && { runId: row.run_id },
852
- ...row.tool_call_id && { toolCallId: row.tool_call_id },
853
- mediaType: row.media_type,
854
- bytes: row.bytes,
855
- sha256: row.sha256,
856
- createdAt: row.created_at,
857
- ...row.expires_at && { expiresAt: row.expires_at },
858
- ...row.authorization_payload && {
859
- authorization: z2.json().parse(parseJson2(row.authorization_payload))
860
- },
861
- base64: Buffer.from(row.payload).toString("base64")
862
- };
863
- });
864
- return { projections, spills };
865
- },
866
- async import(transaction, archive) {
867
- for (const raw of archive.projections) {
868
- if (typeof raw === "object" && raw !== null && !Array.isArray(raw) && raw.archiveType === "runtime-snapshot") {
869
- continue;
870
- }
871
- const projection = z2.object({
872
- name: z2.string(),
873
- version: z2.int().positive(),
874
- uptoSeq: z2.int().nonnegative(),
875
- value: z2.json(),
876
- updatedAt: z2.string()
877
- }).strict().parse(raw);
878
- transaction.prepare(`
879
- INSERT INTO stitchkit_agent_runtime_projections
880
- (conversation_id, name, version, upto_seq, payload, updated_at)
881
- VALUES (?, ?, ?, ?, ?, ?)
882
- `).run(archive.conversationId, projection.name, projection.version, projection.uptoSeq, encodeJson(projection.value), projection.updatedAt);
883
- }
884
- for (const raw of archive.spills) {
885
- const spill = z2.object({
886
- reference: z2.string(),
887
- runId: z2.string().optional(),
888
- toolCallId: z2.string().optional(),
889
- mediaType: z2.string(),
890
- bytes: z2.int().nonnegative(),
891
- sha256: z2.string(),
892
- createdAt: z2.string(),
893
- expiresAt: z2.string().optional(),
894
- authorization: z2.json().optional(),
895
- base64: z2.string()
896
- }).strict().parse(raw);
897
- const payload = Buffer.from(spill.base64, "base64");
898
- if (payload.byteLength !== spill.bytes) {
899
- throw new TypeError("Conversation archive spill byte count is inconsistent");
900
- }
901
- if (createHash("sha256").update(payload).digest("hex") !== spill.sha256) {
902
- throw new TypeError("Conversation archive spill digest is inconsistent");
903
- }
904
- transaction.prepare(`
905
- INSERT INTO stitchkit_agent_runtime_spills (
906
- reference_id, conversation_id, run_id, tool_call_id, media_type,
907
- bytes, sha256, created_at, expires_at, authorization_payload, payload
908
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
909
- `).run(spill.reference, archive.conversationId, spill.runId ?? null, spill.toolCallId ?? null, spill.mediaType, spill.bytes, spill.sha256, spill.createdAt, spill.expiresAt ?? null, spill.authorization ? encodeJson(spill.authorization) : null, payload);
910
- }
911
- }
912
- },
913
- scanRecoverable: (input) => runTransaction("read", async () => {
914
- const cursor = input.cursor ? parseRecoveryCursor(input.cursor) : undefined;
915
- const values = cursor ? [cursor[0], cursor[0], cursor[1], input.limit + 1] : [input.limit + 1];
916
- const rows = database.prepare(`
917
- SELECT conversation_id, run_id, payload
918
- FROM stitchkit_agent_runtime_runs
919
- WHERE state IN ('queued', 'running', 'interrupt_requested')
920
- ${cursor ? "AND (conversation_id > ? OR (conversation_id = ? AND run_id > ?))" : ""}
921
- ORDER BY conversation_id ASC, run_id ASC LIMIT ?
922
- `).all(...values).map((row) => RecoverableRowSchema.parse(row));
923
- const hasMore = rows.length > input.limit;
924
- const pageRows = rows.slice(0, input.limit);
925
- const items = pageRows.map((row) => {
926
- const run = AgentRunSchema.parse(parseJson2(row.payload));
927
- return AgentRecoverableDescriptorSchema.parse({
928
- conversationId: row.conversation_id,
929
- run
930
- });
931
- });
932
- const last = pageRows.at(-1);
933
- return AgentRecoverablePageSchema.parse({
934
- items,
935
- ...hasMore && last ? { nextCursor: recoveryCursor(last.conversation_id, last.run_id) } : {}
936
- });
937
- })
938
- };
939
- return {
940
- store: createAgentRuntimeStore(driver),
941
- database,
942
- transaction: (work) => runTransaction("write", (transaction) => insideScope.run(true, () => work({
943
- database: transaction,
944
- appendEvent: async (input) => {
945
- const parsed = AppendAgentStoreEventSchema.parse(input);
946
- if (await driver.conversations?.isPurged(transaction, parsed.conversationId)) {
947
- throw new AgentConversationPurgedError;
948
- }
949
- return driver.events.append(transaction, agentStoreEventDraft(parsed));
950
- }
951
- }))),
952
- conversations: {
953
- list: (input) => runTransaction("read", async () => {
954
- if (!Number.isSafeInteger(input.limit) || input.limit < 1 || input.limit > 1000) {
955
- throw new TypeError("Conversation page limit must be between 1 and 1000");
956
- }
957
- const cursor = input.cursor ? parseConversationCursor(input.cursor) : undefined;
958
- const search = input.search?.trim();
959
- const clauses = [
960
- ...cursor ? ["conversation_id > ?"] : [],
961
- ...search ? ["instr(conversation_id, ?) > 0"] : []
962
- ];
963
- const parameters = [
964
- ...cursor ? [cursor] : [],
965
- ...search ? [search] : [],
966
- input.limit + 1
967
- ];
968
- const rows = database.prepare(`
969
- SELECT conversation_id, version FROM stitchkit_agent_runtime_heads
970
- ${clauses.length > 0 ? `WHERE ${clauses.join(" AND ")}` : ""}
971
- ORDER BY conversation_id ASC LIMIT ?
972
- `).all(...parameters).map((row) => ConversationHeadRowSchema.parse(row));
973
- const hasMore = rows.length > input.limit;
974
- const pageRows = rows.slice(0, input.limit);
975
- const items = pageRows.map((row) => {
976
- const latestRaw = database.prepare(`
977
- SELECT payload FROM stitchkit_agent_runtime_messages
978
- WHERE conversation_id = ? AND active = 1
979
- ORDER BY position DESC LIMIT 1
980
- `).get(row.conversation_id);
981
- if (missing(latestRaw)) {
982
- throw new Error("Agent conversation head has no active history");
983
- }
984
- const latest = AgentMessageSchema.parse(parseJson2(MessageRowSchema.parse(latestRaw).payload));
985
- const active = CountRowSchema.parse(database.prepare(`
986
- SELECT count(*) AS count FROM stitchkit_agent_runtime_runs
987
- WHERE conversation_id = ?
988
- AND state IN ('queued', 'running', 'interrupt_requested')
989
- `).get(row.conversation_id));
990
- return {
991
- conversationId: row.conversation_id,
992
- version: row.version,
993
- updatedAt: latest.updatedAt,
994
- preview: messagePreview(latest),
995
- activeRuns: active.count
996
- };
997
- });
998
- const last = pageRows.at(-1);
999
- return AgentConversationPageSchema.parse({
1000
- items,
1001
- ...hasMore && last ? { nextCursor: conversationCursor(last.conversation_id) } : {}
1002
- });
1003
- }),
1004
- messages: (input) => runTransaction("read", async () => {
1005
- if (!Number.isSafeInteger(input.limit) || input.limit < 1 || input.limit > 1000) {
1006
- throw new TypeError("Conversation message page limit must be between 1 and 1000");
1007
- }
1008
- const cursor = input.cursor ? parseMessageCursor(input.cursor) : undefined;
1009
- const before = input.direction === "before";
1010
- const direction = before ? "DESC" : "ASC";
1011
- const comparison = cursor === undefined ? "" : cursor.rowId === undefined ? `AND position ${before ? "<" : ">"} ?` : `AND (position, rowid) ${before ? "<" : ">"} (?, ?)`;
1012
- const rows = database.prepare(`
1013
- SELECT rowid AS row_id, position, active, payload
1014
- FROM stitchkit_agent_runtime_messages
1015
- WHERE conversation_id = ?
1016
- ${input.includeCompacted === true ? "" : "AND active = 1"}
1017
- ${comparison}
1018
- ORDER BY position ${direction}, rowid ${direction} LIMIT ?
1019
- `).all(input.conversationId, ...cursor === undefined ? [] : cursor.rowId === undefined ? [cursor.position] : [cursor.position, cursor.rowId], input.limit + 1).map((row) => MessagePageRowSchema.parse(row));
1020
- const hasMore = rows.length > input.limit;
1021
- const pageRows = rows.slice(0, input.limit);
1022
- const ordered = before ? [...pageRows].reverse() : pageRows;
1023
- const boundary = pageRows.at(-1);
1024
- const items = ordered.map((row) => ({
1025
- message: AgentMessageSchema.parse(parseJson2(row.payload)),
1026
- active: row.active === 1
1027
- }));
1028
- return AgentConversationMessagePageSchema.parse({
1029
- items: items.map((entry) => entry.message),
1030
- compacted: items.filter((entry) => !entry.active).map((entry) => entry.message.id),
1031
- ...hasMore && boundary ? { nextCursor: messageCursor(boundary.position, boundary.row_id) } : {}
1032
- });
1033
- })
1034
- },
1035
- async close() {
1036
- if (closed)
1037
- return;
1038
- closing = true;
1039
- await tail;
1040
- database.close();
1041
- closed = true;
1042
- }
1043
- };
1044
- }
1045
-
1046
- export { initializeAgentRuntimeSqlite, createSqliteAgentRuntimeStore };