stitchkit 0.94.0 → 0.94.1

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 (346) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/dist/agent-runtime/coding-shell-process.d.ts.map +1 -1
  3. package/dist/agent-runtime/coding-tool-listing.d.ts.map +1 -1
  4. package/dist/agent-runtime/coding-tool-search-patch.d.ts.map +1 -1
  5. package/dist/agent-runtime/contained-darwin.d.ts +38 -0
  6. package/dist/agent-runtime/contained-darwin.d.ts.map +1 -0
  7. package/dist/agent-runtime/contained-files.d.ts +11 -26
  8. package/dist/agent-runtime/contained-files.d.ts.map +1 -1
  9. package/dist/agent-runtime/contained-scan.d.ts +21 -0
  10. package/dist/agent-runtime/contained-scan.d.ts.map +1 -0
  11. package/dist/agent-runtime/contained-write.d.ts +9 -0
  12. package/dist/agent-runtime/contained-write.d.ts.map +1 -0
  13. package/dist/agent-runtime/deferred-tool-types.d.ts +3 -2
  14. package/dist/agent-runtime/deferred-tool-types.d.ts.map +1 -1
  15. package/dist/agent-runtime/harness-control.d.ts +0 -1
  16. package/dist/agent-runtime/harness-control.d.ts.map +1 -1
  17. package/dist/agent-runtime/harness.d.ts +0 -5
  18. package/dist/agent-runtime/harness.d.ts.map +1 -1
  19. package/dist/agent-runtime/managed-tools.d.ts +3 -2
  20. package/dist/agent-runtime/managed-tools.d.ts.map +1 -1
  21. package/dist/agent-runtime/runtime.d.ts +1 -1
  22. package/dist/agent-runtime/runtime.d.ts.map +1 -1
  23. package/dist/agent-runtime/schedule-records.d.ts +34 -0
  24. package/dist/agent-runtime/schedule-records.d.ts.map +1 -0
  25. package/dist/agent-runtime/schedules.d.ts +34 -0
  26. package/dist/agent-runtime/schedules.d.ts.map +1 -1
  27. package/dist/agent-runtime/store-conformance-lifecycle.d.ts +434 -0
  28. package/dist/agent-runtime/store-conformance-lifecycle.d.ts.map +1 -0
  29. package/dist/agent-runtime/store-conformance-ordering.d.ts +18 -0
  30. package/dist/agent-runtime/store-conformance-ordering.d.ts.map +1 -0
  31. package/dist/agent-runtime/store-conformance-support.d.ts +130 -0
  32. package/dist/agent-runtime/store-conformance-support.d.ts.map +1 -0
  33. package/dist/agent-runtime/store-conformance-terminal.d.ts +12 -0
  34. package/dist/agent-runtime/store-conformance-terminal.d.ts.map +1 -0
  35. package/dist/agent-runtime/store-conformance.d.ts.map +1 -1
  36. package/dist/application/admission-rate.d.ts +21 -0
  37. package/dist/application/admission-rate.d.ts.map +1 -0
  38. package/dist/application/admission-run.d.ts +8 -0
  39. package/dist/application/admission-run.d.ts.map +1 -0
  40. package/dist/application/admission.d.ts.map +1 -1
  41. package/dist/application/diagnostic-journal-lock.d.ts +9 -34
  42. package/dist/application/diagnostic-journal-lock.d.ts.map +1 -1
  43. package/dist/application/diagnostic-journal-manager.d.ts.map +1 -1
  44. package/dist/application/diagnostic-journal-storage.d.ts.map +1 -1
  45. package/dist/application/kernel-resource-context.d.ts.map +1 -1
  46. package/dist/application/notification-outbox.d.ts.map +1 -1
  47. package/dist/application/schedule.d.ts +0 -1
  48. package/dist/application/schedule.d.ts.map +1 -1
  49. package/dist/application/watch-hub-core.d.ts +122 -0
  50. package/dist/application/watch-hub-core.d.ts.map +1 -0
  51. package/dist/application/watch-hub.d.ts +2 -2
  52. package/dist/application/watch-hub.d.ts.map +1 -1
  53. package/dist/browser/client-executors.d.ts +14 -0
  54. package/dist/browser/client-executors.d.ts.map +1 -0
  55. package/dist/browser/client-multipart.d.ts +1 -1
  56. package/dist/browser/client-multipart.d.ts.map +1 -1
  57. package/dist/browser/client.d.ts +3 -2
  58. package/dist/browser/client.d.ts.map +1 -1
  59. package/dist/browser/http-fetch.d.ts +22 -0
  60. package/dist/browser/http-fetch.d.ts.map +1 -0
  61. package/dist/browser/http.d.ts +1 -3
  62. package/dist/browser/http.d.ts.map +1 -1
  63. package/dist/browser/live-state-core.d.ts +63 -0
  64. package/dist/browser/live-state-core.d.ts.map +1 -0
  65. package/dist/browser/live-state.d.ts.map +1 -1
  66. package/dist/browser/realtime-client.d.ts +26 -0
  67. package/dist/browser/realtime-client.d.ts.map +1 -0
  68. package/dist/browser/socket-io-connection.d.ts +82 -0
  69. package/dist/browser/socket-io-connection.d.ts.map +1 -0
  70. package/dist/browser/socket-io-peer.d.ts +20 -0
  71. package/dist/browser/socket-io-peer.d.ts.map +1 -0
  72. package/dist/browser/socket-io-trace.d.ts +31 -0
  73. package/dist/browser/socket-io-trace.d.ts.map +1 -0
  74. package/dist/browser/socket-io.d.ts +2 -18
  75. package/dist/browser/socket-io.d.ts.map +1 -1
  76. package/dist/contract/client-types.d.ts +134 -0
  77. package/dist/contract/client-types.d.ts.map +1 -0
  78. package/dist/contract/define-validation.d.ts +30 -0
  79. package/dist/contract/define-validation.d.ts.map +1 -0
  80. package/dist/contract/define.d.ts +3 -357
  81. package/dist/contract/define.d.ts.map +1 -1
  82. package/dist/contract/runtime-context.d.ts +131 -0
  83. package/dist/contract/runtime-context.d.ts.map +1 -0
  84. package/dist/contract/tool-options.d.ts +105 -0
  85. package/dist/contract/tool-options.d.ts.map +1 -0
  86. package/dist/contract/tool-view.d.ts +15 -2
  87. package/dist/contract/tool-view.d.ts.map +1 -1
  88. package/dist/durability/contract.d.ts +83 -0
  89. package/dist/durability/contract.d.ts.map +1 -1
  90. package/dist/durability/effect.d.ts +24 -0
  91. package/dist/durability/effect.d.ts.map +1 -0
  92. package/dist/durability/engine.d.ts +2 -2
  93. package/dist/durability/engine.d.ts.map +1 -1
  94. package/dist/durability/events.d.ts +2 -0
  95. package/dist/durability/events.d.ts.map +1 -1
  96. package/dist/durability/ledger.d.ts +11 -0
  97. package/dist/durability/ledger.d.ts.map +1 -1
  98. package/dist/durability/parks.d.ts +22 -0
  99. package/dist/durability/parks.d.ts.map +1 -0
  100. package/dist/durability/scheduler.d.ts +1 -0
  101. package/dist/durability/scheduler.d.ts.map +1 -1
  102. package/dist/entrypoints/agent-runtime/coding-tools.js +4 -4
  103. package/dist/entrypoints/agent-runtime/harness.js +127 -116
  104. package/dist/entrypoints/agent-runtime/sandbox.js +4 -4
  105. package/dist/entrypoints/agent-runtime/sqlite/bun.js +3 -3
  106. package/dist/entrypoints/agent-runtime/sqlite/node.js +3 -3
  107. package/dist/entrypoints/agent-runtime/testing.js +246 -214
  108. package/dist/entrypoints/agent-runtime.js +224 -203
  109. package/dist/entrypoints/application/diagnostic-journal.js +63 -203
  110. package/dist/entrypoints/application/opentelemetry.js +1 -1
  111. package/dist/entrypoints/application.js +361 -324
  112. package/dist/entrypoints/cli.d.ts +4 -1
  113. package/dist/entrypoints/cli.d.ts.map +1 -1
  114. package/dist/entrypoints/cli.js +57 -35
  115. package/dist/entrypoints/contract.d.ts +5 -2
  116. package/dist/entrypoints/contract.d.ts.map +1 -1
  117. package/dist/entrypoints/contract.js +3 -2
  118. package/dist/entrypoints/files.d.ts +2 -0
  119. package/dist/entrypoints/files.d.ts.map +1 -1
  120. package/dist/entrypoints/files.js +98 -2
  121. package/dist/entrypoints/index.d.ts +4 -2
  122. package/dist/entrypoints/index.d.ts.map +1 -1
  123. package/dist/entrypoints/index.js +348 -282
  124. package/dist/entrypoints/live.js +89 -71
  125. package/dist/entrypoints/node.d.ts +2 -1
  126. package/dist/entrypoints/node.d.ts.map +1 -1
  127. package/dist/entrypoints/node.js +13 -12
  128. package/dist/entrypoints/react.js +1 -1
  129. package/dist/entrypoints/remote.js +4 -4
  130. package/dist/entrypoints/server.d.ts +4 -2
  131. package/dist/entrypoints/server.d.ts.map +1 -1
  132. package/dist/entrypoints/server.js +293 -79
  133. package/dist/entrypoints/testing.d.ts +2 -1
  134. package/dist/entrypoints/testing.d.ts.map +1 -1
  135. package/dist/entrypoints/testing.js +288 -281
  136. package/dist/entrypoints/tools/connections.js +2 -2
  137. package/dist/entrypoints/tools/invoker.js +4 -4
  138. package/dist/entrypoints/tools.d.ts +6 -3
  139. package/dist/entrypoints/tools.d.ts.map +1 -1
  140. package/dist/entrypoints/tools.js +245 -202
  141. package/dist/entrypoints/tracking.js +325 -274
  142. package/dist/files/boundary.d.ts.map +1 -1
  143. package/dist/files/file-io.d.ts +14 -0
  144. package/dist/files/file-io.d.ts.map +1 -0
  145. package/dist/index-1j8pm5t0.js +412 -0
  146. package/dist/{index-kvj7f4hq.js → index-2bxbyab0.js} +10 -2
  147. package/dist/{index-xnj9bgxe.js → index-2gxzjvyr.js} +2 -162
  148. package/dist/index-4gcnakhx.js +82 -0
  149. package/dist/{index-j05z5gn4.js → index-55hkhm67.js} +136 -119
  150. package/dist/{index-cq4qfycf.js → index-79z7m7dt.js} +227 -59
  151. package/dist/{index-97ac4gph.js → index-7f68ghdn.js} +3 -3
  152. package/dist/{index-r7nmqpsg.js → index-7p1f0vp2.js} +1 -1
  153. package/dist/{index-dcpdvjsc.js → index-863ea9jb.js} +4 -4
  154. package/dist/index-8p52kd5p.js +242 -0
  155. package/dist/{index-2qzskm8h.js → index-dce5wxcq.js} +1 -1
  156. package/dist/index-e01r054k.js +105 -0
  157. package/dist/{index-sees8yf8.js → index-ensd0r74.js} +118 -111
  158. package/dist/{index-1nd48tm9.js → index-gxrt5h6v.js} +2 -1
  159. package/dist/{index-e87kakm4.js → index-ham5sz8m.js} +112 -110
  160. package/dist/{index-kj2wbeta.js → index-het2he5g.js} +280 -196
  161. package/dist/{index-vcvkq30w.js → index-hmp4800j.js} +3 -3
  162. package/dist/{index-gyr48nzg.js → index-k30h66yd.js} +71 -151
  163. package/dist/{index-2cr1cqhn.js → index-khtgb21r.js} +2 -2
  164. package/dist/{index-x4799c19.js → index-ndddxtyx.js} +11 -11
  165. package/dist/{index-dydjcp8z.js → index-np4m8hd3.js} +38 -36
  166. package/dist/{index-p81267c2.js → index-p3vsv1fb.js} +621 -357
  167. package/dist/{index-mp5sn43f.js → index-p9e0w8hs.js} +2 -2
  168. package/dist/{index-rewkc2hj.js → index-p9sh0xx4.js} +3 -3
  169. package/dist/{index-70yj2ebz.js → index-paz6sgdp.js} +107 -103
  170. package/dist/{index-bn2cjajt.js → index-px2gm2jp.js} +26 -102
  171. package/dist/index-s812ycat.js +65 -0
  172. package/dist/{index-xsqjkha9.js → index-sp1tzwnb.js} +2 -2
  173. package/dist/{index-n6hxg8as.js → index-t9rhjr9f.js} +615 -566
  174. package/dist/{index-zeemqhqx.js → index-v260df89.js} +88 -80
  175. package/dist/{index-fdp6hdxn.js → index-w906953s.js} +5 -1
  176. package/dist/{index-mdzh02yc.js → index-wdkt63w3.js} +1 -1
  177. package/dist/{index-58k4fp34.js → index-wsm5w4ee.js} +1 -1
  178. package/dist/{index-v38qyerb.js → index-xw3s75nj.js} +1 -1
  179. package/dist/internal/atomic-file.d.ts +23 -2
  180. package/dist/internal/atomic-file.d.ts.map +1 -1
  181. package/dist/internal/exclusive-lock.d.ts +51 -0
  182. package/dist/internal/exclusive-lock.d.ts.map +1 -0
  183. package/dist/internal/process-identity.d.ts +47 -0
  184. package/dist/internal/process-identity.d.ts.map +1 -0
  185. package/dist/internal/with-exclusive-lock.d.ts +67 -0
  186. package/dist/internal/with-exclusive-lock.d.ts.map +1 -0
  187. package/dist/live/watch-client.d.ts.map +1 -1
  188. package/dist/observability/audit.d.ts +2 -2
  189. package/dist/observability/audit.d.ts.map +1 -1
  190. package/dist/observability/event.d.ts +2 -1
  191. package/dist/observability/event.d.ts.map +1 -1
  192. package/dist/primitives/export-operation.d.ts +1 -1
  193. package/dist/primitives/export-operation.d.ts.map +1 -1
  194. package/dist/realtime/registry.d.ts +0 -5
  195. package/dist/realtime/registry.d.ts.map +1 -1
  196. package/dist/server/bun.d.ts +0 -1
  197. package/dist/server/bun.d.ts.map +1 -1
  198. package/dist/server/context-contribution.d.ts +1 -1
  199. package/dist/server/context-contribution.d.ts.map +1 -1
  200. package/dist/server/context.d.ts +1 -1
  201. package/dist/server/context.d.ts.map +1 -1
  202. package/dist/server/endpoint-response.d.ts +2 -1
  203. package/dist/server/endpoint-response.d.ts.map +1 -1
  204. package/dist/server/error-dispatch.d.ts +1 -1
  205. package/dist/server/error-dispatch.d.ts.map +1 -1
  206. package/dist/server/error-hook.d.ts +1 -1
  207. package/dist/server/error-hook.d.ts.map +1 -1
  208. package/dist/server/handler-state.d.ts +1 -1
  209. package/dist/server/handler-state.d.ts.map +1 -1
  210. package/dist/server/implement-registry.d.ts +54 -0
  211. package/dist/server/implement-registry.d.ts.map +1 -0
  212. package/dist/server/implement.d.ts +9 -55
  213. package/dist/server/implement.d.ts.map +1 -1
  214. package/dist/server/middleware/auth.d.ts +1 -31
  215. package/dist/server/middleware/auth.d.ts.map +1 -1
  216. package/dist/server/middleware/jwt.d.ts +31 -0
  217. package/dist/server/middleware/jwt.d.ts.map +1 -0
  218. package/dist/server/multipart-reader.d.ts +22 -0
  219. package/dist/server/multipart-reader.d.ts.map +1 -0
  220. package/dist/server/multipart.d.ts +1 -1
  221. package/dist/server/multipart.d.ts.map +1 -1
  222. package/dist/server/oauth/cimd.d.ts +88 -0
  223. package/dist/server/oauth/cimd.d.ts.map +1 -0
  224. package/dist/server/oauth/endpoints.d.ts +39 -0
  225. package/dist/server/oauth/endpoints.d.ts.map +1 -0
  226. package/dist/server/oauth/provider.d.ts +1 -68
  227. package/dist/server/oauth/provider.d.ts.map +1 -1
  228. package/dist/server/streaming-pump.d.ts +66 -0
  229. package/dist/server/streaming-pump.d.ts.map +1 -0
  230. package/dist/server/streaming-route.d.ts +12 -5
  231. package/dist/server/streaming-route.d.ts.map +1 -1
  232. package/dist/server/types.d.ts +4 -1
  233. package/dist/server/types.d.ts.map +1 -1
  234. package/dist/server/unix-client-bun.d.ts.map +1 -1
  235. package/dist/server/unix-client-http1.d.ts +76 -0
  236. package/dist/server/unix-client-http1.d.ts.map +1 -0
  237. package/dist/server/unix-client.d.ts.map +1 -1
  238. package/dist/testing/handler-clients.d.ts +2 -1
  239. package/dist/testing/handler-clients.d.ts.map +1 -1
  240. package/dist/testing/realtime-probe.d.ts +33 -0
  241. package/dist/testing/realtime-probe.d.ts.map +1 -0
  242. package/dist/testing/surface-conformance.d.ts +0 -31
  243. package/dist/testing/surface-conformance.d.ts.map +1 -1
  244. package/dist/testing/surface-manifest-digest.d.ts +44 -0
  245. package/dist/testing/surface-manifest-digest.d.ts.map +1 -0
  246. package/dist/testing/surface-manifest.d.ts.map +1 -1
  247. package/dist/tools/agent.d.ts +1 -1
  248. package/dist/tools/agent.d.ts.map +1 -1
  249. package/dist/tools/cli/args-fields.d.ts +31 -0
  250. package/dist/tools/cli/args-fields.d.ts.map +1 -0
  251. package/dist/tools/cli/args-route.d.ts +42 -0
  252. package/dist/tools/cli/args-route.d.ts.map +1 -0
  253. package/dist/tools/cli/args-view.d.ts +32 -0
  254. package/dist/tools/cli/args-view.d.ts.map +1 -0
  255. package/dist/tools/cli/args.d.ts +2 -65
  256. package/dist/tools/cli/args.d.ts.map +1 -1
  257. package/dist/tools/cli/argument-error.d.ts +5 -0
  258. package/dist/tools/cli/argument-error.d.ts.map +1 -0
  259. package/dist/tools/cli/checkpoint.d.ts.map +1 -1
  260. package/dist/tools/cli/command.d.ts +1 -1
  261. package/dist/tools/cli/command.d.ts.map +1 -1
  262. package/dist/tools/cli/config.d.ts +1 -1
  263. package/dist/tools/cli/config.d.ts.map +1 -1
  264. package/dist/tools/cli/format.d.ts +2 -1
  265. package/dist/tools/cli/format.d.ts.map +1 -1
  266. package/dist/tools/cli/invoke.d.ts +2 -1
  267. package/dist/tools/cli/invoke.d.ts.map +1 -1
  268. package/dist/tools/cli/managed-surface.d.ts +1 -1
  269. package/dist/tools/cli/managed-surface.d.ts.map +1 -1
  270. package/dist/tools/cli/policy.d.ts +1 -1
  271. package/dist/tools/cli/policy.d.ts.map +1 -1
  272. package/dist/tools/cli/prepare.d.ts.map +1 -1
  273. package/dist/tools/cli/run-managed.d.ts.map +1 -1
  274. package/dist/tools/cli/session.d.ts +1 -1
  275. package/dist/tools/cli/session.d.ts.map +1 -1
  276. package/dist/tools/cli/update.d.ts +19 -0
  277. package/dist/tools/cli/update.d.ts.map +1 -1
  278. package/dist/tools/cli/view.d.ts +1 -1
  279. package/dist/tools/cli/view.d.ts.map +1 -1
  280. package/dist/tools/cli/wait.d.ts +1 -1
  281. package/dist/tools/cli/wait.d.ts.map +1 -1
  282. package/dist/tools/connections/runtime.d.ts +1 -1
  283. package/dist/tools/connections/runtime.d.ts.map +1 -1
  284. package/dist/tools/execute-args.d.ts +23 -0
  285. package/dist/tools/execute-args.d.ts.map +1 -0
  286. package/dist/tools/execute-hooks.d.ts +146 -0
  287. package/dist/tools/execute-hooks.d.ts.map +1 -0
  288. package/dist/tools/execute-result.d.ts +40 -0
  289. package/dist/tools/execute-result.d.ts.map +1 -0
  290. package/dist/tools/execute.d.ts +4 -193
  291. package/dist/tools/execute.d.ts.map +1 -1
  292. package/dist/tools/internal/surface-projector.d.ts +2 -1
  293. package/dist/tools/internal/surface-projector.d.ts.map +1 -1
  294. package/dist/tools/invoker.d.ts +2 -1
  295. package/dist/tools/invoker.d.ts.map +1 -1
  296. package/dist/tools/lifecycle.d.ts +1 -1
  297. package/dist/tools/lifecycle.d.ts.map +1 -1
  298. package/dist/tools/mcp/mount.d.ts +1 -1
  299. package/dist/tools/mcp/mount.d.ts.map +1 -1
  300. package/dist/tools/mcp/prepare.d.ts +2 -1
  301. package/dist/tools/mcp/prepare.d.ts.map +1 -1
  302. package/dist/tools/mcp/progress.d.ts +1 -1
  303. package/dist/tools/mcp/progress.d.ts.map +1 -1
  304. package/dist/tools/mcp/register.d.ts +3 -2
  305. package/dist/tools/mcp/register.d.ts.map +1 -1
  306. package/dist/tools/mcp/round-context.d.ts +38 -0
  307. package/dist/tools/mcp/round-context.d.ts.map +1 -0
  308. package/dist/tools/mcp/round-policy.d.ts +1 -1
  309. package/dist/tools/mcp/round-policy.d.ts.map +1 -1
  310. package/dist/tools/mcp/round.d.ts +3 -11
  311. package/dist/tools/mcp/round.d.ts.map +1 -1
  312. package/dist/tools/mcp/runtime-tools.d.ts +2 -1
  313. package/dist/tools/mcp/runtime-tools.d.ts.map +1 -1
  314. package/dist/tools/mount.d.ts +3 -1
  315. package/dist/tools/mount.d.ts.map +1 -1
  316. package/dist/tools/native-definition.d.ts +2 -1
  317. package/dist/tools/native-definition.d.ts.map +1 -1
  318. package/dist/tools/operations/async-operation-runtime-tools.d.ts +2 -1
  319. package/dist/tools/operations/async-operation-runtime-tools.d.ts.map +1 -1
  320. package/dist/tools/operations/async-operation-runtime-types.d.ts +2 -1
  321. package/dist/tools/operations/async-operation-runtime-types.d.ts.map +1 -1
  322. package/dist/tools/remote.d.ts.map +1 -1
  323. package/dist/tools/runtime-tool.d.ts +3 -1
  324. package/dist/tools/runtime-tool.d.ts.map +1 -1
  325. package/dist/tools/tool-logger.d.ts +1 -1
  326. package/dist/tools/tool-logger.d.ts.map +1 -1
  327. package/dist/tracking/client-listeners.d.ts +30 -0
  328. package/dist/tracking/client-listeners.d.ts.map +1 -0
  329. package/dist/tracking/client-visit.d.ts +61 -0
  330. package/dist/tracking/client-visit.d.ts.map +1 -0
  331. package/dist/tracking/client.d.ts +3 -2
  332. package/dist/tracking/client.d.ts.map +1 -1
  333. package/llms/application.2.txt +266 -2
  334. package/llms/application.txt +8 -266
  335. package/llms/cli.2.txt +80 -0
  336. package/llms/cli.txt +45 -74
  337. package/llms/contract.txt +3 -3
  338. package/llms/files.txt +3 -0
  339. package/llms/tools.2.txt +88 -279
  340. package/llms/tools.3.txt +288 -0
  341. package/llms/tools.txt +27 -65
  342. package/llms-full.txt +108 -12
  343. package/llms.txt +5 -5
  344. package/package.json +1 -1
  345. package/dist/index-e2z3ahw9.js +0 -325
  346. package/dist/index-mkm15s49.js +0 -394
