stitchkit 0.93.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 (1082) hide show
  1. package/CHANGELOG.md +198 -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-shell-process.d.ts.map +1 -1
  14. package/dist/agent-runtime/coding-tool-contract.d.ts +2 -1
  15. package/dist/agent-runtime/coding-tool-contract.d.ts.map +1 -1
  16. package/dist/agent-runtime/coding-tool-listing.d.ts.map +1 -1
  17. package/dist/agent-runtime/coding-tool-search-patch.d.ts.map +1 -1
  18. package/dist/agent-runtime/contained-darwin.d.ts +38 -0
  19. package/dist/agent-runtime/contained-darwin.d.ts.map +1 -0
  20. package/dist/agent-runtime/contained-files.d.ts +11 -26
  21. package/dist/agent-runtime/contained-files.d.ts.map +1 -1
  22. package/dist/agent-runtime/contained-scan.d.ts +21 -0
  23. package/dist/agent-runtime/contained-scan.d.ts.map +1 -0
  24. package/dist/agent-runtime/contained-write.d.ts +9 -0
  25. package/dist/agent-runtime/contained-write.d.ts.map +1 -0
  26. package/dist/agent-runtime/deferred-tool-types.d.ts +4 -3
  27. package/dist/agent-runtime/deferred-tool-types.d.ts.map +1 -1
  28. package/dist/agent-runtime/events.d.ts +1 -1
  29. package/dist/agent-runtime/events.d.ts.map +1 -1
  30. package/dist/agent-runtime/harness-control.d.ts +0 -1
  31. package/dist/agent-runtime/harness-control.d.ts.map +1 -1
  32. package/dist/agent-runtime/harness.d.ts +0 -5
  33. package/dist/agent-runtime/harness.d.ts.map +1 -1
  34. package/dist/agent-runtime/managed-tools.d.ts +3 -2
  35. package/dist/agent-runtime/managed-tools.d.ts.map +1 -1
  36. package/dist/agent-runtime/observability.d.ts +1 -1
  37. package/dist/agent-runtime/observability.d.ts.map +1 -1
  38. package/dist/agent-runtime/openrouter.d.ts +29 -0
  39. package/dist/agent-runtime/openrouter.d.ts.map +1 -0
  40. package/dist/agent-runtime/projections.d.ts +1 -1
  41. package/dist/agent-runtime/projections.d.ts.map +1 -1
  42. package/dist/agent-runtime/run-acquisition.d.ts +17 -0
  43. package/dist/agent-runtime/run-acquisition.d.ts.map +1 -0
  44. package/dist/agent-runtime/run-execution-state.d.ts +133 -0
  45. package/dist/agent-runtime/run-execution-state.d.ts.map +1 -0
  46. package/dist/agent-runtime/run-execution.d.ts +17 -33
  47. package/dist/agent-runtime/run-execution.d.ts.map +1 -1
  48. package/dist/agent-runtime/run-failure.d.ts +18 -0
  49. package/dist/agent-runtime/run-failure.d.ts.map +1 -0
  50. package/dist/agent-runtime/run-model-attempts.d.ts +6 -0
  51. package/dist/agent-runtime/run-model-attempts.d.ts.map +1 -0
  52. package/dist/agent-runtime/run-prompt-history.d.ts +58 -0
  53. package/dist/agent-runtime/run-prompt-history.d.ts.map +1 -0
  54. package/dist/agent-runtime/run-provider-ledger.d.ts +26 -0
  55. package/dist/agent-runtime/run-provider-ledger.d.ts.map +1 -0
  56. package/dist/agent-runtime/run-stream-parts.d.ts +17 -0
  57. package/dist/agent-runtime/run-stream-parts.d.ts.map +1 -0
  58. package/dist/agent-runtime/run-terminal.d.ts +11 -0
  59. package/dist/agent-runtime/run-terminal.d.ts.map +1 -0
  60. package/dist/agent-runtime/run-turn-preparation.d.ts +22 -0
  61. package/dist/agent-runtime/run-turn-preparation.d.ts.map +1 -0
  62. package/dist/agent-runtime/runtime-admission-gate.d.ts +29 -0
  63. package/dist/agent-runtime/runtime-admission-gate.d.ts.map +1 -0
  64. package/dist/agent-runtime/runtime-control.d.ts +9 -0
  65. package/dist/agent-runtime/runtime-control.d.ts.map +1 -0
  66. package/dist/agent-runtime/runtime-recovery.d.ts +10 -0
  67. package/dist/agent-runtime/runtime-recovery.d.ts.map +1 -0
  68. package/dist/agent-runtime/runtime-state.d.ts +36 -0
  69. package/dist/agent-runtime/runtime-state.d.ts.map +1 -0
  70. package/dist/agent-runtime/runtime-submit.d.ts +5 -0
  71. package/dist/agent-runtime/runtime-submit.d.ts.map +1 -0
  72. package/dist/agent-runtime/runtime.d.ts +10 -5
  73. package/dist/agent-runtime/runtime.d.ts.map +1 -1
  74. package/dist/agent-runtime/schedule-records.d.ts +34 -0
  75. package/dist/agent-runtime/schedule-records.d.ts.map +1 -0
  76. package/dist/agent-runtime/schedules.d.ts +34 -0
  77. package/dist/agent-runtime/schedules.d.ts.map +1 -1
  78. package/dist/agent-runtime/sqlite-bun.d.ts +12 -0
  79. package/dist/agent-runtime/sqlite-bun.d.ts.map +1 -0
  80. package/dist/agent-runtime/sqlite-events.d.ts +5 -0
  81. package/dist/agent-runtime/sqlite-events.d.ts.map +1 -0
  82. package/dist/agent-runtime/sqlite-history.d.ts +7 -0
  83. package/dist/agent-runtime/sqlite-history.d.ts.map +1 -0
  84. package/dist/agent-runtime/sqlite-ledger.d.ts +7 -0
  85. package/dist/agent-runtime/sqlite-ledger.d.ts.map +1 -0
  86. package/dist/agent-runtime/sqlite-node.d.ts +12 -0
  87. package/dist/agent-runtime/sqlite-node.d.ts.map +1 -0
  88. package/dist/agent-runtime/sqlite-reads.d.ts +14 -0
  89. package/dist/agent-runtime/sqlite-reads.d.ts.map +1 -0
  90. package/dist/agent-runtime/sqlite-rows.d.ts +178 -0
  91. package/dist/agent-runtime/sqlite-rows.d.ts.map +1 -0
  92. package/dist/agent-runtime/sqlite-schema.d.ts +7 -0
  93. package/dist/agent-runtime/sqlite-schema.d.ts.map +1 -0
  94. package/dist/agent-runtime/sqlite-transactions.d.ts +25 -0
  95. package/dist/agent-runtime/sqlite-transactions.d.ts.map +1 -0
  96. package/dist/agent-runtime/sqlite.d.ts +10 -6
  97. package/dist/agent-runtime/sqlite.d.ts.map +1 -1
  98. package/dist/agent-runtime/store-archive.d.ts +16 -0
  99. package/dist/agent-runtime/store-archive.d.ts.map +1 -0
  100. package/dist/agent-runtime/store-conformance-lifecycle.d.ts +434 -0
  101. package/dist/agent-runtime/store-conformance-lifecycle.d.ts.map +1 -0
  102. package/dist/agent-runtime/store-conformance-ordering.d.ts +18 -0
  103. package/dist/agent-runtime/store-conformance-ordering.d.ts.map +1 -0
  104. package/dist/agent-runtime/store-conformance-support.d.ts +130 -0
  105. package/dist/agent-runtime/store-conformance-support.d.ts.map +1 -0
  106. package/dist/agent-runtime/store-conformance-terminal.d.ts +12 -0
  107. package/dist/agent-runtime/store-conformance-terminal.d.ts.map +1 -0
  108. package/dist/agent-runtime/store-conformance.d.ts +40 -0
  109. package/dist/agent-runtime/store-conformance.d.ts.map +1 -0
  110. package/dist/agent-runtime/store-create.d.ts +11 -0
  111. package/dist/agent-runtime/store-create.d.ts.map +1 -0
  112. package/dist/agent-runtime/store-driver-contract.d.ts +814 -0
  113. package/dist/agent-runtime/store-driver-contract.d.ts.map +1 -0
  114. package/dist/agent-runtime/store-events.d.ts +7 -89
  115. package/dist/agent-runtime/store-events.d.ts.map +1 -1
  116. package/dist/agent-runtime/store-memory.d.ts +4 -0
  117. package/dist/agent-runtime/store-memory.d.ts.map +1 -0
  118. package/dist/agent-runtime/store-mutate.d.ts +13 -0
  119. package/dist/agent-runtime/store-mutate.d.ts.map +1 -0
  120. package/dist/agent-runtime/store-purge.d.ts +1 -1
  121. package/dist/agent-runtime/store-purge.d.ts.map +1 -1
  122. package/dist/agent-runtime/store-reads.d.ts +29 -0
  123. package/dist/agent-runtime/store-reads.d.ts.map +1 -0
  124. package/dist/agent-runtime/store-reduce-history.d.ts +10 -0
  125. package/dist/agent-runtime/store-reduce-history.d.ts.map +1 -0
  126. package/dist/agent-runtime/store-reduce-run.d.ts +14 -0
  127. package/dist/agent-runtime/store-reduce-run.d.ts.map +1 -0
  128. package/dist/agent-runtime/store-reduce-shared.d.ts +76 -0
  129. package/dist/agent-runtime/store-reduce-shared.d.ts.map +1 -0
  130. package/dist/agent-runtime/store-reduce-terminal.d.ts +6 -0
  131. package/dist/agent-runtime/store-reduce-terminal.d.ts.map +1 -0
  132. package/dist/agent-runtime/store-reducer.d.ts +24 -0
  133. package/dist/agent-runtime/store-reducer.d.ts.map +1 -0
  134. package/dist/agent-runtime/store-snapshot.d.ts +19 -0
  135. package/dist/agent-runtime/store-snapshot.d.ts.map +1 -0
  136. package/dist/agent-runtime/store.d.ts +1 -1
  137. package/dist/agent-runtime/store.d.ts.map +1 -1
  138. package/dist/application/admission-rate.d.ts +21 -0
  139. package/dist/application/admission-rate.d.ts.map +1 -0
  140. package/dist/application/admission-run.d.ts +8 -0
  141. package/dist/application/admission-run.d.ts.map +1 -0
  142. package/dist/application/admission.d.ts +1 -1
  143. package/dist/application/admission.d.ts.map +1 -1
  144. package/dist/application/diagnostic-journal-lock.d.ts +9 -34
  145. package/dist/application/diagnostic-journal-lock.d.ts.map +1 -1
  146. package/dist/application/diagnostic-journal-manager.d.ts.map +1 -1
  147. package/dist/application/diagnostic-journal-storage.d.ts.map +1 -1
  148. package/dist/application/events.d.ts +1 -1
  149. package/dist/application/events.d.ts.map +1 -1
  150. package/dist/application/file-state-store.d.ts +23 -0
  151. package/dist/application/file-state-store.d.ts.map +1 -0
  152. package/dist/application/health.d.ts +1 -1
  153. package/dist/application/health.d.ts.map +1 -1
  154. package/dist/application/kernel-admission.d.ts +8 -0
  155. package/dist/application/kernel-admission.d.ts.map +1 -0
  156. package/dist/application/kernel-contract.d.ts +142 -0
  157. package/dist/application/kernel-contract.d.ts.map +1 -0
  158. package/dist/application/kernel-resource-context.d.ts +24 -0
  159. package/dist/application/kernel-resource-context.d.ts.map +1 -0
  160. package/dist/application/kernel-restart.d.ts +5 -0
  161. package/dist/application/kernel-restart.d.ts.map +1 -0
  162. package/dist/application/kernel-rollback.d.ts +4 -0
  163. package/dist/application/kernel-rollback.d.ts.map +1 -0
  164. package/dist/application/kernel-shutdown.d.ts +6 -0
  165. package/dist/application/kernel-shutdown.d.ts.map +1 -0
  166. package/dist/application/kernel-start.d.ts +20 -0
  167. package/dist/application/kernel-start.d.ts.map +1 -0
  168. package/dist/application/kernel-state.d.ts +116 -0
  169. package/dist/application/kernel-state.d.ts.map +1 -0
  170. package/dist/application/kernel.d.ts +9 -140
  171. package/dist/application/kernel.d.ts.map +1 -1
  172. package/dist/application/latest-sink.d.ts +1 -1
  173. package/dist/application/latest-sink.d.ts.map +1 -1
  174. package/dist/application/notification-outbox.d.ts.map +1 -1
  175. package/dist/application/opentelemetry.d.ts +1 -1
  176. package/dist/application/opentelemetry.d.ts.map +1 -1
  177. package/dist/application/schedule.d.ts +0 -1
  178. package/dist/application/schedule.d.ts.map +1 -1
  179. package/dist/application/watch-hub-core.d.ts +122 -0
  180. package/dist/application/watch-hub-core.d.ts.map +1 -0
  181. package/dist/application/watch-hub.d.ts +3 -3
  182. package/dist/application/watch-hub.d.ts.map +1 -1
  183. package/dist/browser/client-executors.d.ts +14 -0
  184. package/dist/browser/client-executors.d.ts.map +1 -0
  185. package/dist/browser/client-multipart.d.ts +1 -1
  186. package/dist/browser/client-multipart.d.ts.map +1 -1
  187. package/dist/browser/client-url.d.ts +1 -1
  188. package/dist/browser/client-url.d.ts.map +1 -1
  189. package/dist/browser/client.d.ts +3 -2
  190. package/dist/browser/client.d.ts.map +1 -1
  191. package/dist/browser/contract-stream.d.ts +1 -1
  192. package/dist/browser/contract-stream.d.ts.map +1 -1
  193. package/dist/browser/http-fetch.d.ts +22 -0
  194. package/dist/browser/http-fetch.d.ts.map +1 -0
  195. package/dist/browser/http.d.ts +2 -4
  196. package/dist/browser/http.d.ts.map +1 -1
  197. package/dist/browser/live-state-core.d.ts +63 -0
  198. package/dist/browser/live-state-core.d.ts.map +1 -0
  199. package/dist/browser/live-state.d.ts.map +1 -1
  200. package/dist/browser/realtime-client.d.ts +26 -0
  201. package/dist/browser/realtime-client.d.ts.map +1 -0
  202. package/dist/browser/resumable.d.ts +1 -28
  203. package/dist/browser/resumable.d.ts.map +1 -1
  204. package/dist/browser/retained.d.ts.map +1 -0
  205. package/dist/browser/socket-io-connection.d.ts +82 -0
  206. package/dist/browser/socket-io-connection.d.ts.map +1 -0
  207. package/dist/browser/socket-io-peer.d.ts +20 -0
  208. package/dist/browser/socket-io-peer.d.ts.map +1 -0
  209. package/dist/browser/socket-io-trace.d.ts +31 -0
  210. package/dist/browser/socket-io-trace.d.ts.map +1 -0
  211. package/dist/browser/socket-io.d.ts +24 -18
  212. package/dist/browser/socket-io.d.ts.map +1 -1
  213. package/dist/browser/stream.d.ts +14 -2
  214. package/dist/browser/stream.d.ts.map +1 -1
  215. package/dist/contract/client-types.d.ts +134 -0
  216. package/dist/contract/client-types.d.ts.map +1 -0
  217. package/dist/contract/define-validation.d.ts +30 -0
  218. package/dist/contract/define-validation.d.ts.map +1 -0
  219. package/dist/contract/define.d.ts +47 -394
  220. package/dist/contract/define.d.ts.map +1 -1
  221. package/dist/contract/normalize.d.ts +56 -0
  222. package/dist/contract/normalize.d.ts.map +1 -0
  223. package/dist/contract/runtime-context.d.ts +131 -0
  224. package/dist/contract/runtime-context.d.ts.map +1 -0
  225. package/dist/contract/tool-options.d.ts +105 -0
  226. package/dist/contract/tool-options.d.ts.map +1 -0
  227. package/dist/contract/tool-view.d.ts +148 -0
  228. package/dist/contract/tool-view.d.ts.map +1 -0
  229. package/dist/declaration/declaration.d.ts.map +1 -0
  230. package/dist/durability/contract.d.ts +259 -0
  231. package/dist/durability/contract.d.ts.map +1 -0
  232. package/dist/durability/effect.d.ts +24 -0
  233. package/dist/durability/effect.d.ts.map +1 -0
  234. package/dist/durability/engine.d.ts +14 -0
  235. package/dist/durability/engine.d.ts.map +1 -0
  236. package/dist/durability/events.d.ts +103 -0
  237. package/dist/durability/events.d.ts.map +1 -0
  238. package/dist/durability/json.d.ts +3 -0
  239. package/dist/durability/json.d.ts.map +1 -0
  240. package/dist/durability/ledger.d.ts +27 -0
  241. package/dist/durability/ledger.d.ts.map +1 -0
  242. package/dist/durability/parks.d.ts +22 -0
  243. package/dist/durability/parks.d.ts.map +1 -0
  244. package/dist/durability/scheduler.d.ts +30 -0
  245. package/dist/durability/scheduler.d.ts.map +1 -0
  246. package/dist/entrypoints/agent-runtime/browser.d.ts +5 -0
  247. package/dist/entrypoints/agent-runtime/browser.d.ts.map +1 -0
  248. package/dist/entrypoints/agent-runtime/browser.js +124 -0
  249. package/dist/entrypoints/agent-runtime/coding-tools.d.ts +2 -0
  250. package/dist/entrypoints/agent-runtime/coding-tools.d.ts.map +1 -0
  251. package/dist/entrypoints/agent-runtime/coding-tools.js +22 -0
  252. package/dist/entrypoints/agent-runtime/harness.d.ts +2 -0
  253. package/dist/entrypoints/agent-runtime/harness.d.ts.map +1 -0
  254. package/dist/entrypoints/agent-runtime/harness.js +739 -0
  255. package/dist/entrypoints/agent-runtime/openrouter.d.ts +2 -0
  256. package/dist/entrypoints/agent-runtime/openrouter.d.ts.map +1 -0
  257. package/dist/entrypoints/agent-runtime/openrouter.js +270 -0
  258. package/dist/entrypoints/agent-runtime/sandbox.d.ts +5 -0
  259. package/dist/entrypoints/agent-runtime/sandbox.d.ts.map +1 -0
  260. package/dist/entrypoints/agent-runtime/sandbox.js +797 -0
  261. package/dist/entrypoints/agent-runtime/sqlite/bun.d.ts +2 -0
  262. package/dist/entrypoints/agent-runtime/sqlite/bun.d.ts.map +1 -0
  263. package/dist/entrypoints/agent-runtime/sqlite/bun.js +44 -0
  264. package/dist/entrypoints/agent-runtime/sqlite/node.d.ts +2 -0
  265. package/dist/entrypoints/agent-runtime/sqlite/node.d.ts.map +1 -0
  266. package/dist/entrypoints/agent-runtime/sqlite/node.js +46 -0
  267. package/dist/entrypoints/agent-runtime/testing.d.ts +4 -0
  268. package/dist/entrypoints/agent-runtime/testing.d.ts.map +1 -0
  269. package/dist/entrypoints/agent-runtime/testing.js +1116 -0
  270. package/dist/entrypoints/agent-runtime.d.ts +42 -0
  271. package/dist/entrypoints/agent-runtime.d.ts.map +1 -0
  272. package/dist/entrypoints/agent-runtime.js +2670 -0
  273. package/dist/entrypoints/application/diagnostic-journal.d.ts +21 -0
  274. package/dist/entrypoints/application/diagnostic-journal.d.ts.map +1 -0
  275. package/dist/entrypoints/application/diagnostic-journal.js +492 -0
  276. package/dist/entrypoints/application/grammy.d.ts +2 -0
  277. package/dist/entrypoints/application/grammy.d.ts.map +1 -0
  278. package/dist/entrypoints/application/grammy.js +169 -0
  279. package/dist/entrypoints/application/opentelemetry.d.ts +2 -0
  280. package/dist/entrypoints/application/opentelemetry.d.ts.map +1 -0
  281. package/dist/entrypoints/application/opentelemetry.js +250 -0
  282. package/dist/entrypoints/application/schemas.d.ts +15 -0
  283. package/dist/entrypoints/application/schemas.d.ts.map +1 -0
  284. package/dist/entrypoints/application/schemas.js +27 -0
  285. package/dist/entrypoints/application.d.ts +23 -0
  286. package/dist/entrypoints/application.d.ts.map +1 -0
  287. package/dist/entrypoints/application.js +2016 -0
  288. package/dist/entrypoints/bin/upgrade-cli.d.ts.map +1 -0
  289. package/dist/entrypoints/bin/upgrade-cli.js +177 -0
  290. package/dist/entrypoints/cli.d.ts +44 -0
  291. package/dist/entrypoints/cli.d.ts.map +1 -0
  292. package/dist/entrypoints/cli.js +773 -0
  293. package/dist/entrypoints/contract.d.ts +12 -0
  294. package/dist/entrypoints/contract.d.ts.map +1 -0
  295. package/dist/entrypoints/contract.js +64 -0
  296. package/dist/entrypoints/declaration.d.ts +2 -0
  297. package/dist/entrypoints/declaration.d.ts.map +1 -0
  298. package/dist/entrypoints/declaration.js +183 -0
  299. package/dist/entrypoints/files.d.ts +5 -0
  300. package/dist/entrypoints/files.d.ts.map +1 -0
  301. package/dist/entrypoints/files.js +111 -0
  302. package/dist/entrypoints/geo.d.ts +3 -0
  303. package/dist/entrypoints/geo.d.ts.map +1 -0
  304. package/dist/entrypoints/geo.js +245 -0
  305. package/dist/entrypoints/google.d.ts +2 -0
  306. package/dist/entrypoints/google.d.ts.map +1 -0
  307. package/dist/entrypoints/google.js +175 -0
  308. package/dist/entrypoints/index.d.ts +17 -0
  309. package/dist/entrypoints/index.d.ts.map +1 -0
  310. package/dist/entrypoints/index.js +764 -0
  311. package/dist/entrypoints/live.d.ts +19 -0
  312. package/dist/entrypoints/live.d.ts.map +1 -0
  313. package/dist/entrypoints/live.js +302 -0
  314. package/dist/entrypoints/node.d.ts +19 -0
  315. package/dist/entrypoints/node.d.ts.map +1 -0
  316. package/dist/entrypoints/node.js +308 -0
  317. package/dist/entrypoints/oauth.d.ts +2 -0
  318. package/dist/entrypoints/oauth.d.ts.map +1 -0
  319. package/dist/entrypoints/oauth.js +170 -0
  320. package/dist/entrypoints/observability.d.ts +19 -0
  321. package/dist/entrypoints/observability.d.ts.map +1 -0
  322. package/dist/entrypoints/observability.js +567 -0
  323. package/dist/entrypoints/primitives.d.ts +3 -0
  324. package/dist/entrypoints/primitives.d.ts.map +1 -0
  325. package/dist/entrypoints/primitives.js +749 -0
  326. package/dist/entrypoints/react.d.ts +5 -0
  327. package/dist/entrypoints/react.d.ts.map +1 -0
  328. package/dist/entrypoints/react.js +403 -0
  329. package/dist/entrypoints/release.d.ts +15 -0
  330. package/dist/entrypoints/release.d.ts.map +1 -0
  331. package/dist/entrypoints/release.js +196 -0
  332. package/dist/entrypoints/remote.d.ts +9 -0
  333. package/dist/entrypoints/remote.d.ts.map +1 -0
  334. package/dist/entrypoints/remote.js +66 -0
  335. package/dist/entrypoints/server.d.ts +39 -0
  336. package/dist/entrypoints/server.d.ts.map +1 -0
  337. package/dist/entrypoints/server.js +2009 -0
  338. package/dist/entrypoints/telegram.d.ts +3 -0
  339. package/dist/entrypoints/telegram.d.ts.map +1 -0
  340. package/dist/entrypoints/telegram.js +224 -0
  341. package/dist/entrypoints/testing.d.ts +10 -0
  342. package/dist/entrypoints/testing.d.ts.map +1 -0
  343. package/dist/entrypoints/testing.js +1377 -0
  344. package/dist/entrypoints/tools/connections.d.ts +19 -0
  345. package/dist/entrypoints/tools/connections.d.ts.map +1 -0
  346. package/dist/entrypoints/tools/connections.js +1110 -0
  347. package/dist/entrypoints/tools/contract.d.ts +29 -0
  348. package/dist/entrypoints/tools/contract.d.ts.map +1 -0
  349. package/dist/entrypoints/tools/contract.js +24 -0
  350. package/dist/entrypoints/tools/invoker.d.ts +9 -0
  351. package/dist/entrypoints/tools/invoker.d.ts.map +1 -0
  352. package/dist/entrypoints/tools/invoker.js +20 -0
  353. package/dist/entrypoints/tools.d.ts +54 -0
  354. package/dist/entrypoints/tools.d.ts.map +1 -0
  355. package/dist/entrypoints/tools.js +3009 -0
  356. package/dist/entrypoints/tracking/server.d.ts +15 -0
  357. package/dist/entrypoints/tracking/server.d.ts.map +1 -0
  358. package/dist/entrypoints/tracking.d.ts +24 -0
  359. package/dist/entrypoints/tracking.d.ts.map +1 -0
  360. package/dist/entrypoints/tracking.js +1140 -0
  361. package/dist/files/boundary.d.ts.map +1 -1
  362. package/dist/files/file-io.d.ts +14 -0
  363. package/dist/files/file-io.d.ts.map +1 -0
  364. package/dist/google/google.d.ts.map +1 -0
  365. package/dist/index-0b1ess5e.js +38 -0
  366. package/dist/index-1j8pm5t0.js +412 -0
  367. package/dist/index-1zbbzgfh.js +89 -0
  368. package/dist/index-2bxbyab0.js +47 -0
  369. package/dist/index-2gxzjvyr.js +266 -0
  370. package/dist/index-35mh5bhj.js +177 -0
  371. package/dist/index-48ffdxgk.js +6 -0
  372. package/dist/index-4gcnakhx.js +82 -0
  373. package/dist/index-55hkhm67.js +343 -0
  374. package/dist/index-79z7m7dt.js +675 -0
  375. package/dist/index-7f68ghdn.js +3618 -0
  376. package/dist/index-7p1f0vp2.js +154 -0
  377. package/dist/index-83bdg97s.js +16 -0
  378. package/dist/index-863ea9jb.js +154 -0
  379. package/dist/index-8p52kd5p.js +242 -0
  380. package/dist/index-d9pk3td4.js +326 -0
  381. package/dist/index-dce5wxcq.js +63 -0
  382. package/dist/index-e01r054k.js +105 -0
  383. package/dist/index-ensd0r74.js +595 -0
  384. package/dist/index-eqqvgdb3.js +46 -0
  385. package/dist/index-gxrt5h6v.js +341 -0
  386. package/dist/index-h6eeys1v.js +211 -0
  387. package/dist/index-ham5sz8m.js +734 -0
  388. package/dist/index-het2he5g.js +1387 -0
  389. package/dist/index-hffjpmq9.js +30 -0
  390. package/dist/index-hmp4800j.js +51 -0
  391. package/dist/index-k30h66yd.js +317 -0
  392. package/dist/index-k5hsfc3j.js +31 -0
  393. package/dist/index-khtgb21r.js +92 -0
  394. package/dist/index-m9zn6cpq.js +51 -0
  395. package/dist/index-ndddxtyx.js +324 -0
  396. package/dist/index-ngfhvfpd.js +30 -0
  397. package/dist/index-np4m8hd3.js +1205 -0
  398. package/dist/index-p3vsv1fb.js +3493 -0
  399. package/dist/index-p5r7qpdd.js +85 -0
  400. package/dist/index-p9e0w8hs.js +1084 -0
  401. package/dist/index-p9sh0xx4.js +64 -0
  402. package/dist/index-paz6sgdp.js +371 -0
  403. package/dist/index-px2gm2jp.js +448 -0
  404. package/dist/index-qwhynv6x.js +103 -0
  405. package/dist/index-s812ycat.js +65 -0
  406. package/dist/index-sp1tzwnb.js +281 -0
  407. package/dist/index-t9rhjr9f.js +2306 -0
  408. package/dist/index-v260df89.js +342 -0
  409. package/dist/index-w906953s.js +946 -0
  410. package/dist/index-wdkt63w3.js +214 -0
  411. package/dist/index-wqgjfstn.js +18 -0
  412. package/dist/index-wsm5w4ee.js +1023 -0
  413. package/dist/index-xw3s75nj.js +100 -0
  414. package/dist/index-yw4fzmdz.js +268 -0
  415. package/dist/index-zfrhfn82.js +85 -0
  416. package/dist/index-znfs20ss.js +98 -0
  417. package/dist/internal/atomic-file.d.ts +23 -2
  418. package/dist/internal/atomic-file.d.ts.map +1 -1
  419. package/dist/internal/backoff.d.ts +29 -0
  420. package/dist/internal/backoff.d.ts.map +1 -0
  421. package/dist/internal/canonical-json.d.ts +21 -11
  422. package/dist/internal/canonical-json.d.ts.map +1 -1
  423. package/dist/internal/channel.d.ts.map +1 -0
  424. package/dist/internal/exclusive-lock.d.ts +51 -0
  425. package/dist/internal/exclusive-lock.d.ts.map +1 -0
  426. package/dist/internal/logger.d.ts.map +1 -0
  427. package/dist/internal/process-identity.d.ts +47 -0
  428. package/dist/internal/process-identity.d.ts.map +1 -0
  429. package/dist/internal/request.d.ts.map +1 -0
  430. package/dist/internal/stable-digest.d.ts +0 -43
  431. package/dist/internal/stable-digest.d.ts.map +1 -1
  432. package/dist/internal/typed.d.ts +0 -8
  433. package/dist/internal/typed.d.ts.map +1 -1
  434. package/dist/internal/with-exclusive-lock.d.ts +67 -0
  435. package/dist/internal/with-exclusive-lock.d.ts.map +1 -0
  436. package/dist/internal/zod-issues.d.ts +38 -0
  437. package/dist/internal/zod-issues.d.ts.map +1 -0
  438. package/dist/json-schema/dialect.d.ts +17 -0
  439. package/dist/json-schema/dialect.d.ts.map +1 -0
  440. package/dist/json-schema/json-schema.d.ts.map +1 -0
  441. package/dist/live/watch-client.d.ts.map +1 -1
  442. package/dist/live/watch-delta.d.ts.map +1 -1
  443. package/dist/oauth/authorization-code.d.ts +57 -0
  444. package/dist/oauth/authorization-code.d.ts.map +1 -0
  445. package/dist/observability/audit.d.ts +3 -3
  446. package/dist/observability/audit.d.ts.map +1 -1
  447. package/dist/observability/bounded-logger.d.ts +1 -1
  448. package/dist/observability/bounded-logger.d.ts.map +1 -1
  449. package/dist/observability/bounded-sink.d.ts +81 -0
  450. package/dist/observability/bounded-sink.d.ts.map +1 -0
  451. package/dist/observability/context.d.ts +1 -1
  452. package/dist/observability/context.d.ts.map +1 -1
  453. package/dist/observability/event.d.ts +2 -1
  454. package/dist/observability/event.d.ts.map +1 -1
  455. package/dist/observability/work.d.ts +1 -1
  456. package/dist/observability/work.d.ts.map +1 -1
  457. package/dist/primitives/audit.d.ts +1 -1
  458. package/dist/primitives/audit.d.ts.map +1 -1
  459. package/dist/primitives/export-operation.d.ts +4 -2
  460. package/dist/primitives/export-operation.d.ts.map +1 -1
  461. package/dist/realtime/registry.d.ts +0 -5
  462. package/dist/realtime/registry.d.ts.map +1 -1
  463. package/dist/realtime/socket.d.ts +1 -1
  464. package/dist/realtime/socket.d.ts.map +1 -1
  465. package/dist/server/bun.d.ts +0 -1
  466. package/dist/server/bun.d.ts.map +1 -1
  467. package/dist/server/context-contribution.d.ts +1 -1
  468. package/dist/server/context-contribution.d.ts.map +1 -1
  469. package/dist/server/context.d.ts +2 -2
  470. package/dist/server/context.d.ts.map +1 -1
  471. package/dist/server/contract-method.d.ts +15 -0
  472. package/dist/server/contract-method.d.ts.map +1 -0
  473. package/dist/server/contract-stream.d.ts +1 -1
  474. package/dist/server/contract-stream.d.ts.map +1 -1
  475. package/dist/server/create.d.ts +8 -0
  476. package/dist/server/create.d.ts.map +1 -1
  477. package/dist/server/endpoint-dispatch.d.ts +10 -0
  478. package/dist/server/endpoint-dispatch.d.ts.map +1 -0
  479. package/dist/server/endpoint-response.d.ts +19 -0
  480. package/dist/server/endpoint-response.d.ts.map +1 -0
  481. package/dist/server/error-dispatch.d.ts +17 -1
  482. package/dist/server/error-dispatch.d.ts.map +1 -1
  483. package/dist/server/error-hook.d.ts +2 -2
  484. package/dist/server/error-hook.d.ts.map +1 -1
  485. package/dist/server/handler-state.d.ts +44 -0
  486. package/dist/server/handler-state.d.ts.map +1 -0
  487. package/dist/server/implement-registry.d.ts +54 -0
  488. package/dist/server/implement-registry.d.ts.map +1 -0
  489. package/dist/server/implement.d.ts +9 -55
  490. package/dist/server/implement.d.ts.map +1 -1
  491. package/dist/server/middleware/auth.d.ts +1 -31
  492. package/dist/server/middleware/auth.d.ts.map +1 -1
  493. package/dist/server/middleware/cors.d.ts +17 -0
  494. package/dist/server/middleware/cors.d.ts.map +1 -1
  495. package/dist/server/middleware/jwt.d.ts +31 -0
  496. package/dist/server/middleware/jwt.d.ts.map +1 -0
  497. package/dist/server/middleware/trust-fence.d.ts +1 -1
  498. package/dist/server/middleware/trust-fence.d.ts.map +1 -1
  499. package/dist/server/multipart-reader.d.ts +22 -0
  500. package/dist/server/multipart-reader.d.ts.map +1 -0
  501. package/dist/server/multipart.d.ts +1 -1
  502. package/dist/server/multipart.d.ts.map +1 -1
  503. package/dist/server/oauth/cimd.d.ts +88 -0
  504. package/dist/server/oauth/cimd.d.ts.map +1 -0
  505. package/dist/server/oauth/endpoints.d.ts +39 -0
  506. package/dist/server/oauth/endpoints.d.ts.map +1 -0
  507. package/dist/server/oauth/metadata.d.ts +28 -0
  508. package/dist/server/oauth/metadata.d.ts.map +1 -0
  509. package/dist/server/oauth/provider.d.ts +117 -0
  510. package/dist/server/oauth/provider.d.ts.map +1 -0
  511. package/dist/server/realtime.d.ts +1 -1
  512. package/dist/server/realtime.d.ts.map +1 -1
  513. package/dist/server/request-completion.d.ts +16 -0
  514. package/dist/server/request-completion.d.ts.map +1 -0
  515. package/dist/server/response-metadata.d.ts +1 -1
  516. package/dist/server/response-metadata.d.ts.map +1 -1
  517. package/dist/server/route-table.d.ts +9 -0
  518. package/dist/server/route-table.d.ts.map +1 -0
  519. package/dist/server/stream.d.ts +0 -13
  520. package/dist/server/stream.d.ts.map +1 -1
  521. package/dist/server/streaming-pump.d.ts +66 -0
  522. package/dist/server/streaming-pump.d.ts.map +1 -0
  523. package/dist/server/streaming-route.d.ts +12 -5
  524. package/dist/server/streaming-route.d.ts.map +1 -1
  525. package/dist/server/types.d.ts +10 -4
  526. package/dist/server/types.d.ts.map +1 -1
  527. package/dist/server/unix-client-bun.d.ts.map +1 -1
  528. package/dist/server/unix-client-http1.d.ts +76 -0
  529. package/dist/server/unix-client-http1.d.ts.map +1 -0
  530. package/dist/server/unix-client.d.ts.map +1 -1
  531. package/dist/testing/handler-clients.d.ts +32 -0
  532. package/dist/testing/handler-clients.d.ts.map +1 -0
  533. package/dist/testing/managed-resource-conformance-scenarios.d.ts.map +1 -1
  534. package/dist/testing/realtime-probe.d.ts +33 -0
  535. package/dist/testing/realtime-probe.d.ts.map +1 -0
  536. package/dist/testing/surface-conformance.d.ts +2 -32
  537. package/dist/testing/surface-conformance.d.ts.map +1 -1
  538. package/dist/testing/surface-manifest-digest.d.ts +44 -0
  539. package/dist/testing/surface-manifest-digest.d.ts.map +1 -0
  540. package/dist/testing/surface-manifest.d.ts +30 -4
  541. package/dist/testing/surface-manifest.d.ts.map +1 -1
  542. package/dist/tools/agent.d.ts +1 -1
  543. package/dist/tools/agent.d.ts.map +1 -1
  544. package/dist/tools/cli/args-fields.d.ts +31 -0
  545. package/dist/tools/cli/args-fields.d.ts.map +1 -0
  546. package/dist/tools/cli/args-route.d.ts +42 -0
  547. package/dist/tools/cli/args-route.d.ts.map +1 -0
  548. package/dist/tools/cli/args-view.d.ts +32 -0
  549. package/dist/tools/cli/args-view.d.ts.map +1 -0
  550. package/dist/tools/cli/args.d.ts +80 -0
  551. package/dist/tools/cli/args.d.ts.map +1 -0
  552. package/dist/tools/cli/argument-error.d.ts +5 -0
  553. package/dist/tools/cli/argument-error.d.ts.map +1 -0
  554. package/dist/tools/cli/checkpoint.d.ts +24 -0
  555. package/dist/tools/cli/checkpoint.d.ts.map +1 -0
  556. package/dist/tools/cli/command.d.ts +70 -0
  557. package/dist/tools/cli/command.d.ts.map +1 -0
  558. package/dist/tools/cli/config.d.ts +90 -0
  559. package/dist/tools/cli/config.d.ts.map +1 -0
  560. package/dist/tools/cli/create-cli.d.ts +36 -0
  561. package/dist/tools/cli/create-cli.d.ts.map +1 -0
  562. package/dist/tools/cli/download.d.ts +8 -0
  563. package/dist/tools/cli/download.d.ts.map +1 -0
  564. package/dist/tools/cli/format.d.ts +50 -0
  565. package/dist/tools/cli/format.d.ts.map +1 -0
  566. package/dist/tools/cli/help.d.ts +24 -0
  567. package/dist/tools/cli/help.d.ts.map +1 -0
  568. package/dist/tools/cli/installer.d.ts +34 -0
  569. package/dist/tools/cli/installer.d.ts.map +1 -0
  570. package/dist/tools/cli/invoke.d.ts +144 -0
  571. package/dist/tools/cli/invoke.d.ts.map +1 -0
  572. package/dist/tools/cli/io.d.ts +10 -0
  573. package/dist/tools/cli/io.d.ts.map +1 -0
  574. package/dist/tools/cli/managed-surface.d.ts +30 -0
  575. package/dist/tools/cli/managed-surface.d.ts.map +1 -0
  576. package/dist/tools/cli/manifest.d.ts +80 -0
  577. package/dist/tools/cli/manifest.d.ts.map +1 -0
  578. package/dist/tools/cli/policy.d.ts +27 -0
  579. package/dist/tools/cli/policy.d.ts.map +1 -0
  580. package/dist/tools/cli/prepare.d.ts +14 -0
  581. package/dist/tools/cli/prepare.d.ts.map +1 -0
  582. package/dist/tools/cli/profile.d.ts +40 -0
  583. package/dist/tools/cli/profile.d.ts.map +1 -0
  584. package/dist/tools/cli/run-managed.d.ts +5 -0
  585. package/dist/tools/cli/run-managed.d.ts.map +1 -0
  586. package/dist/tools/cli/run-native.d.ts +9 -0
  587. package/dist/tools/cli/run-native.d.ts.map +1 -0
  588. package/dist/tools/cli/session.d.ts +40 -0
  589. package/dist/tools/cli/session.d.ts.map +1 -0
  590. package/dist/tools/cli/signature.d.ts +81 -0
  591. package/dist/tools/cli/signature.d.ts.map +1 -0
  592. package/dist/tools/cli/stream.d.ts +93 -0
  593. package/dist/tools/cli/stream.d.ts.map +1 -0
  594. package/dist/tools/cli/update.d.ts +145 -0
  595. package/dist/tools/cli/update.d.ts.map +1 -0
  596. package/dist/tools/cli/view.d.ts +12 -0
  597. package/dist/tools/cli/view.d.ts.map +1 -0
  598. package/dist/tools/cli/wait.d.ts +54 -0
  599. package/dist/tools/cli/wait.d.ts.map +1 -0
  600. package/dist/tools/connections/runtime.d.ts +1 -1
  601. package/dist/tools/connections/runtime.d.ts.map +1 -1
  602. package/dist/tools/connections/types.d.ts +3 -3
  603. package/dist/tools/connections/types.d.ts.map +1 -1
  604. package/dist/tools/durability-context.d.ts +1 -1
  605. package/dist/tools/durability-context.d.ts.map +1 -1
  606. package/dist/tools/execute-args.d.ts +23 -0
  607. package/dist/tools/execute-args.d.ts.map +1 -0
  608. package/dist/tools/execute-hooks.d.ts +146 -0
  609. package/dist/tools/execute-hooks.d.ts.map +1 -0
  610. package/dist/tools/execute-result.d.ts +40 -0
  611. package/dist/tools/execute-result.d.ts.map +1 -0
  612. package/dist/tools/execute.d.ts +31 -193
  613. package/dist/tools/execute.d.ts.map +1 -1
  614. package/dist/tools/internal/surface-projector.d.ts +9 -6
  615. package/dist/tools/internal/surface-projector.d.ts.map +1 -1
  616. package/dist/tools/internal/tool-view.d.ts +41 -0
  617. package/dist/tools/internal/tool-view.d.ts.map +1 -0
  618. package/dist/tools/invoker.d.ts +13 -4
  619. package/dist/tools/invoker.d.ts.map +1 -1
  620. package/dist/tools/lifecycle.d.ts +1 -1
  621. package/dist/tools/lifecycle.d.ts.map +1 -1
  622. package/dist/tools/list-names.d.ts +3 -3
  623. package/dist/tools/list-names.d.ts.map +1 -1
  624. package/dist/tools/manifest.d.ts +2 -2
  625. package/dist/tools/manifest.d.ts.map +1 -1
  626. package/dist/tools/mcp/app.d.ts +62 -0
  627. package/dist/tools/mcp/app.d.ts.map +1 -0
  628. package/dist/tools/mcp/catalog.d.ts +68 -0
  629. package/dist/tools/mcp/catalog.d.ts.map +1 -0
  630. package/dist/tools/mcp/handler.d.ts +46 -0
  631. package/dist/tools/mcp/handler.d.ts.map +1 -0
  632. package/dist/tools/mcp/mount.d.ts +152 -0
  633. package/dist/tools/mcp/mount.d.ts.map +1 -0
  634. package/dist/tools/mcp/prepare.d.ts +76 -0
  635. package/dist/tools/mcp/prepare.d.ts.map +1 -0
  636. package/dist/tools/mcp/progress.d.ts +46 -0
  637. package/dist/tools/mcp/progress.d.ts.map +1 -0
  638. package/dist/tools/mcp/register.d.ts +36 -0
  639. package/dist/tools/mcp/register.d.ts.map +1 -0
  640. package/dist/tools/mcp/round-context.d.ts +38 -0
  641. package/dist/tools/mcp/round-context.d.ts.map +1 -0
  642. package/dist/tools/mcp/round-policy.d.ts +33 -0
  643. package/dist/tools/mcp/round-policy.d.ts.map +1 -0
  644. package/dist/tools/mcp/round.d.ts +53 -0
  645. package/dist/tools/mcp/round.d.ts.map +1 -0
  646. package/dist/tools/mcp/runtime-tools.d.ts +25 -0
  647. package/dist/tools/mcp/runtime-tools.d.ts.map +1 -0
  648. package/dist/tools/mcp/stdio-signals.d.ts +33 -0
  649. package/dist/tools/mcp/stdio-signals.d.ts.map +1 -0
  650. package/dist/tools/mcp/stdio.d.ts +20 -0
  651. package/dist/tools/mcp/stdio.d.ts.map +1 -0
  652. package/dist/tools/mcp/trace.d.ts +12 -0
  653. package/dist/tools/mcp/trace.d.ts.map +1 -0
  654. package/dist/tools/mount.d.ts +14 -7
  655. package/dist/tools/mount.d.ts.map +1 -1
  656. package/dist/tools/native-definition.d.ts +4 -3
  657. package/dist/tools/native-definition.d.ts.map +1 -1
  658. package/dist/tools/operations/async-operation-binding-types.d.ts +127 -0
  659. package/dist/tools/operations/async-operation-binding-types.d.ts.map +1 -0
  660. package/dist/tools/operations/async-operation-binding.d.ts +28 -0
  661. package/dist/tools/operations/async-operation-binding.d.ts.map +1 -0
  662. package/dist/tools/operations/async-operation-canonical-types.d.ts +110 -0
  663. package/dist/tools/operations/async-operation-canonical-types.d.ts.map +1 -0
  664. package/dist/tools/operations/async-operation-canonical.d.ts +7 -0
  665. package/dist/tools/operations/async-operation-canonical.d.ts.map +1 -0
  666. package/dist/tools/operations/async-operation-contract.d.ts.map +1 -0
  667. package/dist/tools/operations/async-operation-id.d.ts +23 -0
  668. package/dist/tools/operations/async-operation-id.d.ts.map +1 -0
  669. package/dist/tools/operations/async-operation-runtime-tools.d.ts +41 -0
  670. package/dist/tools/operations/async-operation-runtime-tools.d.ts.map +1 -0
  671. package/dist/tools/operations/async-operation-runtime-types.d.ts +69 -0
  672. package/dist/tools/operations/async-operation-runtime-types.d.ts.map +1 -0
  673. package/dist/tools/operations/async-operation-runtime.d.ts +5 -0
  674. package/dist/tools/operations/async-operation-runtime.d.ts.map +1 -0
  675. package/dist/tools/operations/define-wait-tool.d.ts +22 -0
  676. package/dist/tools/operations/define-wait-tool.d.ts.map +1 -0
  677. package/dist/tools/operations/mount-wait.d.ts.map +1 -0
  678. package/dist/tools/operations/wait-core.d.ts.map +1 -0
  679. package/dist/tools/remote.d.ts +1 -1
  680. package/dist/tools/remote.d.ts.map +1 -1
  681. package/dist/tools/runtime-tool.d.ts +13 -4
  682. package/dist/tools/runtime-tool.d.ts.map +1 -1
  683. package/dist/tools/schema/coerce.d.ts.map +1 -0
  684. package/dist/tools/schema/flatten-join.d.ts.map +1 -0
  685. package/dist/tools/schema/flatten.d.ts.map +1 -0
  686. package/dist/tools/schema/portable-formats.d.ts.map +1 -0
  687. package/dist/tools/schema/presentation.d.ts +24 -0
  688. package/dist/tools/schema/presentation.d.ts.map +1 -0
  689. package/dist/tools/schema/schema.d.ts.map +1 -0
  690. package/dist/tools/schema/untyped-properties.d.ts.map +1 -0
  691. package/dist/tools/surface.d.ts +2 -3
  692. package/dist/tools/surface.d.ts.map +1 -1
  693. package/dist/tools/tool-logger.d.ts +1 -1
  694. package/dist/tools/tool-logger.d.ts.map +1 -1
  695. package/dist/tools/toolkit.d.ts +4 -4
  696. package/dist/tools/toolkit.d.ts.map +1 -1
  697. package/dist/tools/transfer/define-download-tool.d.ts +18 -0
  698. package/dist/tools/transfer/define-download-tool.d.ts.map +1 -0
  699. package/dist/tools/transfer/define-upload-tool.d.ts +16 -0
  700. package/dist/tools/transfer/define-upload-tool.d.ts.map +1 -0
  701. package/dist/tools/transfer/define-view-file-tool.d.ts +10 -0
  702. package/dist/tools/transfer/define-view-file-tool.d.ts.map +1 -0
  703. package/dist/tools/transfer/download-core.d.ts +20 -0
  704. package/dist/tools/transfer/download-core.d.ts.map +1 -0
  705. package/dist/tools/transfer/managed-file-error.d.ts +6 -0
  706. package/dist/tools/transfer/managed-file-error.d.ts.map +1 -0
  707. package/dist/tools/transfer/mount-download.d.ts +41 -0
  708. package/dist/tools/transfer/mount-download.d.ts.map +1 -0
  709. package/dist/tools/transfer/mount-upload.d.ts +21 -0
  710. package/dist/tools/transfer/mount-upload.d.ts.map +1 -0
  711. package/dist/tools/transfer/native-result.d.ts.map +1 -0
  712. package/dist/tools/transfer/upload-core.d.ts +4 -0
  713. package/dist/tools/transfer/upload-core.d.ts.map +1 -0
  714. package/dist/tools/transfer/view-file-contract.d.ts.map +1 -0
  715. package/dist/tools/transfer/view-file.d.ts +62 -0
  716. package/dist/tools/transfer/view-file.d.ts.map +1 -0
  717. package/dist/tools/transports.d.ts +1 -1
  718. package/dist/tools/transports.d.ts.map +1 -1
  719. package/dist/tracking/client-listeners.d.ts +30 -0
  720. package/dist/tracking/client-listeners.d.ts.map +1 -0
  721. package/dist/tracking/client-visit.d.ts +61 -0
  722. package/dist/tracking/client-visit.d.ts.map +1 -0
  723. package/dist/tracking/client.d.ts +3 -2
  724. package/dist/tracking/client.d.ts.map +1 -1
  725. package/dist/tracking/contract.d.ts +1 -1
  726. package/dist/tracking/contract.d.ts.map +1 -1
  727. package/llms/agent-runtime-browser.txt +33 -0
  728. package/llms/agent-runtime-coding-tools.txt +58 -0
  729. package/llms/agent-runtime-harness.txt +45 -0
  730. package/llms/agent-runtime-openrouter.txt +22 -0
  731. package/llms/agent-runtime-sandbox.txt +159 -0
  732. package/llms/agent-runtime-sqlite-bun.txt +29 -0
  733. package/llms/agent-runtime-sqlite-node.txt +26 -0
  734. package/llms/agent-runtime-testing.txt +30 -0
  735. package/llms/agent-runtime.2.txt +550 -0
  736. package/llms/agent-runtime.3.txt +311 -0
  737. package/llms/agent-runtime.txt +893 -0
  738. package/llms/application-diagnostic-journal.txt +30 -0
  739. package/llms/application-grammy.txt +27 -0
  740. package/llms/application-opentelemetry.txt +27 -0
  741. package/llms/application-schemas.txt +42 -0
  742. package/llms/application.2.txt +487 -0
  743. package/llms/application.txt +886 -0
  744. package/llms/cli.2.txt +80 -0
  745. package/llms/cli.txt +948 -0
  746. package/llms/contract.txt +606 -0
  747. package/llms/declaration.txt +286 -0
  748. package/llms/files.txt +33 -0
  749. package/llms/geo.txt +114 -0
  750. package/llms/google.txt +27 -0
  751. package/llms/live.txt +471 -0
  752. package/llms/node.txt +43 -0
  753. package/llms/oauth.txt +136 -0
  754. package/llms/observability.txt +893 -0
  755. package/llms/primitives.txt +158 -0
  756. package/llms/react.txt +184 -0
  757. package/llms/release.txt +176 -0
  758. package/llms/remote.txt +25 -0
  759. package/llms/server.2.txt +361 -0
  760. package/llms/server.3.txt +1031 -0
  761. package/llms/server.4.txt +905 -0
  762. package/llms/server.5.txt +250 -0
  763. package/llms/server.txt +996 -0
  764. package/llms/stitchkit.2.txt +836 -0
  765. package/llms/stitchkit.3.txt +147 -0
  766. package/llms/stitchkit.txt +260 -0
  767. package/llms/telegram.txt +30 -0
  768. package/llms/testing.txt +676 -0
  769. package/llms/tools-connections.txt +45 -0
  770. package/llms/tools-contract.txt +9 -0
  771. package/llms/tools-invoker.txt +9 -0
  772. package/llms/tools.2.txt +647 -0
  773. package/llms/tools.3.txt +288 -0
  774. package/llms/tools.txt +966 -0
  775. package/llms/tracking-server.txt +32 -0
  776. package/llms/tracking.txt +263 -0
  777. package/llms/upgrading-0.37.0-0.50.0.txt +947 -0
  778. package/llms/upgrading-0.53.0-0.67.0.txt +1174 -0
  779. package/llms/upgrading-0.68.0-0.94.0.txt +1159 -0
  780. package/llms/upgrading.txt +215 -0
  781. package/llms-full.txt +312 -77
  782. package/llms.txt +54 -5
  783. package/package.json +84 -83
  784. package/dist/agent-runtime/durability-contract.d.ts +0 -176
  785. package/dist/agent-runtime/durability-contract.d.ts.map +0 -1
  786. package/dist/agent-runtime/durability-json.d.ts +0 -3
  787. package/dist/agent-runtime/durability-json.d.ts.map +0 -1
  788. package/dist/agent-runtime/durability-ledger.d.ts +0 -16
  789. package/dist/agent-runtime/durability-ledger.d.ts.map +0 -1
  790. package/dist/agent-runtime/durability-scheduler.d.ts +0 -29
  791. package/dist/agent-runtime/durability-scheduler.d.ts.map +0 -1
  792. package/dist/agent-runtime/durability.d.ts +0 -14
  793. package/dist/agent-runtime/durability.d.ts.map +0 -1
  794. package/dist/agent-runtime/store-driver.d.ts +0 -814
  795. package/dist/agent-runtime/store-driver.d.ts.map +0 -1
  796. package/dist/agent-runtime-browser.d.ts +0 -5
  797. package/dist/agent-runtime-browser.d.ts.map +0 -1
  798. package/dist/agent-runtime-browser.js +0 -124
  799. package/dist/agent-runtime-coding-tools.d.ts +0 -2
  800. package/dist/agent-runtime-coding-tools.d.ts.map +0 -1
  801. package/dist/agent-runtime-coding-tools.js +0 -23
  802. package/dist/agent-runtime-harness.d.ts +0 -2
  803. package/dist/agent-runtime-harness.d.ts.map +0 -1
  804. package/dist/agent-runtime-harness.js +0 -729
  805. package/dist/agent-runtime-openrouter.d.ts +0 -29
  806. package/dist/agent-runtime-openrouter.d.ts.map +0 -1
  807. package/dist/agent-runtime-openrouter.js +0 -270
  808. package/dist/agent-runtime-sandbox.d.ts +0 -5
  809. package/dist/agent-runtime-sandbox.d.ts.map +0 -1
  810. package/dist/agent-runtime-sandbox.js +0 -798
  811. package/dist/agent-runtime-sqlite-bun.d.ts +0 -11
  812. package/dist/agent-runtime-sqlite-bun.d.ts.map +0 -1
  813. package/dist/agent-runtime-sqlite-bun.js +0 -42
  814. package/dist/agent-runtime-sqlite-node.d.ts +0 -11
  815. package/dist/agent-runtime-sqlite-node.d.ts.map +0 -1
  816. package/dist/agent-runtime-sqlite-node.js +0 -44
  817. package/dist/agent-runtime-testing.d.ts +0 -3
  818. package/dist/agent-runtime-testing.d.ts.map +0 -1
  819. package/dist/agent-runtime-testing.js +0 -156
  820. package/dist/agent-runtime.d.ts +0 -38
  821. package/dist/agent-runtime.d.ts.map +0 -1
  822. package/dist/agent-runtime.js +0 -2607
  823. package/dist/application/channel.d.ts.map +0 -1
  824. package/dist/application-diagnostic-journal.d.ts +0 -21
  825. package/dist/application-diagnostic-journal.d.ts.map +0 -1
  826. package/dist/application-diagnostic-journal.js +0 -632
  827. package/dist/application-grammy.d.ts +0 -2
  828. package/dist/application-grammy.d.ts.map +0 -1
  829. package/dist/application-grammy.js +0 -169
  830. package/dist/application-opentelemetry.d.ts +0 -2
  831. package/dist/application-opentelemetry.d.ts.map +0 -1
  832. package/dist/application-opentelemetry.js +0 -250
  833. package/dist/application-schemas.d.ts +0 -15
  834. package/dist/application-schemas.d.ts.map +0 -1
  835. package/dist/application-schemas.js +0 -27
  836. package/dist/application.d.ts +0 -22
  837. package/dist/application.d.ts.map +0 -1
  838. package/dist/application.js +0 -1977
  839. package/dist/cli.d.ts +0 -41
  840. package/dist/cli.d.ts.map +0 -1
  841. package/dist/cli.js +0 -753
  842. package/dist/contract/index.d.ts +0 -8
  843. package/dist/contract/index.d.ts.map +0 -1
  844. package/dist/contract/index.js +0 -55
  845. package/dist/declaration.d.ts.map +0 -1
  846. package/dist/declaration.js +0 -183
  847. package/dist/files.d.ts +0 -3
  848. package/dist/files.d.ts.map +0 -1
  849. package/dist/files.js +0 -15
  850. package/dist/geo.d.ts +0 -3
  851. package/dist/geo.d.ts.map +0 -1
  852. package/dist/geo.js +0 -245
  853. package/dist/google.d.ts.map +0 -1
  854. package/dist/google.js +0 -175
  855. package/dist/index-0a349c33.js +0 -470
  856. package/dist/index-0j3vcp5m.js +0 -28
  857. package/dist/index-2c2bjw3s.js +0 -51
  858. package/dist/index-2na0qrfn.js +0 -214
  859. package/dist/index-2qzskm8h.js +0 -63
  860. package/dist/index-3bmnp41g.js +0 -2169
  861. package/dist/index-3xwxfj4z.js +0 -334
  862. package/dist/index-4fpa9dy2.js +0 -51
  863. package/dist/index-6kyksz9y.js +0 -268
  864. package/dist/index-77fekveh.js +0 -44
  865. package/dist/index-7gnkny4z.js +0 -326
  866. package/dist/index-7zbps32p.js +0 -89
  867. package/dist/index-9f8ztey6.js +0 -588
  868. package/dist/index-a11g2kry.js +0 -866
  869. package/dist/index-a916km3r.js +0 -45
  870. package/dist/index-actkayzn.js +0 -367
  871. package/dist/index-bn2cjajt.js +0 -524
  872. package/dist/index-bx75zwt7.js +0 -63
  873. package/dist/index-cby4ar3v.js +0 -46
  874. package/dist/index-cnyk6te3.js +0 -77
  875. package/dist/index-cxqhvq21.js +0 -413
  876. package/dist/index-e0znv5gn.js +0 -176
  877. package/dist/index-e42wzzz5.js +0 -154
  878. package/dist/index-f477k430.js +0 -324
  879. package/dist/index-f9mb610r.js +0 -177
  880. package/dist/index-fadnxwna.js +0 -1046
  881. package/dist/index-fq77yfzc.js +0 -1303
  882. package/dist/index-h9etkkyk.js +0 -1126
  883. package/dist/index-hrbajay7.js +0 -1196
  884. package/dist/index-kw9t5ayn.js +0 -507
  885. package/dist/index-mzvgxp0n.js +0 -80
  886. package/dist/index-n0f51dfn.js +0 -3170
  887. package/dist/index-p13mwz16.js +0 -16
  888. package/dist/index-s8cnx02s.js +0 -90
  889. package/dist/index-sr93cwf9.js +0 -325
  890. package/dist/index-tmwcrptx.js +0 -85
  891. package/dist/index-v5573g1k.js +0 -142
  892. package/dist/index-vjpvjqpn.js +0 -86
  893. package/dist/index-vk3kq9sb.js +0 -3344
  894. package/dist/index-wc4x00bn.js +0 -103
  895. package/dist/index-wnfk50r0.js +0 -211
  896. package/dist/index-yewwh1w4.js +0 -647
  897. package/dist/index-yn8remb1.js +0 -290
  898. package/dist/index-ywd0y6m1.js +0 -394
  899. package/dist/index-zwkgfq1s.js +0 -345
  900. package/dist/index.d.ts +0 -14
  901. package/dist/index.d.ts.map +0 -1
  902. package/dist/index.js +0 -632
  903. package/dist/internal/errors.d.ts +0 -92
  904. package/dist/internal/errors.d.ts.map +0 -1
  905. package/dist/internal/observability-sink.d.ts +0 -81
  906. package/dist/internal/observability-sink.d.ts.map +0 -1
  907. package/dist/live.d.ts +0 -19
  908. package/dist/live.d.ts.map +0 -1
  909. package/dist/live.js +0 -282
  910. package/dist/logger.d.ts.map +0 -1
  911. package/dist/node.d.ts +0 -18
  912. package/dist/node.d.ts.map +0 -1
  913. package/dist/node.js +0 -303
  914. package/dist/oauth.d.ts +0 -57
  915. package/dist/oauth.d.ts.map +0 -1
  916. package/dist/oauth.js +0 -170
  917. package/dist/observability/index.d.ts +0 -19
  918. package/dist/observability/index.d.ts.map +0 -1
  919. package/dist/observability/index.js +0 -569
  920. package/dist/primitives.d.ts +0 -3
  921. package/dist/primitives.d.ts.map +0 -1
  922. package/dist/primitives.js +0 -754
  923. package/dist/react.d.ts +0 -5
  924. package/dist/react.d.ts.map +0 -1
  925. package/dist/react.js +0 -403
  926. package/dist/release.d.ts +0 -15
  927. package/dist/release.d.ts.map +0 -1
  928. package/dist/release.js +0 -196
  929. package/dist/remote.d.ts +0 -9
  930. package/dist/remote.d.ts.map +0 -1
  931. package/dist/remote.js +0 -88
  932. package/dist/retained.d.ts.map +0 -1
  933. package/dist/server/file-state-store.d.ts +0 -23
  934. package/dist/server/file-state-store.d.ts.map +0 -1
  935. package/dist/server/index.d.ts +0 -36
  936. package/dist/server/index.d.ts.map +0 -1
  937. package/dist/server/index.js +0 -1745
  938. package/dist/server/request.d.ts.map +0 -1
  939. package/dist/telegram.d.ts +0 -3
  940. package/dist/telegram.d.ts.map +0 -1
  941. package/dist/telegram.js +0 -224
  942. package/dist/testing/agent-store-conformance.d.ts +0 -40
  943. package/dist/testing/agent-store-conformance.d.ts.map +0 -1
  944. package/dist/testing.d.ts +0 -39
  945. package/dist/testing.d.ts.map +0 -1
  946. package/dist/testing.js +0 -2209
  947. package/dist/tool-invoker.d.ts +0 -9
  948. package/dist/tool-invoker.d.ts.map +0 -1
  949. package/dist/tool-invoker.js +0 -21
  950. package/dist/tools/async-operation-contract.d.ts.map +0 -1
  951. package/dist/tools/async-operation.d.ts +0 -332
  952. package/dist/tools/async-operation.d.ts.map +0 -1
  953. package/dist/tools/cli-args.d.ts +0 -143
  954. package/dist/tools/cli-args.d.ts.map +0 -1
  955. package/dist/tools/cli-checkpoint.d.ts +0 -24
  956. package/dist/tools/cli-checkpoint.d.ts.map +0 -1
  957. package/dist/tools/cli-command.d.ts +0 -70
  958. package/dist/tools/cli-command.d.ts.map +0 -1
  959. package/dist/tools/cli-format.d.ts +0 -49
  960. package/dist/tools/cli-format.d.ts.map +0 -1
  961. package/dist/tools/cli-installer.d.ts +0 -34
  962. package/dist/tools/cli-installer.d.ts.map +0 -1
  963. package/dist/tools/cli-invoke.d.ts +0 -143
  964. package/dist/tools/cli-invoke.d.ts.map +0 -1
  965. package/dist/tools/cli-manifest.d.ts +0 -80
  966. package/dist/tools/cli-manifest.d.ts.map +0 -1
  967. package/dist/tools/cli-policy.d.ts +0 -27
  968. package/dist/tools/cli-policy.d.ts.map +0 -1
  969. package/dist/tools/cli-profile.d.ts +0 -40
  970. package/dist/tools/cli-profile.d.ts.map +0 -1
  971. package/dist/tools/cli-signature.d.ts +0 -81
  972. package/dist/tools/cli-signature.d.ts.map +0 -1
  973. package/dist/tools/cli-stream.d.ts +0 -93
  974. package/dist/tools/cli-stream.d.ts.map +0 -1
  975. package/dist/tools/cli-update.d.ts +0 -126
  976. package/dist/tools/cli-update.d.ts.map +0 -1
  977. package/dist/tools/cli-view.d.ts +0 -12
  978. package/dist/tools/cli-view.d.ts.map +0 -1
  979. package/dist/tools/cli-wait.d.ts +0 -54
  980. package/dist/tools/cli-wait.d.ts.map +0 -1
  981. package/dist/tools/cli.d.ts +0 -94
  982. package/dist/tools/cli.d.ts.map +0 -1
  983. package/dist/tools/coerce.d.ts.map +0 -1
  984. package/dist/tools/connections/index.d.ts +0 -20
  985. package/dist/tools/connections/index.d.ts.map +0 -1
  986. package/dist/tools/connections/index.js +0 -1107
  987. package/dist/tools/define-download-tool.d.ts +0 -18
  988. package/dist/tools/define-download-tool.d.ts.map +0 -1
  989. package/dist/tools/define-upload-tool.d.ts +0 -16
  990. package/dist/tools/define-upload-tool.d.ts.map +0 -1
  991. package/dist/tools/define-view-file-tool.d.ts +0 -10
  992. package/dist/tools/define-view-file-tool.d.ts.map +0 -1
  993. package/dist/tools/define-wait-tool.d.ts +0 -22
  994. package/dist/tools/define-wait-tool.d.ts.map +0 -1
  995. package/dist/tools/download-core.d.ts +0 -20
  996. package/dist/tools/download-core.d.ts.map +0 -1
  997. package/dist/tools/flatten-join.d.ts.map +0 -1
  998. package/dist/tools/flatten.d.ts.map +0 -1
  999. package/dist/tools/json-schema-dialect.d.ts +0 -17
  1000. package/dist/tools/json-schema-dialect.d.ts.map +0 -1
  1001. package/dist/tools/json-schema.d.ts.map +0 -1
  1002. package/dist/tools/managed-file-error.d.ts +0 -6
  1003. package/dist/tools/managed-file-error.d.ts.map +0 -1
  1004. package/dist/tools/mcp-app.d.ts +0 -62
  1005. package/dist/tools/mcp-app.d.ts.map +0 -1
  1006. package/dist/tools/mcp-catalog.d.ts +0 -68
  1007. package/dist/tools/mcp-catalog.d.ts.map +0 -1
  1008. package/dist/tools/mcp-handler.d.ts +0 -46
  1009. package/dist/tools/mcp-handler.d.ts.map +0 -1
  1010. package/dist/tools/mcp-prepare.d.ts +0 -75
  1011. package/dist/tools/mcp-prepare.d.ts.map +0 -1
  1012. package/dist/tools/mcp-progress.d.ts +0 -46
  1013. package/dist/tools/mcp-progress.d.ts.map +0 -1
  1014. package/dist/tools/mcp-round-policy.d.ts +0 -33
  1015. package/dist/tools/mcp-round-policy.d.ts.map +0 -1
  1016. package/dist/tools/mcp-round.d.ts +0 -61
  1017. package/dist/tools/mcp-round.d.ts.map +0 -1
  1018. package/dist/tools/mcp-stdio-signals.d.ts +0 -33
  1019. package/dist/tools/mcp-stdio-signals.d.ts.map +0 -1
  1020. package/dist/tools/mcp-stdio.d.ts +0 -20
  1021. package/dist/tools/mcp-stdio.d.ts.map +0 -1
  1022. package/dist/tools/mcp-trace.d.ts +0 -12
  1023. package/dist/tools/mcp-trace.d.ts.map +0 -1
  1024. package/dist/tools/mcp.d.ts +0 -152
  1025. package/dist/tools/mcp.d.ts.map +0 -1
  1026. package/dist/tools/mount-download.d.ts +0 -41
  1027. package/dist/tools/mount-download.d.ts.map +0 -1
  1028. package/dist/tools/mount-upload.d.ts +0 -21
  1029. package/dist/tools/mount-upload.d.ts.map +0 -1
  1030. package/dist/tools/mount-wait.d.ts.map +0 -1
  1031. package/dist/tools/native-mcp.d.ts +0 -20
  1032. package/dist/tools/native-mcp.d.ts.map +0 -1
  1033. package/dist/tools/native-result.d.ts.map +0 -1
  1034. package/dist/tools/oauth-metadata.d.ts +0 -28
  1035. package/dist/tools/oauth-metadata.d.ts.map +0 -1
  1036. package/dist/tools/oauth-provider.d.ts +0 -184
  1037. package/dist/tools/oauth-provider.d.ts.map +0 -1
  1038. package/dist/tools/portable-formats.d.ts.map +0 -1
  1039. package/dist/tools/presentation.d.ts +0 -22
  1040. package/dist/tools/presentation.d.ts.map +0 -1
  1041. package/dist/tools/schema.d.ts.map +0 -1
  1042. package/dist/tools/untyped-properties.d.ts.map +0 -1
  1043. package/dist/tools/upload-core.d.ts +0 -4
  1044. package/dist/tools/upload-core.d.ts.map +0 -1
  1045. package/dist/tools/view-file-contract.d.ts.map +0 -1
  1046. package/dist/tools/view-file.d.ts +0 -62
  1047. package/dist/tools/view-file.d.ts.map +0 -1
  1048. package/dist/tools/wait-core.d.ts.map +0 -1
  1049. package/dist/tools-contract.d.ts +0 -29
  1050. package/dist/tools-contract.d.ts.map +0 -1
  1051. package/dist/tools-contract.js +0 -24
  1052. package/dist/tools.d.ts +0 -50
  1053. package/dist/tools.d.ts.map +0 -1
  1054. package/dist/tools.js +0 -2930
  1055. package/dist/tracking-server.d.ts +0 -15
  1056. package/dist/tracking-server.d.ts.map +0 -1
  1057. package/dist/tracking.d.ts +0 -24
  1058. package/dist/tracking.d.ts.map +0 -1
  1059. package/dist/tracking.js +0 -1092
  1060. package/dist/upgrade-cli.d.ts.map +0 -1
  1061. package/dist/upgrade-cli.js +0 -177
  1062. /package/dist/{retained.d.ts → browser/retained.d.ts} +0 -0
  1063. /package/dist/{declaration.d.ts → declaration/declaration.d.ts} +0 -0
  1064. /package/dist/{upgrade-cli.d.ts → entrypoints/bin/upgrade-cli.d.ts} +0 -0
  1065. /package/dist/{tracking-server.js → entrypoints/tracking/server.js} +0 -0
  1066. /package/dist/{google.d.ts → google/google.d.ts} +0 -0
  1067. /package/dist/{index-pq95qkbf.js → index-5jm36zv1.js} +0 -0
  1068. /package/dist/{application → internal}/channel.d.ts +0 -0
  1069. /package/dist/{logger.d.ts → internal/logger.d.ts} +0 -0
  1070. /package/dist/{server → internal}/request.d.ts +0 -0
  1071. /package/dist/{tools → json-schema}/json-schema.d.ts +0 -0
  1072. /package/dist/tools/{async-operation-contract.d.ts → operations/async-operation-contract.d.ts} +0 -0
  1073. /package/dist/tools/{mount-wait.d.ts → operations/mount-wait.d.ts} +0 -0
  1074. /package/dist/tools/{wait-core.d.ts → operations/wait-core.d.ts} +0 -0
  1075. /package/dist/tools/{coerce.d.ts → schema/coerce.d.ts} +0 -0
  1076. /package/dist/tools/{flatten-join.d.ts → schema/flatten-join.d.ts} +0 -0
  1077. /package/dist/tools/{flatten.d.ts → schema/flatten.d.ts} +0 -0
  1078. /package/dist/tools/{portable-formats.d.ts → schema/portable-formats.d.ts} +0 -0
  1079. /package/dist/tools/{schema.d.ts → schema/schema.d.ts} +0 -0
  1080. /package/dist/tools/{untyped-properties.d.ts → schema/untyped-properties.d.ts} +0 -0
  1081. /package/dist/tools/{native-result.d.ts → transfer/native-result.d.ts} +0 -0
  1082. /package/dist/tools/{view-file-contract.d.ts → transfer/view-file-contract.d.ts} +0 -0
