stitchkit 0.100.1 → 0.100.3

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 (233) hide show
  1. package/CHANGELOG.md +99 -0
  2. package/README.md +2 -1
  3. package/dist/application/process-lifecycle-transitions.d.ts +13 -2
  4. package/dist/application/process-lifecycle-transitions.d.ts.map +1 -1
  5. package/dist/application/process-lifecycle.d.ts +2 -1
  6. package/dist/application/process-lifecycle.d.ts.map +1 -1
  7. package/dist/entrypoints/agent-runtime/browser.js +119 -119
  8. package/dist/entrypoints/agent-runtime/coding-tools.js +15 -20
  9. package/dist/entrypoints/agent-runtime/harness.js +55 -63
  10. package/dist/entrypoints/agent-runtime/openrouter.js +6 -6
  11. package/dist/entrypoints/agent-runtime/sandbox.js +20 -25
  12. package/dist/entrypoints/agent-runtime/sqlite/bun.js +11 -13
  13. package/dist/entrypoints/agent-runtime/sqlite/node.js +11 -13
  14. package/dist/entrypoints/agent-runtime/testing.js +32 -34
  15. package/dist/entrypoints/agent-runtime.js +395 -402
  16. package/dist/entrypoints/application/diagnostic-journal.js +26 -27
  17. package/dist/entrypoints/application/directory-inbox.js +16 -17
  18. package/dist/entrypoints/application/grammy.js +13 -13
  19. package/dist/entrypoints/application/opentelemetry.js +13 -13
  20. package/dist/entrypoints/application/schemas.js +24 -24
  21. package/dist/entrypoints/application.d.ts +1 -1
  22. package/dist/entrypoints/application.d.ts.map +1 -1
  23. package/dist/entrypoints/application.js +218 -214
  24. package/dist/entrypoints/bin/upgrade-cli.js +2 -2
  25. package/dist/entrypoints/cli.js +81 -84
  26. package/dist/entrypoints/contract.js +54 -57
  27. package/dist/entrypoints/declaration.js +22 -22
  28. package/dist/entrypoints/files.js +18 -21
  29. package/dist/entrypoints/geo.js +7 -8
  30. package/dist/entrypoints/google.js +2 -2
  31. package/dist/entrypoints/index.js +150 -154
  32. package/dist/entrypoints/live.js +45 -47
  33. package/dist/entrypoints/node.js +68 -74
  34. package/dist/entrypoints/oauth.js +6 -6
  35. package/dist/entrypoints/observability.d.ts +1 -0
  36. package/dist/entrypoints/observability.d.ts.map +1 -1
  37. package/dist/entrypoints/observability.js +115 -87
  38. package/dist/entrypoints/primitives.js +35 -35
  39. package/dist/entrypoints/react/keyboard.d.ts +4 -0
  40. package/dist/entrypoints/react/keyboard.d.ts.map +1 -0
  41. package/dist/entrypoints/react/keyboard.js +397 -0
  42. package/dist/entrypoints/react.js +10 -10
  43. package/dist/entrypoints/release.js +7 -7
  44. package/dist/entrypoints/remote.js +15 -17
  45. package/dist/entrypoints/server.js +198 -200
  46. package/dist/entrypoints/telegram/html.d.ts +5 -0
  47. package/dist/entrypoints/telegram/html.d.ts.map +1 -0
  48. package/dist/entrypoints/telegram/html.js +26 -0
  49. package/dist/entrypoints/telegram/screens.d.ts +14 -0
  50. package/dist/entrypoints/telegram/screens.d.ts.map +1 -0
  51. package/dist/entrypoints/telegram/screens.js +2028 -0
  52. package/dist/entrypoints/telegram.d.ts +5 -1
  53. package/dist/entrypoints/telegram.d.ts.map +1 -1
  54. package/dist/entrypoints/telegram.js +548 -156
  55. package/dist/entrypoints/testing.js +75 -79
  56. package/dist/entrypoints/tools/connections.js +30 -32
  57. package/dist/entrypoints/tools/contract.js +18 -20
  58. package/dist/entrypoints/tools/invoker.js +12 -17
  59. package/dist/entrypoints/tools.js +223 -229
  60. package/dist/entrypoints/tracking/server.js +6 -6
  61. package/dist/entrypoints/tracking.js +40 -42
  62. package/dist/entrypoints/voice.js +3 -3
  63. package/dist/{index-eaysmdtq.js → index-0ndk4555.js} +56 -56
  64. package/dist/{index-2bxbyab0.js → index-1bx1xv1k.js} +1 -1
  65. package/dist/{index-p5r7qpdd.js → index-1eeqpadm.js} +4 -4
  66. package/dist/{index-hadmp193.js → index-3ct7hhq6.js} +210 -210
  67. package/dist/{index-e01r054k.js → index-45tdvqa3.js} +26 -26
  68. package/dist/{index-dce5wxcq.js → index-4s0fep5q.js} +8 -8
  69. package/dist/index-50ejfz75.js +9 -0
  70. package/dist/{index-m9zn6cpq.js → index-5107q189.js} +12 -12
  71. package/dist/{index-sbdmyz75.js → index-5cc6r990.js} +3 -3
  72. package/dist/index-6k1svmjh.js +141 -0
  73. package/dist/{index-c6bxbsnc.js → index-7kxw1awn.js} +2 -2
  74. package/dist/{index-0r0fbk7z.js → index-7z9ym7t8.js} +28 -28
  75. package/dist/{index-p7hgdyhb.js → index-814xpr6d.js} +2 -2
  76. package/dist/{index-gtj3zc53.js → index-8kzct1d6.js} +99 -99
  77. package/dist/{index-1zbbzgfh.js → index-9pw0a51a.js} +4 -4
  78. package/dist/{index-79z7m7dt.js → index-a9pd417t.js} +35 -35
  79. package/dist/{index-ham5sz8m.js → index-aaj97r4y.js} +45 -45
  80. package/dist/{index-s812ycat.js → index-aan6hqb9.js} +3 -3
  81. package/dist/{index-10x2hbx0.js → index-adhgd4pe.js} +44 -44
  82. package/dist/{index-2gxzjvyr.js → index-afjvjyck.js} +23 -23
  83. package/dist/{index-qmy6zq75.js → index-ahvsksw5.js} +16 -16
  84. package/dist/{index-hr4tzbwq.js → index-ap3gqe56.js} +3 -3
  85. package/dist/{index-znfs20ss.js → index-b2bz0kdm.js} +16 -16
  86. package/dist/{index-r066jx76.js → index-c6aagrbd.js} +148 -120
  87. package/dist/{index-k30h66yd.js → index-ck71tbcf.js} +9 -9
  88. package/dist/{index-eqqvgdb3.js → index-ct75c3at.js} +2 -2
  89. package/dist/{index-gw8bmyaj.js → index-djjhhgjk.js} +41 -41
  90. package/dist/{index-8qt2m66q.js → index-dvwj1f43.js} +43 -43
  91. package/dist/{index-fhwqwxe0.js → index-ej331hah.js} +1 -1
  92. package/dist/{index-9t3dffv2.js → index-ewbaywk5.js} +5 -5
  93. package/dist/{index-7p1f0vp2.js → index-fyphpknh.js} +25 -25
  94. package/dist/{index-83bdg97s.js → index-g149e9pk.js} +1 -1
  95. package/dist/{index-ngfhvfpd.js → index-g6a3na27.js} +4 -4
  96. package/dist/{index-qwhynv6x.js → index-h124epcf.js} +20 -20
  97. package/dist/{index-h6eeys1v.js → index-h97tqqp1.js} +9 -9
  98. package/dist/{index-zcgf3gqf.js → index-hby4qhax.js} +10 -10
  99. package/dist/{index-5jrd0yng.js → index-j8aw2c0e.js} +4 -4
  100. package/dist/{index-d8m8zpd8.js → index-jzczzcsb.js} +14 -14
  101. package/dist/index-kqnd6a85.js +26 -0
  102. package/dist/{index-35mh5bhj.js → index-kw1ws0cs.js} +12 -12
  103. package/dist/{index-yw4fzmdz.js → index-kzz6rq0w.js} +28 -17
  104. package/dist/{index-4gcnakhx.js → index-m38ej7e5.js} +2 -2
  105. package/dist/{index-ndddxtyx.js → index-m79yr938.js} +19 -19
  106. package/dist/{index-5p2m7we1.js → index-m9fndta6.js} +11 -11
  107. package/dist/index-mnkk1ffz.js +150 -0
  108. package/dist/index-n15jny5b.js +4 -0
  109. package/dist/{index-2vtcmrj9.js → index-n53mswt3.js} +20 -20
  110. package/dist/{index-bt14acb5.js → index-n5yqxd3d.js} +21 -21
  111. package/dist/{index-bm5rx7n6.js → index-n9tyz8z3.js} +12 -12
  112. package/dist/index-nmaqxdx7.js +463 -0
  113. package/dist/{index-mqv3b5rh.js → index-nx6eazt0.js} +30 -30
  114. package/dist/{index-3z73fh2c.js → index-q0th8q0z.js} +9 -9
  115. package/dist/{index-v260df89.js → index-qjeggp8w.js} +20 -20
  116. package/dist/{index-zfrhfn82.js → index-r1z0rd9c.js} +20 -20
  117. package/dist/{index-wqgjfstn.js → index-r5c4fedv.js} +3 -3
  118. package/dist/{index-cyktc4bp.js → index-r5hsgkz5.js} +118 -118
  119. package/dist/{index-0b1ess5e.js → index-r7a7r7ha.js} +1 -1
  120. package/dist/{index-1j8pm5t0.js → index-rfkh44ss.js} +15 -15
  121. package/dist/index-rz3z13e9.js +47 -0
  122. package/dist/{index-k6gpggb9.js → index-s80awwsw.js} +35 -35
  123. package/dist/{index-vqr7f7v8.js → index-ssmd41kh.js} +124 -124
  124. package/dist/{index-ensd0r74.js → index-v14qqmys.js} +41 -41
  125. package/dist/{index-paz6sgdp.js → index-v4a2fjtk.js} +36 -36
  126. package/dist/{index-d9pk3td4.js → index-w0eqdhyd.js} +14 -14
  127. package/dist/{index-5qn1kx34.js → index-w575evhq.js} +29 -29
  128. package/dist/{index-3gye9wzb.js → index-w5s3xftz.js} +26 -26
  129. package/dist/{index-tm88avnj.js → index-wykebpn9.js} +3 -3
  130. package/dist/{index-sh3s86na.js → index-xkhk5d6g.js} +17 -17
  131. package/dist/{index-6k1937bx.js → index-xqhede6x.js} +4 -4
  132. package/dist/{index-f4fx2tza.js → index-zs4ms3th.js} +181 -181
  133. package/dist/{index-k5hsfc3j.js → index-zsvzhjtk.js} +1 -1
  134. package/dist/observability/bounded-logger.d.ts +2 -0
  135. package/dist/observability/bounded-logger.d.ts.map +1 -1
  136. package/dist/observability/sanitize.d.ts +6 -0
  137. package/dist/observability/sanitize.d.ts.map +1 -1
  138. package/dist/observability/secret-values.d.ts +25 -0
  139. package/dist/observability/secret-values.d.ts.map +1 -0
  140. package/dist/react/keyboard/hooks.d.ts +71 -0
  141. package/dist/react/keyboard/hooks.d.ts.map +1 -0
  142. package/dist/react/keyboard/layers.d.ts +98 -0
  143. package/dist/react/keyboard/layers.d.ts.map +1 -0
  144. package/dist/react/keyboard/zone.d.ts +139 -0
  145. package/dist/react/keyboard/zone.d.ts.map +1 -0
  146. package/dist/telegram/crypto.d.ts +16 -0
  147. package/dist/telegram/crypto.d.ts.map +1 -0
  148. package/dist/telegram/html/check.d.ts +26 -0
  149. package/dist/telegram/html/check.d.ts.map +1 -0
  150. package/dist/telegram/html/nodes.d.ts +70 -0
  151. package/dist/telegram/html/nodes.d.ts.map +1 -0
  152. package/dist/telegram/html/parse.d.ts +35 -0
  153. package/dist/telegram/html/parse.d.ts.map +1 -0
  154. package/dist/telegram/html/render.d.ts +39 -0
  155. package/dist/telegram/html/render.d.ts.map +1 -0
  156. package/dist/telegram/init-data.d.ts.map +1 -1
  157. package/dist/telegram/operator-channel.d.ts +36 -3
  158. package/dist/telegram/operator-channel.d.ts.map +1 -1
  159. package/dist/telegram/screens/callback-codec.d.ts +34 -0
  160. package/dist/telegram/screens/callback-codec.d.ts.map +1 -0
  161. package/dist/telegram/screens/dispatch.d.ts +22 -0
  162. package/dist/telegram/screens/dispatch.d.ts.map +1 -0
  163. package/dist/telegram/screens/display.d.ts +70 -0
  164. package/dist/telegram/screens/display.d.ts.map +1 -0
  165. package/dist/telegram/screens/execute.d.ts +57 -0
  166. package/dist/telegram/screens/execute.d.ts.map +1 -0
  167. package/dist/telegram/screens/html.d.ts +36 -0
  168. package/dist/telegram/screens/html.d.ts.map +1 -0
  169. package/dist/telegram/screens/outcome.d.ts +74 -0
  170. package/dist/telegram/screens/outcome.d.ts.map +1 -0
  171. package/dist/telegram/screens/path.d.ts +29 -0
  172. package/dist/telegram/screens/path.d.ts.map +1 -0
  173. package/dist/telegram/screens/reconcile.d.ts +67 -0
  174. package/dist/telegram/screens/reconcile.d.ts.map +1 -0
  175. package/dist/telegram/screens/registry.d.ts +23 -0
  176. package/dist/telegram/screens/registry.d.ts.map +1 -0
  177. package/dist/telegram/screens/render.d.ts +70 -0
  178. package/dist/telegram/screens/render.d.ts.map +1 -0
  179. package/dist/telegram/screens/runtime.d.ts +133 -0
  180. package/dist/telegram/screens/runtime.d.ts.map +1 -0
  181. package/dist/telegram/screens/screen-types.d.ts +130 -0
  182. package/dist/telegram/screens/screen-types.d.ts.map +1 -0
  183. package/dist/telegram/screens/screen.d.ts +138 -0
  184. package/dist/telegram/screens/screen.d.ts.map +1 -0
  185. package/dist/telegram/screens/state.d.ts +115 -0
  186. package/dist/telegram/screens/state.d.ts.map +1 -0
  187. package/dist/telegram/screens/telegram-screens.d.ts +18 -0
  188. package/dist/telegram/screens/telegram-screens.d.ts.map +1 -0
  189. package/dist/telegram/screens/test-chat-telegram.d.ts +47 -0
  190. package/dist/telegram/screens/test-chat-telegram.d.ts.map +1 -0
  191. package/dist/telegram/screens/test-chat.d.ts +66 -0
  192. package/dist/telegram/screens/test-chat.d.ts.map +1 -0
  193. package/dist/telegram/screens/view.d.ts +89 -0
  194. package/dist/telegram/screens/view.d.ts.map +1 -0
  195. package/dist/telegram/send-failure.d.ts +19 -0
  196. package/dist/telegram/send-failure.d.ts.map +1 -1
  197. package/dist/telegram/update-intake.d.ts +78 -0
  198. package/dist/telegram/update-intake.d.ts.map +1 -0
  199. package/dist/telegram/update-store-sqlite.d.ts +26 -0
  200. package/dist/telegram/update-store-sqlite.d.ts.map +1 -0
  201. package/dist/telegram/update-store.d.ts +67 -0
  202. package/dist/telegram/update-store.d.ts.map +1 -0
  203. package/dist/telegram/webhook.d.ts +105 -0
  204. package/dist/telegram/webhook.d.ts.map +1 -0
  205. package/dist/tools/cli/args-fields.d.ts +8 -0
  206. package/dist/tools/cli/args-fields.d.ts.map +1 -1
  207. package/dist/tools/cli/args-route.d.ts.map +1 -1
  208. package/dist/tools/cli/args.d.ts.map +1 -1
  209. package/dist/tools/cli/help.d.ts.map +1 -1
  210. package/llms/application.2.txt +26 -1
  211. package/llms/application.txt +18 -27
  212. package/llms/cli.txt +8 -2
  213. package/llms/observability.txt +2 -1
  214. package/llms/react-keyboard.txt +193 -0
  215. package/llms/stitchkit.txt +7 -1
  216. package/llms/telegram-html.txt +35 -0
  217. package/llms/telegram-screens.txt +365 -0
  218. package/llms/telegram.txt +160 -4
  219. package/llms-full.txt +755 -11
  220. package/llms.txt +11 -6
  221. package/package.json +17 -2
  222. package/dist/index-2k4yrqkc.js +0 -9
  223. package/dist/index-crykmqkr.js +0 -26
  224. package/dist/index-y64k3s0h.js +0 -150
  225. package/dist/index-y91ry9h2.js +0 -4
  226. /package/dist/{index-hffjpmq9.js → index-9jfdm5tg.js} +0 -0
  227. /package/dist/{index-zjjyynm3.js → index-d4pa2bgs.js} +0 -0
  228. /package/dist/{index-rxfy4cq7.js → index-dwfv9a85.js} +0 -0
  229. /package/dist/{index-5jm36zv1.js → index-gfk7nrht.js} +0 -0
  230. /package/dist/{index-b9aefrqd.js → index-n1dqr7gf.js} +0 -0
  231. /package/dist/{index-q3pyb9n0.js → index-sykb5ag7.js} +0 -0
  232. /package/dist/{index-48ffdxgk.js → index-xhzq2qvj.js} +0 -0
  233. /package/dist/{index-kzfs85xp.js → index-zsarb5xp.js} +0 -0