@@ -1,6 +1,6 @@
1
- import type { ZodType, z } from 'zod';
2
- import { type PathParams } from '../internal/route-pattern.js';
3
- import { type DeclaredToolView } from './tool-view.js';
1
+ import type { ZodType } from 'zod';
2
+ import type { MultipartDescriptor } from './client-types.js';
3
+ import type { EndpointToolOptions } from './tool-options.js';
4
4
  export type { PathParams } from '../internal/route-pattern.js';
5
5
  export type HttpMethod = 'GET' | 'HEAD' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
6
6
  export declare const ALL_TRANSPORTS: readonly ['HTTP', 'MCP', 'AGENT', 'CLI'];
@@ -152,105 +152,6 @@ interface EndpointDefBase extends EndpointRouteBase {
152
152
  */
153
153
  safelistedBody?: true;
154
154
  }
155
- /**
156
- * MCP Apps UI metadata for a tool (SEP-1865). When set, the tool's MCP
157
- * registration carries `_meta.ui`, so a host renders the named `ui://` resource
158
- * as an interactive widget for this tool's results. The resource itself is
159
- * served separately (see `McpServerBuildConfig.resources`).
160
- */
161
- export interface EndpointUiMeta {
162
- /** `ui://…` resource the host renders for this tool's results. */
163
- resourceUri: string;
164
- /** Who sees the tool — `'model'` (in the tool list) and/or `'app'` (widget-only). */
165
- visibility?: readonly ('model' | 'app')[];
166
- }
167
- /**
168
- * MCP `ToolAnnotations` — behavioural hints a host reads to group tools and pick
169
- * permission defaults (read-only auto-allow, destructive needs approval) and to
170
- * show a human label. Hints only — never a security boundary.
171
- */
172
- export interface EndpointToolAnnotations {
173
- /** Human-friendly display name (e.g. "Explore Models" instead of `list_models`). */
174
- title?: string;
175
- /** Tool does not mutate state — hosts may auto-allow and group as read-only. */
176
- readOnlyHint?: boolean;
177
- /** Tool may perform destructive updates (ignored when `readOnlyHint` is true). */
178
- destructiveHint?: boolean;
179
- /** Repeated calls with the same args have no additional effect. */
180
- idempotentHint?: boolean;
181
- /** Tool interacts with an open/external world (not a closed set). */
182
- openWorldHint?: boolean;
183
- }
184
- /** One typed form elicitation required before an MCP tool handler may execute. */
185
- export interface EndpointMcpInputRequired<TKey extends string = string, TSchema extends z.ZodObject = z.ZodObject> {
186
- /** Stable response key carried across MRTR rounds. */
187
- key: TKey;
188
- /** Human-facing prompt shown by the MCP host. */
189
- message: string;
190
- /** Flat primitive object schema accepted from the host. */
191
- schema: TSchema;
192
- }
193
- /**
194
- * What the tool call looks like when the questions are chosen — the same
195
- * `params` / `input` the handler would receive, parsed by the contract's own
196
- * schemas.
197
- */
198
- export interface McpInputRequiredCall {
199
- params: unknown;
200
- input: unknown;
201
- }
202
- /**
203
- * Choose this call's elicitation rounds from its arguments.
204
- *
205
- * The static list is declared before any call exists, which is enough when the
206
- * questions are a property of the operation. It is not enough when they are a
207
- * property of the ARGUMENTS — one model takes `aspect_ratio`, another takes
208
- * `duration`, a third needs an input image — and there the declared list can
209
- * only be empty, so the tool description ends up teaching the model to work
210
- * around a mechanism the protocol already has.
211
- *
212
- * Returning an empty list is a legitimate answer: this call needs nothing, run
213
- * it. Everything else about the mechanism is unchanged — the state is still
214
- * signed, still bound to the principal, the operation and the argument digest,
215
- * and still counted against `maxRounds`.
216
- *
217
- * The resolved list is fingerprinted into the signed state and re-checked on
218
- * every round, so a resolver that answers differently mid-conversation is
219
- * refused rather than silently asking round 2's question under round 1's key.
220
- */
221
- export type McpInputRequiredResolver<TRequests extends readonly EndpointMcpInputRequired[] = readonly EndpointMcpInputRequired[]> = (call: McpInputRequiredCall) => TRequests | Promise<TRequests>;
222
- /** MCP-only execution policy attached to a contract or runtime tool. */
223
- export interface EndpointMcpPolicy<TRequests extends readonly EndpointMcpInputRequired[] = readonly EndpointMcpInputRequired[]> {
224
- /**
225
- * Ordered elicitation rounds — a fixed list, or a function of the parsed
226
- * arguments. Every key must be unique, in either form.
227
- */
228
- inputRequired: TRequests | McpInputRequiredResolver<TRequests>;
229
- }
230
- /**
231
- * Everything a tool surface — MCP, AGENT, CLI — reads from an endpoint that
232
- * HTTP does not: the name a model calls, the view it is answered with, the MCP
233
- * widget, host hints and elicitation rounds. One group, so an endpoint that can
234
- * never be a tool refuses all of it with one key, and a new tool option is
235
- * added in one place. `expose` is not in it: it chooses transports, HTTP
236
- * included. → ADR 0196.
237
- */
238
- export interface EndpointToolOptions {
239
- /** The tool name on MCP / AGENT / CLI; unique per transport within a contract. */
240
- name?: string;
241
- /**
242
- * The answer on the tool surface when it is not the HTTP answer: input
243
- * defaults, a narrower output, a projection. Declared only by `withToolView`,
244
- * which types `project` against the endpoint's schemas.
245
- */
246
- view?: DeclaredToolView;
247
- /** MCP Apps widget for this tool's results (MCP transport only). */
248
- ui?: EndpointUiMeta;
249
- /** MCP behavioural hints (read-only / destructive / title) for hosts. */
250
- annotations?: EndpointToolAnnotations;
251
- /** Opt-in multi-round input gate; ignored by HTTP, Agent and CLI. */
252
- mcp?: EndpointMcpPolicy;
253
- }
254
155
  interface HttpOnlyEndpointDef extends EndpointDefBase {
255
156
  expose: readonly ['HTTP'];
256
157
  tool?: never;
@@ -426,259 +327,4 @@ export declare function defineContract<TScope extends string, const T extends Re
426
327
  scope: TScope;
427
328
  meta?: Record<string, unknown>;
428
329
  }, endpoints: T): ContractDef<T, TScope>;