package/dist/tracking.js DELETED
@@ -1,1092 +0,0 @@
1
- import {
2
- ApiError
3
- } from "./index-3xwxfj4z.js";
4
- import {
5
- defineContract
6
- } from "./index-0a349c33.js";
7
- import"./index-rxfy4cq7.js";
8
- import"./index-6k1937bx.js";
9
- import"./index-zcgf3gqf.js";
10
- import"./index-2vtcmrj9.js";
11
- import"./index-kzfs85xp.js";
12
- import"./index-77fekveh.js";
13
-
14
- // src/tracking/attribution.ts
15
- import { z as z2 } from "zod";
16
-
17
- // src/tracking/schemas.ts
18
- import { z } from "zod";
19
- var UtmDataSchema = z.object({
20
- source: z.string().max(200).optional(),
21
- medium: z.string().max(200).optional(),
22
- campaign: z.string().max(200).optional(),
23
- content: z.string().max(200).optional(),
24
- term: z.string().max(200).optional()
25
- });
26
- var AttributionDataSchema = z.object({
27
- utm: UtmDataSchema.optional(),
28
- referrer: z.string().optional(),
29
- landingPage: z.string().optional()
30
- });
31
- var DEFAULT_BUILD_ID_PATTERN = /^(dev|[a-f0-9]{7,40})$/;
32
- var TrackingDispositionStatusSchema = z.enum([
33
- "accepted",
34
- "duplicate",
35
- "identity-invalid",
36
- "excluded-bot"
37
- ]);
38
- var TrackingDispositionSchema = z.object({
39
- eventId: z.uuid(),
40
- status: TrackingDispositionStatusSchema
41
- });
42
- var TrackEventsResponseSchema = z.object({
43
- accepted: z.number().int().nonnegative(),
44
- dispositions: z.array(TrackingDispositionSchema)
45
- });
46
- var VisitBootstrapResponseSchema = z.object({
47
- visitId: z.uuid(),
48
- expiresAt: z.iso.datetime()
49
- });
50
- var TrackingOutboxStateSchema = z.enum(["available", "unavailable"]);
51
- function trackingEventShape(eventTypes) {
52
- return {
53
- eventId: z.uuid(),
54
- visitId: z.uuid(),
55
- browserStreamId: z.uuid(),
56
- browserSequence: z.number().int().nonnegative(),
57
- type: z.enum(eventTypes),
58
- page: z.string().max(2000),
59
- metadata: z.record(z.string(), z.unknown()).optional(),
60
- clientTimestamp: z.number()
61
- };
62
- }
63
- function visitEntryContextShape(buildIdPattern) {
64
- return {
65
- browserStreamId: z.uuid(),
66
- previousVisitId: z.uuid().optional(),
67
- origin: z.url().max(500),
68
- landingPath: z.string().startsWith("/").max(300).regex(/^[^?#]*$/),
69
- referrer: z.url().max(2000).optional(),
70
- utm: UtmDataSchema.optional(),
71
- displayMode: z.enum(["browser", "standalone"]),
72
- screenWidth: z.number().int().positive().max(20000),
73
- screenHeight: z.number().int().positive().max(20000),
74
- buildId: z.string().regex(buildIdPattern),
75
- outboxState: TrackingOutboxStateSchema,
76
- outboxQueued: z.number().int().nonnegative().max(1000),
77
- outboxDropped: z.number().int().nonnegative()
78
- };
79
- }
80
- function createTrackingSchemas(config) {
81
- const base = z.object(trackingEventShape(config.eventTypes));
82
- const event = config.eventExtras ? base.extend(config.eventExtras.shape) : base;
83
- const buildIdPattern = config.buildIdPattern ?? DEFAULT_BUILD_ID_PATTERN;
84
- const maxEvents = config.maxEventsPerBatch ?? 50;
85
- return {
86
- event,
87
- request: z.object({
88
- buildId: z.string().regex(buildIdPattern),
89
- events: z.array(event).min(1).max(maxEvents),
90
- utm: UtmDataSchema.optional()
91
- }),
92
- response: TrackEventsResponseSchema,
93
- disposition: TrackingDispositionSchema,
94
- entry: z.object(visitEntryContextShape(buildIdPattern)),
95
- bootstrap: VisitBootstrapResponseSchema
96
- };
97
- }
98
-
99
- // src/tracking/attribution.ts
100
- var StoredTouchSchema = z2.object({ data: AttributionDataSchema, capturedAt: z2.number() });
101
- var StoredAttributionSchema = z2.object({
102
- firstTouch: StoredTouchSchema,
103
- currentTouch: StoredTouchSchema
104
- });
105
- function normalize(value) {
106
- if (!value)
107
- return;
108
- return value.toLowerCase().trim().slice(0, 200) || undefined;
109
- }
110
- function parseUtmFromSearch(search) {
111
- const params = new URLSearchParams(search);
112
- const source = normalize(params.get("utm_source"));
113
- if (!source)
114
- return null;
115
- return {
116
- source,
117
- medium: normalize(params.get("utm_medium")),
118
- campaign: normalize(params.get("utm_campaign")),
119
- content: normalize(params.get("utm_content")),
120
- term: normalize(params.get("utm_term"))
121
- };
122
- }
123
- function parseReferrer(referrer, currentHostname, referrerMap = []) {
124
- if (!referrer)
125
- return null;
126
- try {
127
- const hostname = new URL(referrer).hostname.toLowerCase();
128
- if (hostname === currentHostname.toLowerCase())
129
- return null;
130
- const match = referrerMap.find((rule) => rule.pattern.test(hostname));
131
- return match ? { source: match.source, medium: match.medium } : { source: hostname, medium: "referral" };
132
- } catch {
133
- return null;
134
- }
135
- }
136
- function readStored(storage, key, now, ttlMs) {
137
- try {
138
- const raw = storage.getItem(key);
139
- if (!raw)
140
- return null;
141
- const parsed = StoredAttributionSchema.safeParse(JSON.parse(raw));
142
- if (!parsed.success || now - parsed.data.firstTouch.capturedAt > ttlMs) {
143
- storage.removeItem(key);
144
- return null;
145
- }
146
- return parsed.data;
147
- } catch {
148
- return null;
149
- }
150
- }
151
- function writeStored(storage, key, value) {
152
- try {
153
- storage.setItem(key, JSON.stringify(value));
154
- } catch {}
155
- }
156
- function resolveAttribution({
157
- search,
158
- referrer,
159
- pathname,
160
- hostname,
161
- storage,
162
- referrerMap = [],
163
- storageKey = "tracking.attribution",
164
- ttlMs = 90 * 24 * 60 * 60 * 1000,
165
- now = Date.now()
166
- }) {
167
- const stored = readStored(storage, storageKey, now, ttlMs);
168
- const urlUtm = parseUtmFromSearch(search);
169
- if (urlUtm) {
170
- const currentTouch = {
171
- utm: urlUtm,
172
- referrer: referrer || undefined,
173
- landingPage: pathname
174
- };
175
- const persisted = {
176
- firstTouch: {
177
- data: stored?.firstTouch.data ?? currentTouch,
178
- capturedAt: stored?.firstTouch.capturedAt ?? now
179
- },
180
- currentTouch: { data: currentTouch, capturedAt: now }
181
- };
182
- writeStored(storage, storageKey, persisted);
183
- return {
184
- firstTouch: persisted.firstTouch.data,
185
- currentTouch: persisted.currentTouch.data
186
- };
187
- }
188
- if (stored)
189
- return { firstTouch: stored.firstTouch.data, currentTouch: stored.currentTouch.data };
190
- const fromReferrer = parseReferrer(referrer, hostname, referrerMap);
191
- const firstTouch = {
192
- utm: fromReferrer ? { source: fromReferrer.source, medium: fromReferrer.medium } : undefined,
193
- referrer: referrer || undefined,
194
- landingPage: pathname
195
- };
196
- writeStored(storage, storageKey, {
197
- firstTouch: { data: firstTouch, capturedAt: now },
198
- currentTouch: { data: firstTouch, capturedAt: now }
199
- });
200
- return { firstTouch, currentTouch: firstTouch };
201
- }
202
- // src/tracking/beacon.ts
203
- function sendUnloadBeacon(url, body, sender = typeof navigator === "undefined" ? undefined : navigator) {
204
- if (!sender || typeof sender.sendBeacon !== "function")
205
- return false;
206
- return sender.sendBeacon(url, body);
207
- }
208
- // src/tracking/clicks.ts
209
- function label(target) {
210
- return (target?.textContent ?? "").trim().slice(0, 100) || undefined;
211
- }
212
- function sanitizedHref(value, origin) {
213
- if (!value)
214
- return;
215
- try {
216
- const url = new URL(value, origin);
217
- return url.origin === origin ? url.pathname : `${url.origin}${url.pathname}`;
218
- } catch {
219
- return;
220
- }
221
- }
222
- function resolveTrackedClick(target, { origin, attributes = {}, isAction = () => true }) {
223
- if (!target)
224
- return null;
225
- const trackAttribute = attributes.track ?? "data-track";
226
- const actionAttribute = attributes.action ?? "data-track-action";
227
- const contextAttribute = attributes.context ?? "data-track-context";
228
- const tracked = target.closest(`[${trackAttribute}], [${actionAttribute}]`);
229
- const anchor = target.closest("a[href]");
230
- const href = anchor?.getAttribute("href") ?? tracked?.getAttribute("href") ?? null;
231
- let sameOriginNavigation = false;
232
- let outbound = false;
233
- if (href) {
234
- try {
235
- const url = new URL(href, origin);
236
- sameOriginNavigation = url.origin === origin;
237
- outbound = url.protocol.startsWith("http") && !sameOriginNavigation;
238
- } catch {
239
- sameOriginNavigation = false;
240
- }
241
- }
242
- const result = { leavesPage: sameOriginNavigation || outbound };
243
- if (tracked) {
244
- const action = tracked.getAttribute(actionAttribute);
245
- const element = tracked.getAttribute(trackAttribute);
246
- if (action && isAction(action)) {
247
- result.interaction = {
248
- action,
249
- context: tracked.getAttribute(contextAttribute) ?? undefined
250
- };
251
- } else if (element) {
252
- result.click = {
253
- element,
254
- elementText: label(tracked),
255
- href: sanitizedHref(href, origin)
256
- };
257
- }
258
- }
259
- if (outbound && href) {
260
- result.outbound = { href: sanitizedHref(href, origin) ?? href, label: label(anchor) };
261
- }
262
- return result.interaction || result.click || result.outbound ? result : null;
263
- }
264
- // src/tracking/delivery.ts
265
- function isRetryable(error) {
266
- return ApiError.is(error) && (error.status === 0 || error.status >= 500);
267
- }
268
- function isUnauthorized(error) {
269
- return ApiError.is(error) && (error.status === 401 || error.status === 403);
270
- }
271
- async function deliverTrackingBatch({
272
- request,
273
- onFailure,
274
- onUnauthorized,
275
- wait = (delayMs) => new Promise((resolve) => setTimeout(resolve, delayMs)),
276
- retryDelayMs = 250
277
- }) {
278
- let recovered = false;
279
- for (let attempt = 0;attempt < 2; attempt += 1) {
280
- try {
281
- await request();
282
- return "delivered";
283
- } catch (error) {
284
- if (attempt === 0 && isRetryable(error)) {
285
- await wait(retryDelayMs);
286
- continue;
287
- }
288
- if (isUnauthorized(error) && onUnauthorized && !recovered) {
289
- recovered = true;
290
- if (await onUnauthorized())
291
- continue;
292
- return "auth-invalidated";
293
- }
294
- onFailure(error);
295
- return "failed";
296
- }
297
- }
298
- return "failed";
299
- }
300
-
301
- // src/tracking/scroll.ts
302
- function scrollDepthPercent(view) {
303
- const scrollable = view.scrollHeight - view.innerHeight;
304
- if (scrollable <= 0)
305
- return 0;
306
- return Math.max(0, Math.min(100, Math.round(view.scrollY / scrollable * 100)));
307
- }
308
- function createScrollMilestones(milestones = [25, 50, 75, 100]) {
309
- const sorted = [...milestones].sort((a, b) => a - b);
310
- let deepest = 0;
311
- const fired = new Set;
312
- return {
313
- record(percent) {
314
- deepest = Math.max(deepest, percent);
315
- },
316
- observe(percent) {
317
- deepest = Math.max(deepest, percent);
318
- const reached = [];
319
- for (const milestone of sorted) {
320
- if (deepest >= milestone && !fired.has(milestone)) {
321
- fired.add(milestone);
322
- reached.push(milestone);
323
- }
324
- }
325
- return reached;
326
- },
327
- max: () => deepest,
328
- reset() {
329
- deepest = 0;
330
- fired.clear();
331
- }
332
- };
333
- }
334
-
335
- // src/tracking/sequence-reserve.ts
336
- function createSequenceReserve(reserve, options = {}) {
337
- const blockSize = options.blockSize ?? 16;
338
- const lowWater = options.lowWater ?? 4;
339
- const pool = [];
340
- let pending = null;
341
- let fallback = null;
342
- const pushFallbackBlock = () => {
343
- for (let i = 0;i < blockSize; i += 1) {
344
- fallback = (fallback ?? 0) + 1;
345
- pool.push(fallback);
346
- }
347
- };
348
- const refill = () => {
349
- if (pending)
350
- return pending;
351
- if (fallback !== null) {
352
- pushFallbackBlock();
353
- return Promise.resolve();
354
- }
355
- pending = reserve(blockSize).then((reserved) => {
356
- pool.push(...reserved);
357
- }).catch((error) => {
358
- fallback = (options.fallbackBase ?? (() => Math.floor(Math.random() * 1e6)))() * 1e6;
359
- options.onUnavailable?.(error);
360
- pushFallbackBlock();
361
- }).finally(() => {
362
- pending = null;
363
- });
364
- return pending;
365
- };
366
- return {
367
- take() {
368
- const next = pool.shift() ?? null;
369
- if (pool.length < lowWater)
370
- refill();
371
- return next;
372
- },
373
- refill,
374
- shared: () => fallback === null,
375
- reset() {
376
- fallback = null;
377
- pool.length = 0;
378
- }
379
- };
380
- }
381
-
382
- // src/tracking/visible-time.ts
383
- function createVisibleTimeMeter(options = {}) {
384
- const now = options.now ?? (() => performance.now());
385
- const wallClock = options.wallClock ?? (() => Date.now());
386
- const randomUUID = options.randomUUID ?? (() => crypto.randomUUID());
387
- let checkpointAt = now();
388
- const cut = () => {
389
- const at = now();
390
- const activeDurationMs = Math.max(0, Math.round(at - checkpointAt));
391
- checkpointAt = at;
392
- return {
393
- activeIntervalId: randomUUID(),
394
- activeDurationMs,
395
- intervalStartedAt: wallClock() - activeDurationMs
396
- };
397
- };
398
- return {
399
- checkpoint() {
400
- checkpointAt = now();
401
- },
402
- cut,
403
- heartbeat(visible) {
404
- if (visible)
405
- return { ...cut(), isVisible: true };
406
- return { isVisible: false, activeDurationMs: 0 };
407
- }
408
- };
409
- }
410
-
411
- // src/tracking/client.ts
412
- var CONVENTIONAL_TRACKING_EVENT_TYPES = {
413
- pageView: "PAGE_VIEW",
414
- pageLeave: "PAGE_LEAVE",
415
- scrollDepth: "SCROLL_DEPTH",
416
- heartbeat: "SESSION_HEARTBEAT",
417
- click: "CLICK",
418
- outboundClick: "OUTBOUND_CLICK",
419
- interaction: "INTERACTION"
420
- };
421
- function chunk(items, size) {
422
- const chunks = [];
423
- for (let at = 0;at < items.length; at += size)
424
- chunks.push(items.slice(at, at + size));
425
- return chunks;
426
- }
427
- function createTrackingClient(config) {
428
- if (typeof config.buildId !== "string" || config.buildId.length === 0) {
429
- throw new Error('[stitchkit] tracking client requires a buildId — a git SHA or "dev"');
430
- }
431
- const { host, builtin, outbox } = config;
432
- const heartbeatMs = config.heartbeatMs ?? 30000;
433
- const renewAfterHiddenMs = config.renewAfterHiddenMs ?? 30 * 60 * 1000;
434
- const pendingLimit = config.pendingLimit ?? 100;
435
- const batchSize = config.batchSize ?? 50;
436
- const fail = config.onFailure ?? (() => {
437
- return;
438
- });
439
- const decorate = config.decorate ?? ((event) => event);
440
- const unload = config.unload ?? ((request) => config.unloadUrl === undefined ? false : sendUnloadBeacon(config.unloadUrl, JSON.stringify(request)));
441
- let browserStreamId = null;
442
- let visitId = null;
443
- let outboxAvailable = outbox !== undefined;
444
- let bootstrapping = null;
445
- let pending = [];
446
- let currentPage = null;
447
- let attribution = null;
448
- let running = 0;
449
- const flushOwner = host.randomUUID();
450
- const meter = createVisibleTimeMeter({
451
- now: () => host.now(),
452
- wallClock: () => host.wallClock(),
453
- randomUUID: () => host.randomUUID()
454
- });
455
- const scroll = createScrollMilestones(config.scrollMilestones);
456
- const sequences = createSequenceReserve((count) => {
457
- if (!outbox || !outboxAvailable)
458
- return Promise.reject(new Error("outbox unavailable"));
459
- return outbox.reserveSequences(count);
460
- }, {
461
- ...config.sequence,
462
- onUnavailable: outbox ? (error) => {
463
- outboxAvailable = false;
464
- fail("sequence reservation", error);
465
- } : undefined
466
- });
467
- const currentUtm = () => attribution?.currentTouch.utm?.source ? attribution.currentTouch.utm : undefined;
468
- const captureAttribution = (search, pathname) => {
469
- if (!host.storage)
470
- return null;
471
- const page = host.page();
472
- attribution = resolveAttribution({
473
- search,
474
- pathname,
475
- referrer: page.referrer,
476
- hostname: page.hostname,
477
- storage: host.storage,
478
- referrerMap: config.referrerMap,
479
- now: host.wallClock()
480
- });
481
- return attribution;
482
- };
483
- const bootstrapVisit = (renew = false) => {
484
- if (!renew && visitId && browserStreamId)
485
- return Promise.resolve(visitId);
486
- if (bootstrapping)
487
- return bootstrapping;
488
- const run = (async () => {
489
- try {
490
- const health = outbox ? await outbox.health() : { state: "unavailable", queued: 0, dropped: 0 };
491
- const wasAvailable = outboxAvailable;
492
- outboxAvailable = health.state === "available";
493
- if (outboxAvailable && !wasAvailable && !sequences.shared())
494
- sequences.reset();
495
- browserStreamId = outboxAvailable && outbox ? await outbox.streamId() : browserStreamId ?? host.randomUUID();
496
- await sequences.refill();
497
- const page = host.page();
498
- const touch = captureAttribution(page.search, page.pathname);
499
- const response = await config.bootstrap({
500
- browserStreamId,
501
- previousVisitId: visitId ?? undefined,
502
- origin: page.origin,
503
- landingPath: page.pathname,
504
- referrer: page.referrer || undefined,
505
- utm: touch?.currentTouch.utm?.source ? touch.currentTouch.utm : undefined,
506
- displayMode: page.displayMode,
507
- screenWidth: page.screenWidth,
508
- screenHeight: page.screenHeight,
509
- buildId: config.buildId,
510
- outboxState: health.state,
511
- outboxQueued: health.queued,
512
- outboxDropped: health.dropped
513
- });
514
- visitId = response.visitId;
515
- config.onVisit?.(visitId);
516
- return visitId;
517
- } catch (error) {
518
- fail("visit bootstrap", error);
519
- return null;
520
- } finally {
521
- bootstrapping = null;
522
- }
523
- })();
524
- bootstrapping = run;
525
- return run;
526
- };
527
- const deliver = async (events) => {
528
- let response = null;
529
- const outcome = await deliverTrackingBatch({
530
- request: async () => {
531
- response = await config.deliver({
532
- buildId: config.buildId,
533
- events,
534
- utm: currentUtm()
535
- });
536
- },
537
- onUnauthorized: config.onUnauthorized,
538
- onFailure: (error) => fail("event delivery", error)
539
- });
540
- return outcome === "delivered" ? response : null;
541
- };
542
- let flushing = null;
543
- let queued = null;
544
- const flushOutbox = () => {
545
- if (!outbox || !outboxAvailable)
546
- return Promise.resolve();
547
- if (flushing) {
548
- queued ??= flushing.then(() => {
549
- queued = null;
550
- return flushOutbox();
551
- });
552
- return queued;
553
- }
554
- flushing = (async () => {
555
- try {
556
- if (!await outbox.acquireLease(flushOwner))
557
- return;
558
- const batch = await outbox.readBatch(batchSize);
559
- if (batch.length === 0)
560
- return;
561
- const response = await deliver(batch);
562
- if (response) {
563
- await outbox.acknowledge(response.dispositions.map((item) => item.eventId));
564
- }
565
- } catch (error) {
566
- fail("outbox flush", error);
567
- } finally {
568
- flushing = null;
569
- }
570
- })();
571
- return flushing;
572
- };
573
- const materialize = (draft2) => {
574
- if (!visitId || !browserStreamId)
575
- return null;
576
- const sequence = sequences.take();
577
- if (sequence === null)
578
- return null;
579
- return decorate({
580
- ...draft2,
581
- eventId: host.randomUUID(),
582
- visitId,
583
- browserStreamId,
584
- browserSequence: sequence
585
- });
586
- };
587
- const persistAndFlush = async (events) => {
588
- if (!outbox || !outboxAvailable) {
589
- for (const batch of chunk(events, batchSize))
590
- await deliver(batch);
591
- return;
592
- }
593
- try {
594
- for (const event of events)
595
- await outbox.enqueue(event);
596
- await flushOutbox();
597
- } catch (error) {
598
- fail("event persistence", error);
599
- }
600
- };
601
- const drainPending = () => {
602
- const drafts = pending.splice(0);
603
- if (drafts.length > 0)
604
- send(drafts);
605
- };
606
- const send = (drafts) => {
607
- if (!visitId || !browserStreamId) {
608
- pending = [...pending, ...drafts].slice(-pendingLimit);
609
- bootstrapVisit().then((issued) => {
610
- if (issued)
611
- drainPending();
612
- });
613
- return;
614
- }
615
- (async () => {
616
- const events = [];
617
- for (const draft2 of drafts) {
618
- let event = materialize(draft2);
619
- if (!event) {
620
- await sequences.refill();
621
- event = materialize(draft2);
622
- }
623
- if (event)
624
- events.push(event);
625
- }
626
- if (events.length > 0)
627
- await persistAndFlush(events);
628
- })();
629
- };
630
- const sendOnUnload = (draft2) => {
631
- const event = materialize(draft2);
632
- if (!event) {
633
- send([draft2]);
634
- return;
635
- }
636
- unload({ buildId: config.buildId, events: [event], utm: currentUtm() });
637
- if (outbox && outboxAvailable) {
638
- outbox.enqueue(event).catch((error) => fail("unload event persistence", error));
639
- }
640
- };
641
- const draft = (type, metadata) => ({
642
- type,
643
- page: currentPage ?? host.page().pathname,
644
- metadata,
645
- clientTimestamp: host.wallClock()
646
- });
647
- const leaveDraft = (page) => ({
648
- type: builtin.pageLeave,
649
- page,
650
- metadata: { ...meter.cut(), scrollDepthPercent: scroll.max() },
651
- clientTimestamp: host.wallClock()
652
- });
653
- function track(type, metadata) {
654
- send([draft(type, metadata === undefined ? undefined : asMetadata(metadata))]);
655
- }
656
- const onNavigate = (pathname, search) => {
657
- captureAttribution(search, pathname);
658
- const previous = currentPage;
659
- if (previous === pathname)
660
- return;
661
- if (previous && host.visible())
662
- send([leaveDraft(previous)]);
663
- currentPage = pathname;
664
- meter.checkpoint();
665
- scroll.reset();
666
- const page = host.page();
667
- send([
668
- {
669
- type: builtin.pageView,
670
- page: pathname,
671
- metadata: {
672
- title: page.title,
673
- screenWidth: page.viewportWidth,
674
- screenHeight: page.viewportHeight,
675
- referrer: previous ? undefined : page.referrer || undefined
676
- },
677
- clientTimestamp: host.wallClock()
678
- }
679
- ]);
680
- };
681
- const start = () => {
682
- const generation = ++running;
683
- const unsubscribe = [];
684
- bootstrapVisit().then((issued) => {
685
- if (!issued || generation !== running)
686
- return;
687
- drainPending();
688
- flushOutbox();
689
- });
690
- const renewThenFlush = () => void bootstrapVisit(true).then(() => flushOutbox());
691
- unsubscribe.push(host.on("online", renewThenFlush));
692
- unsubscribe.push(host.interval(() => void flushOutbox(), heartbeatMs));
693
- let hiddenAt = null;
694
- let lastLeaveAt = Number.NEGATIVE_INFINITY;
695
- const onHide = () => {
696
- const at = host.now();
697
- if (at - lastLeaveAt < 1000)
698
- return;
699
- lastLeaveAt = at;
700
- sendOnUnload(leaveDraft(currentPage ?? host.page().pathname));
701
- if (outbox && outboxAvailable)
702
- outbox.releaseLease(flushOwner).catch(() => {
703
- return;
704
- });
705
- };
706
- unsubscribe.push(host.on("pagehide", onHide));
707
- unsubscribe.push(host.on("visibilitychange", () => {
708
- if (!host.visible()) {
709
- hiddenAt = host.wallClock();
710
- onHide();
711
- return;
712
- }
713
- meter.checkpoint();
714
- if (hiddenAt !== null && host.wallClock() - hiddenAt >= renewAfterHiddenMs) {
715
- renewThenFlush();
716
- }
717
- hiddenAt = null;
718
- }));
719
- unsubscribe.push(host.interval(() => {
720
- send([draft(builtin.heartbeat, { ...meter.heartbeat(host.visible()) })]);
721
- }, heartbeatMs));
722
- unsubscribe.push(host.on("scroll", () => scroll.record(host.scrollDepth())));
723
- unsubscribe.push(host.interval(() => {
724
- for (const milestone of scroll.observe(host.scrollDepth())) {
725
- send([draft(builtin.scrollDepth, { maxPercent: milestone })]);
726
- }
727
- }, 2000));
728
- unsubscribe.push(host.onClick((target) => {
729
- const click = resolveTrackedClick(target, {
730
- origin: host.page().origin,
731
- attributes: config.clickAttributes,
732
- isAction: config.isAction
733
- });
734
- if (!click)
735
- return;
736
- const drafts = [];
737
- if (click.interaction)
738
- drafts.push(draft(builtin.interaction, { ...click.interaction }));
739
- if (click.click)
740
- drafts.push(draft(builtin.click, { ...click.click }));
741
- if (click.outbound)
742
- drafts.push(draft(builtin.outboundClick, { ...click.outbound }));
743
- if (click.leavesPage)
744
- for (const item of drafts)
745
- sendOnUnload(item);
746
- else
747
- send(drafts);
748
- }));
749
- return () => {
750
- running += 1;
751
- for (const off of unsubscribe.splice(0))
752
- off();
753
- };
754
- };
755
- return {
756
- track,
757
- onNavigate,
758
- start,
759
- visitId: () => visitId,
760
- browserStreamId: () => browserStreamId,
761
- attribution: () => attribution
762
- };
763
- }
764
- function asMetadata(value) {
765
- return typeof value === "object" && value !== null ? { ...value } : undefined;
766
- }
767
- // src/tracking/contract.ts
768
- function createTrackingContract(config) {
769
- const schemas = createTrackingSchemas(config);
770
- return defineContract({ prefix: config.prefix ?? "tracking", scope: config.scope }, {
771
- bootstrap: {
772
- method: "POST",
773
- path: "/visit",
774
- expose: ["HTTP"],
775
- desc: "Issue or renew a browser visit lease",
776
- input: schemas.entry,
777
- output: schemas.bootstrap
778
- },
779
- track: {
780
- method: "POST",
781
- path: "/events",
782
- expose: ["HTTP"],
783
- desc: "Batch track browser events",
784
- input: schemas.request,
785
- output: schemas.response,
786
- safelistedBody: true,
787
- maxJsonBodyBytes: config.maxJsonBodyBytes ?? 256 * 1024
788
- }
789
- });
790
- }
791
- // src/tracking/host.ts
792
- function browserTrackingHost() {
793
- return {
794
- page: () => ({
795
- pathname: window.location.pathname,
796
- search: window.location.search,
797
- origin: window.location.origin,
798
- hostname: window.location.hostname,
799
- title: document.title,
800
- referrer: document.referrer,
801
- viewportWidth: window.innerWidth,
802
- viewportHeight: window.innerHeight,
803
- screenWidth: window.screen.width,
804
- screenHeight: window.screen.height,
805
- displayMode: window.matchMedia("(display-mode: standalone)").matches ? "standalone" : "browser"
806
- }),
807
- visible: () => document.visibilityState === "visible",
808
- scrollDepth() {
809
- const scrollable = document.documentElement.scrollHeight - window.innerHeight;
810
- if (scrollable <= 0)
811
- return 0;
812
- return Math.max(0, Math.min(100, Math.round(window.scrollY / scrollable * 100)));
813
- },
814
- on(event, handler) {
815
- const target = event === "visibilitychange" ? document : window;
816
- const options = event === "scroll" ? { passive: true } : undefined;
817
- target.addEventListener(event, handler, options);
818
- return () => target.removeEventListener(event, handler);
819
- },
820
- onClick(handler) {
821
- const listener = (event) => {
822
- handler(event.target instanceof Element ? event.target : null);
823
- };
824
- document.addEventListener("click", listener, { capture: true });
825
- return () => document.removeEventListener("click", listener, { capture: true });
826
- },
827
- interval(handler, ms) {
828
- const id = window.setInterval(handler, ms);
829
- return () => window.clearInterval(id);
830
- },
831
- now: () => performance.now(),
832
- wallClock: () => Date.now(),
833
- randomUUID: () => crypto.randomUUID(),
834
- storage: (() => {
835
- try {
836
- return window.localStorage;
837
- } catch {
838
- return null;
839
- }
840
- })()
841
- };
842
- }
843
- // src/tracking/once-per-page.ts
844
- function createOncePerPage(options = {}) {
845
- const windowMs = options.windowMs ?? 15000;
846
- const now = options.now ?? (() => Date.now());
847
- const seen = new Map;
848
- return {
849
- should(key, page) {
850
- const scoped = `${page}|${key}`;
851
- const at = now();
852
- const last = seen.get(scoped);
853
- if (last !== undefined && at - last < windowMs)
854
- return false;
855
- seen.set(scoped, at);
856
- return true;
857
- }
858
- };
859
- }
860
- // src/tracking/outbox.ts
861
- var META_STREAM = "streamId";
862
- var META_SEQUENCE = "sequence";
863
- var META_LEASE = "lease";
864
- var META_DROPPED = "dropped";
865
- function numberOr(value, fallback) {
866
- return typeof value === "number" && Number.isFinite(value) ? value : fallback;
867
- }
868
- function leaseOf(raw) {
869
- if (typeof raw !== "object" || raw === null)
870
- return null;
871
- const owner = Reflect.get(raw, "owner");
872
- const expiresAt = Reflect.get(raw, "expiresAt");
873
- return typeof owner === "string" && typeof expiresAt === "number" ? { owner, expiresAt } : null;
874
- }
875
- function createTrackingOutbox(storage, options = {}) {
876
- const maxEvents = options.maxEvents ?? 1000;
877
- const maxAgeMs = options.maxAgeMs ?? 7 * 24 * 60 * 60 * 1000;
878
- const leaseMs = options.leaseMs ?? 3000;
879
- const now = options.now ?? (() => Date.now());
880
- const randomUUID = options.randomUUID ?? (() => crypto.randomUUID());
881
- const trim = () => storage.transact(async ({ meta, events }) => {
882
- const all = await events.all();
883
- const cutoff = now() - maxAgeMs;
884
- const remove = all.filter((record, index) => record.enqueuedAt < cutoff || index < all.length - maxEvents);
885
- for (const record of remove)
886
- events.delete(record.event.eventId);
887
- if (remove.length > 0) {
888
- meta.put(META_DROPPED, numberOr(await meta.get(META_DROPPED), 0) + remove.length);
889
- }
890
- });
891
- return {
892
- streamId: () => storage.transact(async ({ meta }) => {
893
- const existing = await meta.get(META_STREAM);
894
- if (typeof existing === "string")
895
- return existing;
896
- const created = randomUUID();
897
- meta.put(META_STREAM, created);
898
- return created;
899
- }),
900
- reserveSequences: (count) => storage.transact(async ({ meta }) => {
901
- const start = numberOr(await meta.get(META_SEQUENCE), 0) + 1;
902
- meta.put(META_SEQUENCE, start + count - 1);
903
- return Array.from({ length: count }, (_, index) => start + index);
904
- }),
905
- async enqueue(event) {
906
- await storage.transact(async ({ events }) => {
907
- events.put({ event, enqueuedAt: now() });
908
- });
909
- await trim();
910
- },
911
- acquireLease: (owner) => storage.transact(async ({ meta }) => {
912
- const lease = leaseOf(await meta.get(META_LEASE));
913
- const at = now();
914
- const acquired = lease === null || lease.owner === owner || lease.expiresAt <= at;
915
- if (acquired)
916
- meta.put(META_LEASE, { owner, expiresAt: at + leaseMs });
917
- return acquired;
918
- }),
919
- releaseLease: (owner) => storage.transact(async ({ meta }) => {
920
- const lease = leaseOf(await meta.get(META_LEASE));
921
- if (lease?.owner === owner)
922
- meta.delete(META_LEASE);
923
- }),
924
- readBatch: (limit = 50) => storage.transact(async ({ events }) => (await events.all()).slice(0, limit).map((record) => record.event), "readonly"),
925
- acknowledge: async (eventIds) => {
926
- if (eventIds.length === 0)
927
- return;
928
- await storage.transact(async ({ events }) => {
929
- for (const id of eventIds)
930
- events.delete(id);
931
- });
932
- },
933
- async health() {
934
- try {
935
- return await storage.transact(async ({ meta, events }) => ({
936
- state: "available",
937
- queued: await events.count(),
938
- dropped: numberOr(await meta.get(META_DROPPED), 0)
939
- }), "readonly");
940
- } catch {
941
- return { state: "unavailable", queued: 0, dropped: 0 };
942
- }
943
- }
944
- };
945
- }
946
- // src/tracking/outbox-storage-indexeddb.ts
947
- var VERSION = 1;
948
- var EVENTS = "events";
949
- var META = "meta";
950
- function requestResult(request) {
951
- return new Promise((resolve, reject) => {
952
- request.onsuccess = () => resolve(request.result);
953
- request.onerror = () => reject(request.error);
954
- });
955
- }
956
- function transactionDone(transaction) {
957
- return new Promise((resolve, reject) => {
958
- transaction.oncomplete = () => resolve();
959
- const failure = (event) => {
960
- const target = event.target;
961
- if (typeof target === "object" && target !== null && "error" in target && target.error instanceof Error) {
962
- return target.error;
963
- }
964
- return transaction.error ?? new Error("IndexedDB transaction aborted");
965
- };
966
- transaction.onerror = (event) => reject(failure(event));
967
- transaction.onabort = (event) => reject(failure(event));
968
- });
969
- }
970
- function openDatabase(name, factory) {
971
- return new Promise((resolve, reject) => {
972
- const request = factory.open(name, VERSION);
973
- request.onupgradeneeded = () => {
974
- const database = request.result;
975
- if (!database.objectStoreNames.contains(EVENTS)) {
976
- const events = database.createObjectStore(EVENTS, { keyPath: "event.eventId" });
977
- events.createIndex("sequence", "event.browserSequence", { unique: true });
978
- }
979
- if (!database.objectStoreNames.contains(META))
980
- database.createObjectStore(META);
981
- };
982
- request.onsuccess = () => resolve(request.result);
983
- request.onerror = () => reject(request.error);
984
- });
985
- }
986
- function indexedDbOutboxStorage(name, factory = () => indexedDB) {
987
- return {
988
- async transact(fn, mode = "readwrite") {
989
- const database = await openDatabase(name, factory());
990
- try {
991
- const transaction = database.transaction([META, EVENTS], mode);
992
- const meta = transaction.objectStore(META);
993
- const events = transaction.objectStore(EVENTS);
994
- let result;
995
- try {
996
- result = await fn({
997
- meta: {
998
- get: (key) => requestResult(meta.get(key)),
999
- put: (key, value) => void meta.put(value, key),
1000
- delete: (key) => void meta.delete(key)
1001
- },
1002
- events: {
1003
- put: (record) => void events.put(record),
1004
- delete: (eventId) => void events.delete(eventId),
1005
- all: async () => {
1006
- const raw = await requestResult(events.index("sequence").getAll());
1007
- return raw.flatMap((value) => isRecord(value) ? [value] : []);
1008
- },
1009
- count: () => requestResult(events.count())
1010
- }
1011
- });
1012
- } catch (error) {
1013
- transaction.abort();
1014
- throw error;
1015
- }
1016
- await transactionDone(transaction);
1017
- return result;
1018
- } finally {
1019
- database.close();
1020
- }
1021
- }
1022
- };
1023
- }
1024
- function isRecord(value) {
1025
- if (typeof value !== "object" || value === null)
1026
- return false;
1027
- const event = Reflect.get(value, "event");
1028
- return typeof Reflect.get(value, "enqueuedAt") === "number" && typeof event === "object" && event !== null && typeof Reflect.get(event, "eventId") === "string" && typeof Reflect.get(event, "browserSequence") === "number";
1029
- }
1030
- // src/tracking/outbox-storage-memory.ts
1031
- function memoryOutboxStorage() {
1032
- let meta = new Map;
1033
- let events = new Map;
1034
- let chain = Promise.resolve();
1035
- return {
1036
- transact(fn) {
1037
- const run = chain.then(async () => {
1038
- const nextMeta = new Map(meta);
1039
- const nextEvents = new Map(events);
1040
- const result = await fn({
1041
- meta: {
1042
- get: async (key) => nextMeta.get(key),
1043
- put: (key, value) => void nextMeta.set(key, value),
1044
- delete: (key) => void nextMeta.delete(key)
1045
- },
1046
- events: {
1047
- put: (record) => void nextEvents.set(record.event.eventId, record),
1048
- delete: (eventId) => void nextEvents.delete(eventId),
1049
- all: async () => [...nextEvents.values()].sort((a, b) => a.event.browserSequence - b.event.browserSequence),
1050
- count: async () => nextEvents.size
1051
- }
1052
- });
1053
- meta = nextMeta;
1054
- events = nextEvents;
1055
- return result;
1056
- });
1057
- chain = run.catch(() => {
1058
- return;
1059
- });
1060
- return run;
1061
- }
1062
- };
1063
- }
1064
- export {
1065
- sendUnloadBeacon,
1066
- scrollDepthPercent,
1067
- resolveTrackedClick,
1068
- resolveAttribution,
1069
- parseUtmFromSearch,
1070
- parseReferrer,
1071
- memoryOutboxStorage,
1072
- indexedDbOutboxStorage,
1073
- deliverTrackingBatch,
1074
- createVisibleTimeMeter,
1075
- createTrackingSchemas,
1076
- createTrackingOutbox,
1077
- createTrackingContract,
1078
- createTrackingClient,
1079
- createSequenceReserve,
1080
- createScrollMilestones,
1081
- createOncePerPage,
1082
- browserTrackingHost,
1083
- VisitBootstrapResponseSchema,
1084
- UtmDataSchema,
1085
- TrackingOutboxStateSchema,
1086
- TrackingDispositionStatusSchema,
1087
- TrackingDispositionSchema,
1088
- TrackEventsResponseSchema,
1089
- DEFAULT_BUILD_ID_PATTERN,
1090
- CONVENTIONAL_TRACKING_EVENT_TYPES,
1091
- AttributionDataSchema
1092
- };