@@ -0,0 +1,150 @@
1
+ import {
2
+ AgentRecordIdSchema2,
3
+ AgentRecordVersionSchema2,
4
+ AgentTimestampSchema2,
5
+ AgentProviderEnvelopeSchema2,
6
+ AgentMessageSchema2,
7
+ AgentAssistantPlaceholderSchema2,
8
+ AgentRunStateSchema2,
9
+ AgentRunOperationSchema2,
10
+ AgentTerminalReasonSchema2,
11
+ AgentRunSchema2,
12
+ AgentRunMetricsSchema2
13
+ } from "./index-8kzct1d6.js";
14
+
15
+ // src/agent-runtime/event-schema.ts
16
+ import { z } from "zod";
17
+ var AgentAdmissionEventSchema2 = z.object({
18
+ type: z.literal("admission"),
19
+ eventId: AgentRecordIdSchema2,
20
+ conversationId: AgentRecordIdSchema2,
21
+ runId: AgentRecordIdSchema2,
22
+ snapshotVersion: AgentRecordVersionSchema2,
23
+ input: AgentMessageSchema2,
24
+ run: AgentRunSchema2,
25
+ assistant: z.union([AgentAssistantPlaceholderSchema2, AgentMessageSchema2]),
26
+ emittedAt: AgentTimestampSchema2
27
+ });
28
+ var EventIdentitySchema = z.object({
29
+ conversationId: AgentRecordIdSchema2,
30
+ runId: AgentRecordIdSchema2,
31
+ emittedAt: AgentTimestampSchema2
32
+ });
33
+ var AgentTransientDeltaEventSchema2 = EventIdentitySchema.extend({
34
+ type: z.literal("assistant-delta"),
35
+ runtimeEpoch: z.string().min(1),
36
+ sequence: z.int().nonnegative(),
37
+ textDelta: z.string()
38
+ });
39
+ var AgentTransientReasoningIdentitySchema = EventIdentitySchema.extend({
40
+ runtimeEpoch: z.string().min(1),
41
+ sequence: z.int().nonnegative(),
42
+ provider: AgentProviderEnvelopeSchema2.optional()
43
+ });
44
+ var AgentReasoningStartEventSchema2 = AgentTransientReasoningIdentitySchema.extend({
45
+ type: z.literal("reasoning-start")
46
+ });
47
+ var AgentReasoningDeltaEventSchema2 = AgentTransientReasoningIdentitySchema.extend({
48
+ type: z.literal("reasoning-delta"),
49
+ textDelta: z.string()
50
+ });
51
+ var AgentReasoningEndEventSchema2 = AgentTransientReasoningIdentitySchema.extend({
52
+ type: z.literal("reasoning-end")
53
+ });
54
+ var AgentAttemptResetEventSchema2 = EventIdentitySchema.extend({
55
+ type: z.literal("attempt-reset"),
56
+ runtimeEpoch: z.string().min(1),
57
+ sequence: z.int().nonnegative(),
58
+ attempt: z.int().positive()
59
+ });
60
+ var AgentCheckpointEventSchema2 = EventIdentitySchema.extend({
61
+ type: z.literal("assistant-checkpoint"),
62
+ eventId: AgentRecordIdSchema2,
63
+ snapshotVersion: AgentRecordVersionSchema2,
64
+ message: AgentMessageSchema2,
65
+ metrics: AgentRunMetricsSchema2.optional()
66
+ });
67
+ var AgentRunStateEventSchema2 = EventIdentitySchema.extend({
68
+ type: z.literal("run-state"),
69
+ eventId: AgentRecordIdSchema2,
70
+ snapshotVersion: AgentRecordVersionSchema2,
71
+ state: AgentRunStateSchema2
72
+ });
73
+ var AgentRunOperationEventSchema2 = EventIdentitySchema.extend({
74
+ type: z.literal("run-operation"),
75
+ eventId: AgentRecordIdSchema2,
76
+ snapshotVersion: AgentRecordVersionSchema2,
77
+ operation: AgentRunOperationSchema2
78
+ });
79
+ var AgentToolStatusEventSchema2 = EventIdentitySchema.extend({
80
+ type: z.literal("tool-status"),
81
+ runtimeEpoch: z.string().min(1),
82
+ sequence: z.int().nonnegative(),
83
+ callId: AgentRecordIdSchema2,
84
+ toolName: z.string().min(1),
85
+ status: z.enum(["started", "completed", "failed", "interrupted"]),
86
+ input: z.json().optional(),
87
+ output: z.json().optional()
88
+ });
89
+ var AgentTerminalEventSchema2 = EventIdentitySchema.extend({
90
+ type: z.literal("terminal"),
91
+ eventId: AgentRecordIdSchema2,
92
+ snapshotVersion: AgentRecordVersionSchema2,
93
+ reason: AgentTerminalReasonSchema2,
94
+ policyName: z.string().min(1).optional(),
95
+ message: AgentMessageSchema2,
96
+ metrics: AgentRunMetricsSchema2.optional()
97
+ });
98
+ var AgentRuntimeEventSchema2 = z.discriminatedUnion("type", [
99
+ AgentAdmissionEventSchema2,
100
+ AgentTransientDeltaEventSchema2,
101
+ AgentReasoningStartEventSchema2,
102
+ AgentReasoningDeltaEventSchema2,
103
+ AgentReasoningEndEventSchema2,
104
+ AgentAttemptResetEventSchema2,
105
+ AgentCheckpointEventSchema2,
106
+ AgentRunStateEventSchema2,
107
+ AgentRunOperationEventSchema2,
108
+ AgentToolStatusEventSchema2,
109
+ AgentTerminalEventSchema2
110
+ ]);
111
+ var AgentRuntimeEventCursorSchema2 = z.object({
112
+ snapshotVersion: AgentRecordVersionSchema2.optional(),
113
+ durableEventIds: z.array(AgentRecordIdSchema2).optional(),
114
+ runtimeEpoch: z.string().min(1).optional(),
115
+ sequence: z.int().nonnegative().optional()
116
+ });
117
+ function isDurableEvent(event) {
118
+ return event.type === "admission" || event.type === "assistant-checkpoint" || event.type === "run-state" || event.type === "run-operation" || event.type === "terminal";
119
+ }
120
+ function advanceAgentRuntimeEventCursor2(rawCursor, event) {
121
+ const cursor = AgentRuntimeEventCursorSchema2.parse(rawCursor);
122
+ if (isDurableEvent(event)) {
123
+ const previous = cursor.snapshotVersion;
124
+ const durableEventIds = previous === event.snapshotVersion ? cursor.durableEventIds ?? [] : [];
125
+ if (previous !== undefined && event.snapshotVersion < previous || durableEventIds.includes(event.eventId)) {
126
+ return { status: "duplicate", cursor };
127
+ }
128
+ return {
129
+ status: "accepted",
130
+ cursor: {
131
+ ...cursor,
132
+ snapshotVersion: event.snapshotVersion,
133
+ durableEventIds: [...durableEventIds, event.eventId]
134
+ }
135
+ };
136
+ }
137
+ const previousSequence = cursor.runtimeEpoch === event.runtimeEpoch ? cursor.sequence : undefined;
138
+ if (previousSequence !== undefined && event.sequence <= previousSequence) {
139
+ return { status: "duplicate", cursor };
140
+ }
141
+ return {
142
+ status: previousSequence !== undefined && event.sequence > previousSequence + 1 ? "gap" : "accepted",
143
+ cursor: { ...cursor, runtimeEpoch: event.runtimeEpoch, sequence: event.sequence }
144
+ };
145
+ }
146
+ function agentDurableEventId2(type, runId, snapshotVersion) {
147
+ return `${runId}:${type}:${snapshotVersion}`;
148
+ }
149
+
150
+ export { AgentAdmissionEventSchema2, AgentTransientDeltaEventSchema2, AgentReasoningStartEventSchema2, AgentReasoningDeltaEventSchema2, AgentReasoningEndEventSchema2, AgentAttemptResetEventSchema2, AgentCheckpointEventSchema2, AgentRunStateEventSchema2, AgentRunOperationEventSchema2, AgentToolStatusEventSchema2, AgentTerminalEventSchema2, AgentRuntimeEventSchema2, AgentRuntimeEventCursorSchema2, advanceAgentRuntimeEventCursor2, agentDurableEventId2 };
@@ -0,0 +1,4 @@
1
+ // src/release/header.ts
2
+ var RELEASE_HEADER2 = "X-Build-Id";
3
+
4
+ export { RELEASE_HEADER2 };
@@ -1,7 +1,7 @@
1
1
  // src/contract/errors.ts