429
- /**
430
- * Shallow-merge a contract-wide `meta` default with an endpoint's own — endpoint
431
- * keys win. Returns `undefined` when neither side declares anything, because
432
- * readers test `method.meta?.x` and an empty object would read as "declared".
433
- * One level deep by design: a deep merge invites "how do I unset an inherited
434
- * key", which has no answer without a sentinel. → ADR 0036.
435
- */
436
- export declare function mergeMeta(contractMeta: Record<string, unknown> | undefined, endpointMeta: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
437
- /** Self-reported MCP host identity. Attribution only — never an auth principal. */
438
- export interface McpClientInfo {
439
- name: string;
440
- version: string;
441
- }
442
- /** Outcome of one opt-in MCP multi-round input attempt. */
443
- export type McpRoundOutcome = 'input_required' | 'declined' | 'cancelled' | 'invalid' | 'complete';
444
- /**
445
- * Validated metadata for the active managed MCP tool call.
446
- *
447
- * `clientInfo` is supplied by the MCP host. It is useful for display and
448
- * operational attribution, but MUST NOT be used for authentication,
449
- * authorization, tenant selection or rate limiting.
450
- */
451
- export interface McpCallContext {
452
- era: 'modern' | 'legacy';
453
- method: string;
454
- toolName: string;
455
- protocolVersion?: string;
456
- clientInfo?: McpClientInfo;
457
- outcome?: McpRoundOutcome;
458
- round?: number;
459
- /**
460
- * The host's progress token for this call, when it asked for progress.
461
- *
462
- * Declarative, like everything else on this type: it says the host is
463
- * listening. Reporting is `ctx.reportProgress`, which is a function and
464
- * therefore deliberately NOT here — this type is also the type of
465
- * `RequestEvent.mcp`, and an audit row's shape must not claim to carry
466
- * behaviour.
467
- */
468
- progressToken?: string | number;
469
- }
470
- /**
471
- * One progress update a tool handler sends to the host mid-call.
472
- *
473
- * `progress` is a number the protocol requires. It is optional here because a
474
- * handler often has a stage to name and no scale to name it on — "uploading",
475
- * "rendering frame 12" — and the honest answer to "how far along" is then the
476
- * ordinal of the update itself, which is what gets sent. That is a fact about
477
- * what happened, not a percentage nobody measured; `total` stays absent, so a
478
- * host renders it as an unbounded counter rather than a bar at 3%.
479
- */
480
- export interface McpProgressUpdate {
481
- /** Human-facing stage, shown by the host while the call is still running. */
482
- message?: string;
483
- /** How far along, on whatever scale `total` implies. */
484
- progress?: number;
485
- /** The scale, when the operation knows it. */
486
- total?: number;
487
- }
488
- /**
489
- * Send one progress update for the call in flight.
490
- *
491
- * Present on every tool call and a no-op unless the host asked for progress by
492
- * sending a token, so a handler never branches on transport. It never throws
493
- * and never rejects: a message about work must not be able to kill the work it
494
- * describes. Fire-and-forget — the returned promise settles when the
495
- * notification has been handed to the transport, and ignoring it is correct.
496
- */
497
- export type McpReportProgress = (update: McpProgressUpdate) => Promise<void>;
498
- export interface RuntimeContext {
499
- params: unknown;
500
- input: unknown;
501
- files?: Record<string, unknown>;
502
- /** Original decoded JSON request text when the endpoint declares `rawBody: true`. */
503
- rawBody?: string;
504
- source: TransportSource;
505
- /**
506
- * The raw Web `Request`, its parsed `URL` and `Headers` — set on the HTTP
507
- * transport (and reachable in every lifecycle hook, including `onError` on a
508
- * validation failure). Absent on the non-HTTP transports (MCP / agent / CLI /
509
- * a bring-your-own lane), which carry no `Request`, so they are optional and a
510
- * reader narrows them. Web Fetch types only — the core stays Fetch-clean
511
- * (→ ADR 0013).
512
- */
513
- req?: Request;
514
- url?: URL;
515
- headers?: Headers;
516
- traceId?: string;
517
- spanId?: string;
518
- ipAddress?: string;
519
- userAgent?: string;
520
- /** Transport cancellation for the active call (MCP and future cancellable lanes). */
521
- signal?: AbortSignal;
522
- /** Validated metadata for an MCP call; absent on every other transport. */
523
- mcp?: McpCallContext;
524
- /**
525
- * Report progress on the call in flight.
526
- *
527
- * Present on every TOOL call — MCP, agent and CLI — and a no-op wherever
528
- * nobody is listening, so a handler never branches on transport to say what
529
- * it is doing. Absent on the HTTP transport, which has no channel for it;
530
- * that is why the field is optional and a handler that also serves HTTP
531
- * writes `ctx.reportProgress?.(…)`.
532
- */
533
- reportProgress?: McpReportProgress;
534
- [key: string]: unknown;
535
- }
536
- export interface HandlerContext<TParams = undefined, TInput = undefined> {
537
- params: TParams;
538
- input: TInput;
539
- files?: Record<string, unknown>;
540
- /** Original decoded JSON request text when the endpoint declares `rawBody: true`. */
541
- rawBody?: string;
542
- source: TransportSource;
543
- /** Raw Web `Request` / `URL` / `Headers` — set on the HTTP transport, absent
544
- * on the tool transports (see {@link RuntimeContext}). */
545
- req?: Request;
546
- url?: URL;
547
- headers?: Headers;
548
- traceId?: string;
549
- spanId?: string;
550
- ipAddress?: string;
551
- userAgent?: string;
552
- /** Validated metadata for an MCP call; absent on every other transport. */
553
- mcp?: McpCallContext;
554
- /** Report progress on the call in flight — a no-op when none was asked for. */
555
- reportProgress?: McpReportProgress;
556
- [key: string]: unknown;
557
- }
558
- type Prop<T, K extends string> = K extends keyof T ? T[K] : undefined;
559
- type InferInput<S> = S extends ZodType ? z.input<S> : unknown;
560
- /**
561
- * A platform file descriptor accepted by the typed client's multipart methods
562
- * where a file is not a `Blob`. React Native / Expo represent a file as
563
- * `{ uri, name, type }` and their `FormData.append` streams it from disk by
564
- * `uri`; reading it into a `Blob` first (`fetch(uri).blob()`) would load the
565
- * whole media into memory. The web / Bun path still uses `Blob`.
566
- */
567
- export interface FileDescriptor {
568
- /** Local file URI the platform streams from (e.g. `file:///…`). */
569
- uri: string;
570
- /** File name for the multipart part. */
571
- name: string;
572
- /** MIME type for the multipart part. */
573
- type: string;
574
- }
575
- /**
576
- * What a `multipart` endpoint's file field accepts on the typed client — a
577
- * `Blob` (web / Bun) or a platform {@link FileDescriptor} (React Native / Expo).
578
- * Exported so a consumer can type its own upload helpers without a cast.
579
- */
580
- export type MultipartFile = Blob | FileDescriptor;
581
- /** A single named file policy within a multipart request. */
582
- export type MultipartFilePolicy = {
583
- required?: boolean;
584
- multiple?: false;
585
- maxFiles?: never;
586
- maxBytes?: number;
587
- contentTypes?: readonly string[];
588
- } | {
589
- required?: boolean;
590
- multiple: true;
591
- maxFiles?: number;
592
- maxBytes?: number;
593
- contentTypes?: readonly string[];
594
- };
595
- /** One source of truth for multipart cardinality, delivery and byte policy. */
596
- export interface MultipartDescriptor {
597
- delivery?: 'buffer' | 'stream';
598
- maxRequestBytes?: number;
599
- maxFieldBytes?: number;
600
- files: Record<string, MultipartFilePolicy>;
601
- }
602
- type MultipartClientValue<P> = P extends {
603
- multiple: true;
604
- } ? MultipartFile[] : MultipartFile;
605
- type RequiredMultipartKeys<F> = {
606
- [K in keyof F]: F[K] extends {
607
- required: false;
608
- } ? never : K;
609
- }[keyof F];
610
- type OptionalMultipartKeys<F> = {
611
- [K in keyof F]: F[K] extends {
612
- required: false;
613
- } ? K : never;
614
- }[keyof F];
615
- type MultipartArgs<E> = E extends {
616
- multipart: {
617
- files: infer F;
618
- };
619
- } ? {
620
- [K in RequiredMultipartKeys<F>]: MultipartClientValue<F[K]>;
621
- } & {
622
- [K in OptionalMultipartKeys<F>]?: MultipartClientValue<F[K]>;
623
- } : unknown;
624
- /** Buffered server-side file values inferred from a multipart descriptor. */
625
- export type MultipartBufferedFiles<M> = M extends {
626
- files: infer F;
627
- } ? {
628
- [K in keyof F]: F[K] extends {
629
- multiple: true;
630
- } ? File[] : F[K] extends {
631
- required: false;
632
- } ? File | undefined : File;
633
- } : never;
634
- /** Public per-call options accepted by every typed HTTP endpoint's `withOptions` method. */
635
- export interface ClientRequestOptions {
636
- signal?: AbortSignal;
637
- }
638
- type ClientEndpointWithArgs<Args, Output> = {
639
- (args: Args): Promise<Output>;
640
- withOptions(args: Args, options: ClientRequestOptions): Promise<Output>;
641
- };
642
- type ClientEndpointWithoutArgs<Output> = {
643
- (): Promise<Output>;
644
- withOptions(options: ClientRequestOptions): Promise<Output>;
645
- };
646
- type InferredPathParams<E> = E extends {
647
- path: infer TPath extends string;
648
- } ? keyof PathParams<TPath> extends never ? unknown : PathParams<TPath> : unknown;
649
- type EndpointParamsInput<E> = Prop<E, 'params'> extends ZodType ? InferInput<Prop<E, 'params'>> : InferredPathParams<E>;
650
- type EndpointArgs<E> = EndpointParamsInput<E> & InferInput<Prop<E, 'input'>> & MultipartArgs<E>;
651
- /**
652
- * What the typed client resolves to. A `raw` endpoint hands back the untouched
653
- * `Response` — its body is bytes, and the headers carry what the caller needs
654
- * (`Content-Disposition`, `Content-Range`, `ETag`). → ADR 0038.
655
- */
656
- type EndpointOutput<E> = E extends {
657
- rawResponse: true;
658
- } ? Response : Prop<E, 'stream'> extends {
659
- item: ZodType<infer O>;
660
- } ? AsyncIterableIterator<O> : Prop<E, 'output'> extends ZodType<infer O> ? O : undefined;
661
- export type EndpointFn<E> = [keyof EndpointArgs<E>] extends [never] ? ClientEndpointWithoutArgs<EndpointOutput<E>> : ClientEndpointWithArgs<EndpointArgs<E>, EndpointOutput<E>>;
662
- export type TypedClient<C extends Record<string, EndpointDef>> = {
663
- [K in keyof C]: EndpointFn<C[K]>;
664
- };
665
- type ExposesHttp<E> = E extends {
666
- expose: readonly Transport[];
667
- } ? 'HTTP' extends E['expose'][number] ? true : false : true;
668
- type ArgsWith<E, Extra> = EndpointArgs<E> & Extra;
669
- export type ScopedEndpointFn<E, Extra> = [keyof ArgsWith<E, Extra>] extends [never] ? ClientEndpointWithoutArgs<EndpointOutput<E>> : ClientEndpointWithArgs<ArgsWith<E, Extra>, EndpointOutput<E>>;
670
- export type ScopedHttpClient<C extends Record<string, EndpointDef>, Extra> = {
671
- [K in keyof C as ExposesHttp<C[K]> extends true ? K : never]: ScopedEndpointFn<C[K], Extra>;
672
- };
673
- export type TypedHttpClient<C extends Record<string, EndpointDef>> = ScopedHttpClient<C, unknown>;
674
- type IsUrlBuildable<E> = ExposesHttp<E>;
675
- type EndpointUrlArgs<E> = EndpointParamsInput<E> & (E extends {
676
- method: 'GET' | 'DELETE';
677
- } ? InferInput<Prop<E, 'input'>> : unknown);
678
- type UrlArgsWith<E, Extra> = EndpointUrlArgs<E> & Extra;
679
- export type ScopedUrlFn<E, Extra> = [keyof UrlArgsWith<E, Extra>] extends [never] ? () => string : (args: UrlArgsWith<E, Extra>) => string;
680
- export type ScopedUrlBuilder<C extends Record<string, EndpointDef>, Extra> = {
681
- [K in keyof C as IsUrlBuildable<C[K]> extends true ? K : never]: ScopedUrlFn<C[K], Extra>;
682
- };
683
- export type TypedUrlBuilder<C extends Record<string, EndpointDef>> = ScopedUrlBuilder<C, unknown>;
684
330
  //# sourceMappingURL=define.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../src/contract/define.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../src/contract/define.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ import type { TransportSource } from './define.js';
2
+ /**
3
+ * Shallow-merge a contract-wide `meta` default with an endpoint's own — endpoint
4
+ * keys win. Returns `undefined` when neither side declares anything, because
5
+ * readers test `method.meta?.x` and an empty object would read as "declared".
6
+ * One level deep by design: a deep merge invites "how do I unset an inherited
7
+ * key", which has no answer without a sentinel. → ADR 0036.
8
+ */
9
+ export declare function mergeMeta(contractMeta: Record<string, unknown> | undefined, endpointMeta: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
10
+ /** Self-reported MCP host identity. Attribution only — never an auth principal. */
11
+ export interface McpClientInfo {
12
+ name: string;
13
+ version: string;
14
+ }
15
+ /** Outcome of one opt-in MCP multi-round input attempt. */
16
+ export type McpRoundOutcome = 'input_required' | 'declined' | 'cancelled' | 'invalid' | 'complete';
17
+ /**
18
+ * Validated metadata for the active managed MCP tool call.
19
+ *
20
+ * `clientInfo` is supplied by the MCP host. It is useful for display and
21
+ * operational attribution, but MUST NOT be used for authentication,
22
+ * authorization, tenant selection or rate limiting.
23
+ */
24
+ export interface McpCallContext {
25
+ era: 'modern' | 'legacy';
26
+ method: string;
27
+ toolName: string;
28
+ protocolVersion?: string;
29
+ clientInfo?: McpClientInfo;
30
+ outcome?: McpRoundOutcome;
31
+ round?: number;
32
+ /**
33
+ * The host's progress token for this call, when it asked for progress.
34
+ *
35
+ * Declarative, like everything else on this type: it says the host is
36
+ * listening. Reporting is `ctx.reportProgress`, which is a function and
37
+ * therefore deliberately NOT here — this type is also the type of
38
+ * `RequestEvent.mcp`, and an audit row's shape must not claim to carry
39
+ * behaviour.
40
+ */
41
+ progressToken?: string | number;
42
+ }
43
+ /**
44
+ * One progress update a tool handler sends to the host mid-call.
45
+ *
46
+ * `progress` is a number the protocol requires. It is optional here because a
47
+ * handler often has a stage to name and no scale to name it on — "uploading",
48
+ * "rendering frame 12" — and the honest answer to "how far along" is then the
49
+ * ordinal of the update itself, which is what gets sent. That is a fact about
50
+ * what happened, not a percentage nobody measured; `total` stays absent, so a
51
+ * host renders it as an unbounded counter rather than a bar at 3%.
52
+ */
53
+ export interface McpProgressUpdate {
54
+ /** Human-facing stage, shown by the host while the call is still running. */
55
+ message?: string;
56
+ /** How far along, on whatever scale `total` implies. */
57
+ progress?: number;
58
+ /** The scale, when the operation knows it. */
59
+ total?: number;
60
+ }
61
+ /**
62
+ * Send one progress update for the call in flight.
63
+ *
64
+ * Present on every tool call and a no-op unless the host asked for progress by
65
+ * sending a token, so a handler never branches on transport. It never throws
66
+ * and never rejects: a message about work must not be able to kill the work it
67
+ * describes. Fire-and-forget — the returned promise settles when the
68
+ * notification has been handed to the transport, and ignoring it is correct.
69
+ */
70
+ export type McpReportProgress = (update: McpProgressUpdate) => Promise<void>;
71
+ export interface RuntimeContext {
72
+ params: unknown;
73
+ input: unknown;
74
+ files?: Record<string, unknown>;
75
+ /** Original decoded JSON request text when the endpoint declares `rawBody: true`. */
76
+ rawBody?: string;
77
+ source: TransportSource;
78
+ /**
79
+ * The raw Web `Request`, its parsed `URL` and `Headers` — set on the HTTP
80
+ * transport (and reachable in every lifecycle hook, including `onError` on a
81
+ * validation failure). Absent on the non-HTTP transports (MCP / agent / CLI /
82
+ * a bring-your-own lane), which carry no `Request`, so they are optional and a
83
+ * reader narrows them. Web Fetch types only — the core stays Fetch-clean
84
+ * (→ ADR 0013).
85
+ */
86
+ req?: Request;
87
+ url?: URL;
88
+ headers?: Headers;
89
+ traceId?: string;
90
+ spanId?: string;
91
+ ipAddress?: string;
92
+ userAgent?: string;
93
+ /** Transport cancellation for the active call (MCP and future cancellable lanes). */
94
+ signal?: AbortSignal;
95
+ /** Validated metadata for an MCP call; absent on every other transport. */
96
+ mcp?: McpCallContext;
97
+ /**
98
+ * Report progress on the call in flight.
99
+ *
100
+ * Present on every TOOL call — MCP, agent and CLI — and a no-op wherever
101
+ * nobody is listening, so a handler never branches on transport to say what
102
+ * it is doing. Absent on the HTTP transport, which has no channel for it;
103
+ * that is why the field is optional and a handler that also serves HTTP
104
+ * writes `ctx.reportProgress?.(…)`.
105
+ */
106
+ reportProgress?: McpReportProgress;
107
+ [key: string]: unknown;
108
+ }
109
+ export interface HandlerContext<TParams = undefined, TInput = undefined> {
110
+ params: TParams;
111
+ input: TInput;
112
+ files?: Record<string, unknown>;
113
+ /** Original decoded JSON request text when the endpoint declares `rawBody: true`. */
114
+ rawBody?: string;
115
+ source: TransportSource;
116
+ /** Raw Web `Request` / `URL` / `Headers` — set on the HTTP transport, absent
117
+ * on the tool transports (see {@link RuntimeContext}). */
118
+ req?: Request;
119
+ url?: URL;
120
+ headers?: Headers;
121
+ traceId?: string;
122
+ spanId?: string;
123
+ ipAddress?: string;
124
+ userAgent?: string;
125
+ /** Validated metadata for an MCP call; absent on every other transport. */
126
+ mcp?: McpCallContext;
127
+ /** Report progress on the call in flight — a no-op when none was asked for. */
128
+ reportProgress?: McpReportProgress;
129
+ [key: string]: unknown;
130
+ }
131
+ //# sourceMappingURL=runtime-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-context.d.ts","sourceRoot":"","sources":["../../src/contract/runtime-context.ts"],"names":[],"mappings":"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"}