2
2
  var APP_ERROR_BRAND = Symbol.for("stitchkit.AppError");
3
3
 
4
- class AppError extends Error {
4
+ class AppError2 extends Error {
5
5
  code;
6
6
  status;
7
7
  details;
@@ -33,25 +33,25 @@ class AppError extends Error {
33
33
  };
34
34
  }
35
35
  }
36
- function notFound(message = "Not found") {
37
- throw new AppError("NOT_FOUND", message, 404);
36
+ function notFound2(message = "Not found") {
37
+ throw new AppError2("NOT_FOUND", message, 404);
38
38
  }
39
- function badRequest(message, details) {
40
- throw new AppError("BAD_REQUEST", message, 400, details);
39
+ function badRequest2(message, details) {
40
+ throw new AppError2("BAD_REQUEST", message, 400, details);
41
41
  }
42
- function unauthorized(message = "Unauthorized") {
43
- throw new AppError("UNAUTHORIZED", message, 401);
42
+ function unauthorized2(message = "Unauthorized") {
43
+ throw new AppError2("UNAUTHORIZED", message, 401);
44
44
  }
45
- function forbidden(message = "Forbidden") {
46
- throw new AppError("FORBIDDEN", message, 403);
45
+ function forbidden2(message = "Forbidden") {
46
+ throw new AppError2("FORBIDDEN", message, 403);
47
47
  }
48
- function conflict(message = "Conflict", details) {
49
- throw new AppError("CONFLICT", message, 409, details);
48
+ function conflict2(message = "Conflict", details) {
49
+ throw new AppError2("CONFLICT", message, 409, details);
50
50
  }
51
- function rateLimited(message = "Too many requests") {
52
- throw new AppError("RATE_LIMITED", message, 429);
51
+ function rateLimited2(message = "Too many requests") {
52
+ throw new AppError2("RATE_LIMITED", message, 429);
53
53
  }
54
- var STITCH_ERROR_STATUS = {
54
+ var STITCH_ERROR_STATUS2 = {
55
55
  BAD_REQUEST: 400,
56
56
  UNAUTHORIZED: 401,
57
57
  FORBIDDEN: 403,
@@ -85,14 +85,14 @@ var STITCH_ERROR_STATUS = {
85
85
  SPILL_REFERENCE_UNKNOWN: 404,
86
86
  INTERNAL_SERVER_ERROR: 500
87
87
  };
88
- function isRetryableStatus(status) {
88
+ function isRetryableStatus2(status) {
89
89
  return status === 408 || status === 429 || status === 502 || status === 503 || status === 504;
90
90
  }
91
- function isStitchErrorCode(code) {
92
- return Object.hasOwn(STITCH_ERROR_STATUS, code);
91
+ function isStitchErrorCode2(code) {
92
+ return Object.hasOwn(STITCH_ERROR_STATUS2, code);
93
93
  }
94
- function appError(code, message, details) {
95
- throw new AppError(code, message, isStitchErrorCode(code) ? STITCH_ERROR_STATUS[code] : 500, details);
94
+ function appError2(code, message, details) {
95
+ throw new AppError2(code, message, isStitchErrorCode2(code) ? STITCH_ERROR_STATUS2[code] : 500, details);
96
96
  }
97
97
 
98
- export { AppError, notFound, badRequest, unauthorized, forbidden, conflict, rateLimited, STITCH_ERROR_STATUS, isRetryableStatus, isStitchErrorCode, appError };
98
+ export { AppError2, notFound2, badRequest2, unauthorized2, forbidden2, conflict2, rateLimited2, STITCH_ERROR_STATUS2, isRetryableStatus2, isStitchErrorCode2, appError2 };
@@ -1,15 +1,15 @@
1
1
  import {
2
- AgentRuntimeEventSchema
3
- } from "./index-y64k3s0h.js";
2
+ AgentMessagePartSchema2,
3
+ AgentSnapshotSchema2
4
+ } from "./index-8kzct1d6.js";
4
5
  import {
5
- AgentMessagePartSchema,
6
- AgentSnapshotSchema
7
- } from "./index-gtj3zc53.js";
6
+ AgentRuntimeEventSchema2
7
+ } from "./index-mnkk1ffz.js";
8
8
 
9
9
  // src/agent-runtime/control-schema.ts
10
10
  import { z } from "zod";
11
11
  var AgentControlIdentitySchema = z.object({ schemaVersion: z.literal(1), requestId: z.string().min(1) }).strict();
12
- var AgentControlRequestSchema = z.discriminatedUnion("operation", [
12
+ var AgentControlRequestSchema2 = z.discriminatedUnion("operation", [
13
13
  AgentControlIdentitySchema.extend({
14
14
  operation: z.literal("attach"),
15
15
  conversationId: z.string().min(1),
@@ -28,7 +28,7 @@ var AgentControlRequestSchema = z.discriminatedUnion("operation", [
28
28
  conversationId: z.string().min(1),
29
29
  idempotencyKey: z.string().min(1),
30
30
  context: z.unknown(),
31
- parts: z.array(AgentMessagePartSchema).min(1),
31
+ parts: z.array(AgentMessagePartSchema2).min(1),
32
32
  metadata: z.unknown().optional()
33
33
  }),
34
34
  AgentControlIdentitySchema.extend({
@@ -50,10 +50,10 @@ var AgentControlResponseIdentitySchema = z.object({
50
50
  schemaVersion: z.literal(1),
51
51
  requestId: z.string().min(1)
52
52
  });
53
- var AgentControlResponseSchema = z.discriminatedUnion("outcome", [
53
+ var AgentControlResponseSchema2 = z.discriminatedUnion("outcome", [
54
54
  AgentControlResponseIdentitySchema.extend({
55
55
  outcome: z.literal("ok"),
56
- snapshot: AgentSnapshotSchema.optional(),
56
+ snapshot: AgentSnapshotSchema2.optional(),
57
57
  runId: z.string().min(1).optional()
58
58
  }).strict(),
59
59
  AgentControlResponseIdentitySchema.extend({
@@ -61,11 +61,11 @@ var AgentControlResponseSchema = z.discriminatedUnion("outcome", [
61
61
  error: z.object({ code: z.string().min(1), message: z.string().min(1) }).strict()
62
62
  }).strict()
63
63
  ]);
64
- var AgentControlDeliverySchema = z.discriminatedUnion("type", [
64
+ var AgentControlDeliverySchema2 = z.discriminatedUnion("type", [
65
65
  z.object({
66
66
  schemaVersion: z.literal(1),
67
67
  type: z.literal("event"),
68
- event: AgentRuntimeEventSchema
68
+ event: AgentRuntimeEventSchema2
69
69
  }).strict(),
70
70
  z.object({
71
71
  schemaVersion: z.literal(1),
@@ -74,7 +74,7 @@ var AgentControlDeliverySchema = z.discriminatedUnion("type", [
74
74
  reason: z.literal("overflow")
75
75
  }).strict()
76
76
  ]);
77
- var AgentMultiSessionCursorSchema = z.object({
77
+ var AgentMultiSessionCursorSchema2 = z.object({
78
78
  conversations: z.record(z.string(), z.object({
79
79
  snapshotVersion: z.int().nonnegative().optional(),
80
80
  durableEventIds: z.array(z.string().min(1)).optional(),
@@ -90,8 +90,8 @@ function durable(event) {
90
90
  "terminal"
91
91
  ].includes(event.type);
92
92
  }
93
- function advanceAgentMultiSessionCursor(raw, event) {
94
- const cursor = AgentMultiSessionCursorSchema.parse(raw);
93
+ function advanceAgentMultiSessionCursor2(raw, event) {
94
+ const cursor = AgentMultiSessionCursorSchema2.parse(raw);
95
95
  const previous = cursor.conversations[event.conversationId] ?? { runs: {} };
96
96
  if (durable(event)) {
97
97
  const ids = previous.snapshotVersion === event.snapshotVersion ? previous.durableEventIds ?? [] : [];
@@ -133,11 +133,11 @@ function advanceAgentMultiSessionCursor(raw, event) {
133
133
  }
134
134
  };
135
135
  }
136
- function createAgentControlView() {
136
+ function createAgentControlView2() {
137
137
  return { cursor: { conversations: {} }, conversations: {} };
138
138
  }
139
- function reduceAgentControlSnapshot(view, rawSnapshot) {
140
- const snapshot = AgentSnapshotSchema.parse(rawSnapshot);
139
+ function reduceAgentControlSnapshot2(view, rawSnapshot) {
140
+ const snapshot = AgentSnapshotSchema2.parse(rawSnapshot);
141
141
  const previous = view.cursor.conversations[snapshot.conversationId] ?? { runs: {} };
142
142
  return {
143
143
  cursor: {
@@ -160,9 +160,9 @@ function reduceAgentControlSnapshot(view, rawSnapshot) {
160
160
  }
161
161
  };
162
162
  }
163
- function reduceAgentControlEvent(view, rawEvent) {
164
- const event = AgentRuntimeEventSchema.parse(rawEvent);
165
- const advanced = advanceAgentMultiSessionCursor(view.cursor, event);
163
+ function reduceAgentControlEvent2(view, rawEvent) {
164
+ const event = AgentRuntimeEventSchema2.parse(rawEvent);
165
+ const advanced = advanceAgentMultiSessionCursor2(view.cursor, event);
166
166
  if (advanced.status === "duplicate")
167
167
  return view;
168
168
  const current = view.conversations[event.conversationId] ?? {
@@ -195,4 +195,4 @@ function reduceAgentControlEvent(view, rawEvent) {
195
195
  };
196
196
  }
197
197
 
198
- export { AgentControlRequestSchema, AgentControlResponseSchema, AgentControlDeliverySchema, AgentMultiSessionCursorSchema, advanceAgentMultiSessionCursor, createAgentControlView, reduceAgentControlSnapshot, reduceAgentControlEvent };
198
+ export { AgentControlRequestSchema2, AgentControlResponseSchema2, AgentControlDeliverySchema2, AgentMultiSessionCursorSchema2, advanceAgentMultiSessionCursor2, createAgentControlView2, reduceAgentControlSnapshot2, reduceAgentControlEvent2 };
@@ -1,16 +1,16 @@
1
1
  import {
2
- executeToolMethod,
3
- toolErrorFromResult
4
- } from "./index-8qt2m66q.js";
2
+ isRetryableStatus2
3
+ } from "./index-n53mswt3.js";
5
4
  import {
6
- assertToolExtensionCompatible,
5
+ rebuildObject,
7
6
  mergeSchemas,
8
- projectToolSurface,
9
- rebuildObject
10
- } from "./index-0r0fbk7z.js";
7
+ assertToolExtensionCompatible,
8
+ projectToolSurface
9
+ } from "./index-7z9ym7t8.js";
11
10
  import {
12
- isRetryableStatus
13
- } from "./index-2vtcmrj9.js";
11
+ toolErrorFromResult,
12
+ executeToolMethod
13
+ } from "./index-dvwj1f43.js";
14
14
 
15
15
  // src/tools/mount.ts
16
16
  import { z } from "zod";
@@ -33,7 +33,7 @@ function contractToolMountable(projected, extend) {
33
33
  shouldExtend: projected.shouldExtend
34
34
  };
35
35
  }
36
- function collectTools(service, transport, config = {}) {
36
+ function collectTools2(service, transport, config = {}) {
37
37
  const { extend, flattenUnionInput = false, assertNames = true } = config;
38
38
  const tools = [];
39
39
  for (const projected of projectToolSurface({ services: [service] }, transport === "HTTP" ? "AGENT" : transport, {
@@ -72,7 +72,7 @@ function createToolRunner(config) {
72
72
  function formatToolError(result, toolName, errorHint) {
73
73
  const err = {
74
74
  error: result.code,
75
- retryable: result.retryable ?? isRetryableStatus(toolErrorFromResult(result).status)
75
+ retryable: result.retryable ?? isRetryableStatus2(toolErrorFromResult(result).status)
76
76
  };
77
77
  if (result.details)
78
78
  err.details = result.details;
@@ -89,4 +89,4 @@ function formatToolError(result, toolName, errorHint) {
89
89
  return err;
90
90
  }
91
91
 
92
- export { contractToolMountable, collectTools, createToolRunner, formatToolError };
92
+ export { contractToolMountable, collectTools2, createToolRunner, formatToolError };