experimental-ash 0.24.2 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/docs/public/typescript-api.md +0 -12
  3. package/dist/src/channel/adapter.d.ts +5 -18
  4. package/dist/src/channel/adapter.js +2 -8
  5. package/dist/src/channel/cross-channel-receive.d.ts +10 -1
  6. package/dist/src/channel/cross-channel-receive.js +21 -3
  7. package/dist/src/channel/routes.d.ts +2 -1
  8. package/dist/src/channel/routes.js +6 -3
  9. package/dist/src/channel/schedule.js +2 -2
  10. package/dist/src/channel/types.d.ts +1 -1
  11. package/dist/src/chunks/{client-DLHAGI2g.js → client-BShLWzR6.js} +3 -3
  12. package/dist/src/chunks/compile-agent-75wLLW-E.js +5 -0
  13. package/dist/src/chunks/dev-authored-source-watcher-DqoJsDup.js +1 -0
  14. package/dist/src/chunks/host-JVy7fewA.js +70 -0
  15. package/dist/src/chunks/paths-DNjq5JOy.js +85 -0
  16. package/dist/src/chunks/{token-D98SQdvs.js → token-BOkIxJeV.js} +1 -1
  17. package/dist/src/chunks/types-CjIyrcYo.js +1 -0
  18. package/dist/src/cli/commands/info.js +1 -1
  19. package/dist/src/cli/dev/environment.d.ts +0 -5
  20. package/dist/src/cli/dev/environment.js +1 -1
  21. package/dist/src/cli/dev/repl.d.ts +1 -1
  22. package/dist/src/cli/dev/repl.js +3 -3
  23. package/dist/src/cli/run.d.ts +0 -1
  24. package/dist/src/cli/run.js +2 -2
  25. package/dist/src/client/message-reducer.js +13 -25
  26. package/dist/src/client/message-response.d.ts +2 -1
  27. package/dist/src/client/open-stream.d.ts +3 -3
  28. package/dist/src/client/open-stream.js +1 -2
  29. package/dist/src/client/session.d.ts +2 -1
  30. package/dist/src/client/session.js +0 -3
  31. package/dist/src/client/types.d.ts +3 -2
  32. package/dist/src/compiler/artifacts.d.ts +7 -10
  33. package/dist/src/compiler/artifacts.js +3 -3
  34. package/dist/src/compiler/manifest.d.ts +6 -15
  35. package/dist/src/compiler/manifest.js +3 -3
  36. package/dist/src/compiler/normalize-agent-config.js +12 -10
  37. package/dist/src/compiler/normalize-manifest.js +3 -2
  38. package/dist/src/context/container.d.ts +1 -16
  39. package/dist/src/context/container.js +1 -24
  40. package/dist/src/context/hook-lifecycle.d.ts +2 -7
  41. package/dist/src/context/hook-lifecycle.js +0 -6
  42. package/dist/src/context/provider.d.ts +1 -11
  43. package/dist/src/context/providers/sandbox.js +4 -1
  44. package/dist/src/context/run-step.d.ts +2 -4
  45. package/dist/src/context/run-step.js +4 -17
  46. package/dist/src/context/seed-keys.d.ts +1 -1
  47. package/dist/src/discover/connections.d.ts +2 -1
  48. package/dist/src/discover/diagnostics.d.ts +0 -8
  49. package/dist/src/discover/diagnostics.js +4 -16
  50. package/dist/src/discover/discover-agent.d.ts +3 -13
  51. package/dist/src/discover/discover-agent.js +1 -11
  52. package/dist/src/discover/discover-subagent.d.ts +3 -2
  53. package/dist/src/discover/discover-subagent.js +1 -1
  54. package/dist/src/discover/filesystem.d.ts +0 -37
  55. package/dist/src/discover/filesystem.js +0 -115
  56. package/dist/src/discover/grammar.d.ts +10 -20
  57. package/dist/src/discover/grammar.js +11 -33
  58. package/dist/src/discover/lib.d.ts +3 -2
  59. package/dist/src/discover/manifest.d.ts +3 -3
  60. package/dist/src/discover/markdown.d.ts +2 -1
  61. package/dist/src/discover/sandbox.d.ts +2 -1
  62. package/dist/src/discover/schedules.d.ts +3 -2
  63. package/dist/src/discover/schedules.js +1 -1
  64. package/dist/src/discover/skills.d.ts +3 -2
  65. package/dist/src/discover/skills.js +1 -1
  66. package/dist/src/discover/slots.d.ts +3 -2
  67. package/dist/src/evals/cli/eval.d.ts +0 -6
  68. package/dist/src/evals/cli/eval.js +1 -1
  69. package/dist/src/evals/loaders/index.d.ts +2 -22
  70. package/dist/src/evals/loaders/index.js +1 -1
  71. package/dist/src/evals/reporters/index.d.ts +2 -14
  72. package/dist/src/evals/reporters/index.js +1 -1
  73. package/dist/src/evals/runner/discover.d.ts +0 -6
  74. package/dist/src/evals/runner/discover.js +1 -1
  75. package/dist/src/evals/runner/execute-case.d.ts +2 -1
  76. package/dist/src/evals/runner/execute-suite.d.ts +2 -1
  77. package/dist/src/evals/runner/reporters/braintrust.js +1 -1
  78. package/dist/src/evals/runner/resolve-git-metadata.d.ts +3 -3
  79. package/dist/src/evals/scorers/autoevals-client.d.ts +2 -2
  80. package/dist/src/execution/connection-auth-steps.d.ts +1 -5
  81. package/dist/src/execution/connection-auth-steps.js +4 -5
  82. package/dist/src/execution/node-step.d.ts +1 -1
  83. package/dist/src/execution/skills/instructions.d.ts +2 -1
  84. package/dist/src/execution/subagent-hitl-proxy.d.ts +1 -1
  85. package/dist/src/execution/subagent-tool.d.ts +0 -8
  86. package/dist/src/execution/subagent-tool.js +9 -16
  87. package/dist/src/execution/tool-compaction.js +0 -2
  88. package/dist/src/execution/turn-workflow.d.ts +1 -1
  89. package/dist/src/execution/turn-workflow.js +2 -2
  90. package/dist/src/execution/web-fetch/tool.js +1 -1
  91. package/dist/src/execution/workflow-steps.d.ts +17 -1
  92. package/dist/src/execution/workflow-steps.js +5 -6
  93. package/dist/src/harness/action-result-helpers.d.ts +0 -12
  94. package/dist/src/harness/action-result-helpers.js +1 -1
  95. package/dist/src/harness/emission.d.ts +2 -2
  96. package/dist/src/harness/execute-tool.d.ts +2 -1
  97. package/dist/src/harness/input-requests.d.ts +2 -1
  98. package/dist/src/harness/prompt-cache.d.ts +1 -9
  99. package/dist/src/harness/prompt-cache.js +0 -12
  100. package/dist/src/harness/runtime-actions.d.ts +2 -11
  101. package/dist/src/harness/runtime-actions.js +1 -1
  102. package/dist/src/harness/step-hooks.d.ts +3 -2
  103. package/dist/src/harness/step-hooks.js +3 -7
  104. package/dist/src/harness/tool-loop.js +0 -2
  105. package/dist/src/harness/types.d.ts +1 -1
  106. package/dist/src/internal/application/package.js +2 -2
  107. package/dist/src/internal/application/runtime-compiled-artifacts-source.js +0 -1
  108. package/dist/src/internal/attachments/errors.d.ts +8 -2
  109. package/dist/src/internal/attachments/url-refs.d.ts +0 -1
  110. package/dist/src/internal/attachments/url-refs.js +1 -1
  111. package/dist/src/internal/authored-definition/channel.d.ts +0 -5
  112. package/dist/src/internal/authored-definition/channel.js +1 -10
  113. package/dist/src/internal/authored-definition/sandbox.d.ts +2 -1
  114. package/dist/src/internal/authored-definition/schema-backed.d.ts +3 -2
  115. package/dist/src/internal/authored-module-loader.d.ts +0 -6
  116. package/dist/src/internal/authored-module-loader.js +0 -9
  117. package/dist/src/internal/authored-module.d.ts +0 -4
  118. package/dist/src/internal/authored-module.js +0 -10
  119. package/dist/src/internal/bundler/nitro-rolldown.d.ts +2 -10
  120. package/dist/src/internal/bundler/nitro-rolldown.js +1 -1
  121. package/dist/src/{public → internal}/helpers/markdown.d.ts +2 -23
  122. package/dist/src/{public → internal}/helpers/markdown.js +1 -1
  123. package/dist/src/internal/logging.d.ts +2 -8
  124. package/dist/src/internal/nitro/host/build-vercel-agent-summary.d.ts +1 -1
  125. package/dist/src/internal/nitro/host/build-vercel-agent-summary.js +1 -1
  126. package/dist/src/internal/nitro/host/create-application-nitro.js +1 -1
  127. package/dist/src/internal/nitro/host/dev-authored-source-watcher.js +2 -2
  128. package/dist/src/internal/nitro/routes/channel-dispatch.js +2 -2
  129. package/dist/src/internal/nitro/routes/runtime-artifacts.js +0 -1
  130. package/dist/src/internal/node-esm-compat-banner.d.ts +1 -1
  131. package/dist/src/internal/runtime-registry.d.ts +2 -1
  132. package/dist/src/{protocol → internal}/vercel-agent-summary.d.ts +1 -1
  133. package/dist/src/protocol/message.d.ts +0 -34
  134. package/dist/src/protocol/message.js +0 -30
  135. package/dist/src/public/channels/index.d.ts +1 -1
  136. package/dist/src/public/channels/index.js +1 -1
  137. package/dist/src/public/channels/slack/api.d.ts +1 -7
  138. package/dist/src/public/channels/slack/api.js +1 -1
  139. package/dist/src/public/channels/slack/connections.d.ts +2 -6
  140. package/dist/src/public/channels/slack/hitl.d.ts +3 -2
  141. package/dist/src/public/channels/slack/inbound.d.ts +0 -35
  142. package/dist/src/public/definitions/channel.d.ts +2 -2
  143. package/dist/src/public/definitions/channel.js +1 -1
  144. package/dist/src/public/definitions/defineChannel.d.ts +1 -1
  145. package/dist/src/public/definitions/defineChannel.js +1 -1
  146. package/dist/src/public/definitions/instructions.d.ts +0 -11
  147. package/dist/src/public/definitions/instructions.js +0 -5
  148. package/dist/src/public/definitions/tool.d.ts +3 -7
  149. package/dist/src/public/definitions/tool.js +1 -1
  150. package/dist/src/public/instructions/index.d.ts +1 -5
  151. package/dist/src/public/instructions/index.js +1 -3
  152. package/dist/src/public/tool-result-narrowing.d.ts +2 -1
  153. package/dist/src/react/use-ash-agent.d.ts +2 -1
  154. package/dist/src/react/use-ash-agent.js +1 -5
  155. package/dist/src/runtime/actions/types.d.ts +8 -50
  156. package/dist/src/runtime/actions/types.js +5 -21
  157. package/dist/src/runtime/agent/bootstrap-model-utils.d.ts +2 -1
  158. package/dist/src/runtime/agent/mock-model-adapter.js +1 -1
  159. package/dist/src/runtime/channels/registry.js +3 -8
  160. package/dist/src/runtime/compiled-artifacts-source.d.ts +4 -11
  161. package/dist/src/runtime/compiled-artifacts-source.js +3 -7
  162. package/dist/src/runtime/connections/authorization-tokens.d.ts +1 -14
  163. package/dist/src/runtime/connections/authorization-tokens.js +2 -28
  164. package/dist/src/runtime/connections/principal-context.d.ts +3 -2
  165. package/dist/src/runtime/connections/validate-authorization.d.ts +0 -11
  166. package/dist/src/runtime/connections/validate-authorization.js +0 -16
  167. package/dist/src/runtime/framework-channels/index.d.ts +0 -1
  168. package/dist/src/runtime/framework-channels/index.js +1 -1
  169. package/dist/src/runtime/framework-tools/index.d.ts +2 -1
  170. package/dist/src/runtime/framework-tools/index.js +2 -1
  171. package/dist/src/runtime/framework-tools/skill.d.ts +0 -13
  172. package/dist/src/runtime/framework-tools/skill.js +1 -1
  173. package/dist/src/runtime/governance/auth/token-claims.d.ts +1 -16
  174. package/dist/src/runtime/governance/auth/token-claims.js +3 -3
  175. package/dist/src/runtime/governance/auth/types.d.ts +0 -4
  176. package/dist/src/runtime/governance/network/ip-allow-list.d.ts +0 -17
  177. package/dist/src/runtime/governance/network/ip-allow-list.js +0 -39
  178. package/dist/src/runtime/hooks/registry.d.ts +7 -4
  179. package/dist/src/runtime/hooks/registry.js +4 -2
  180. package/dist/src/runtime/loaders/bundled-artifacts.d.ts +0 -5
  181. package/dist/src/runtime/loaders/bundled-artifacts.js +0 -7
  182. package/dist/src/runtime/loaders/compile-metadata.d.ts +3 -10
  183. package/dist/src/runtime/loaders/compile-metadata.js +6 -8
  184. package/dist/src/runtime/loaders/manifest.d.ts +2 -2
  185. package/dist/src/runtime/loaders/manifest.js +4 -5
  186. package/dist/src/runtime/loaders/module-map.d.ts +2 -2
  187. package/dist/src/runtime/loaders/module-map.js +3 -4
  188. package/dist/src/runtime/prompt/compose.d.ts +2 -1
  189. package/dist/src/runtime/resolve-agent-graph.d.ts +2 -15
  190. package/dist/src/runtime/resolve-agent-graph.js +1 -1
  191. package/dist/src/runtime/sandbox/keys.d.ts +2 -1
  192. package/dist/src/runtime/sandbox/registry.d.ts +3 -3
  193. package/dist/src/runtime/schedules/resolve-schedule.d.ts +3 -12
  194. package/dist/src/runtime/schedules/resolve-schedule.js +1 -1
  195. package/dist/src/runtime/sessions/auth.d.ts +2 -13
  196. package/dist/src/runtime/sessions/auth.js +1 -11
  197. package/dist/src/runtime/sessions/compiled-agent-cache.js +1 -1
  198. package/dist/src/runtime/sessions/runtime-session.d.ts +0 -6
  199. package/dist/src/runtime/sessions/runtime-session.js +0 -13
  200. package/dist/src/runtime/sessions/turn.d.ts +2 -2
  201. package/dist/src/runtime/subagents/registry.d.ts +2 -5
  202. package/dist/src/runtime/subagents/registry.js +0 -6
  203. package/dist/src/runtime/tools/registry.d.ts +2 -1
  204. package/dist/src/runtime/tools/registry.js +1 -4
  205. package/dist/src/runtime/types.d.ts +4 -3
  206. package/dist/src/runtime/workspace/seed-files.d.ts +2 -1
  207. package/dist/src/services/dev-client/request-headers.d.ts +37 -8
  208. package/dist/src/services/dev-client/request-headers.js +71 -46
  209. package/dist/src/services/dev-client/stream.d.ts +0 -19
  210. package/dist/src/services/dev-client/stream.js +0 -37
  211. package/dist/src/services/dev-client/url.d.ts +3 -7
  212. package/dist/src/services/dev-client/url.js +4 -10
  213. package/dist/src/services/dev-client.d.ts +0 -12
  214. package/dist/src/services/dev-client.js +6 -92
  215. package/dist/src/shared/agent-definition.d.ts +1 -1
  216. package/dist/src/shared/json.d.ts +0 -4
  217. package/dist/src/shared/json.js +0 -38
  218. package/dist/src/shared/skill-definition.d.ts +0 -2
  219. package/package.json +1 -6
  220. package/dist/src/chunks/dev-authored-source-watcher-CBID_Dwh.js +0 -1
  221. package/dist/src/chunks/host-zBy9FyyX.js +0 -70
  222. package/dist/src/chunks/package-HUaeub_D.js +0 -1
  223. package/dist/src/chunks/paths-CebY5GCi.js +0 -89
  224. package/dist/src/chunks/types-DDA2QUED.js +0 -1
  225. package/dist/src/compiler/resource-files.d.ts +0 -19
  226. package/dist/src/compiler/resource-files.js +0 -28
  227. package/dist/src/execution/subagent-invocation.d.ts +0 -19
  228. package/dist/src/execution/subagent-invocation.js +0 -17
  229. package/dist/src/execution/task-mode.d.ts +0 -9
  230. package/dist/src/execution/task-mode.js +0 -12
  231. package/dist/src/execution/types.d.ts +0 -20
  232. package/dist/src/execution/types.js +0 -1
  233. package/dist/src/internal/logical-paths.d.ts +0 -13
  234. package/dist/src/internal/logical-paths.js +0 -25
  235. package/dist/src/runtime/sessions/messages.d.ts +0 -140
  236. package/dist/src/runtime/sessions/messages.js +0 -170
  237. package/dist/src/runtime/standard-schema.d.ts +0 -27
  238. package/dist/src/runtime/standard-schema.js +0 -64
  239. package/dist/src/services/dev-client/live-stream.d.ts +0 -35
  240. package/dist/src/services/dev-client/live-stream.js +0 -157
  241. package/dist/src/services/dev-client/send-message.d.ts +0 -24
  242. package/dist/src/services/dev-client/send-message.js +0 -185
  243. package/dist/src/services/dev-client/session.d.ts +0 -54
  244. package/dist/src/services/dev-client/session.js +0 -52
  245. package/dist/src/services/host.d.ts +0 -14
  246. package/dist/src/services/host.js +0 -13
  247. /package/dist/src/{package-name.d.ts → internal/package-name.d.ts} +0 -0
  248. /package/dist/src/{package-name.js → internal/package-name.js} +0 -0
  249. /package/dist/src/{protocol → internal}/vercel-agent-summary.js +0 -0
  250. /package/dist/src/{run-mode.d.ts → shared/run-mode.d.ts} +0 -0
  251. /package/dist/src/{run-mode.js → shared/run-mode.js} +0 -0
@@ -1,185 +0,0 @@
1
- import { ASH_SESSION_ID_HEADER, createMessageSessionStreamPath } from "#protocol/message.js";
2
- import { ASH_CREATE_SESSION_ROUTE_PATH, createAshContinueSessionRoutePath, } from "#protocol/routes.js";
3
- import { openDevelopmentMessageStream } from "#services/dev-client/live-stream.js";
4
- import { createDevelopmentRequestHeadersAsync, } from "#services/dev-client/request-headers.js";
5
- import { createDevelopmentMessageRequest, createDevelopmentSessionState, updateDevelopmentSessionState, } from "#services/dev-client/session.js";
6
- import { extractCurrentTurnBoundaryEvent } from "#services/dev-client/stream.js";
7
- import { resolveDevelopmentServerResourceUrl, resolveDevelopmentServerRouteUrl, } from "#services/dev-client/url.js";
8
- const DEVELOPMENT_TURN_STREAM_RECONNECT_LIMIT = 3;
9
- async function fetchDevelopmentSessionStreamResponse(input) {
10
- const canonicalResourceUrl = resolveDevelopmentServerResourceUrl({
11
- resource: createMessageSessionStreamPath(input.sessionId),
12
- serverUrl: input.serverUrl,
13
- });
14
- const requestResourceUrl = new URL(canonicalResourceUrl);
15
- if (input.startIndex !== undefined) {
16
- requestResourceUrl.searchParams.set("startIndex", String(input.startIndex));
17
- }
18
- const streamResponse = await fetch(requestResourceUrl, {
19
- headers: await createDevelopmentRequestHeadersAsync({
20
- headers: input.headers,
21
- resourceUrl: requestResourceUrl,
22
- }),
23
- signal: input.signal ?? null,
24
- });
25
- if (!streamResponse.ok) {
26
- const body = await streamResponse.text();
27
- throw new Error(body || `Session stream route returned ${streamResponse.status}.`);
28
- }
29
- return {
30
- resourceUrl: canonicalResourceUrl.toString(),
31
- response: streamResponse,
32
- };
33
- }
34
- async function openDevelopmentSessionStream(input) {
35
- const streamResponse = await fetchDevelopmentSessionStreamResponse(input);
36
- return openDevelopmentMessageStream({
37
- resourceUrl: streamResponse.resourceUrl,
38
- response: streamResponse.response,
39
- });
40
- }
41
- async function readDevelopmentTurnEvents(input) {
42
- let currentStream = input.stream;
43
- const events = [];
44
- let currentStreamIndex = input.initialStartIndex;
45
- let remainingReconnectAttempts = DEVELOPMENT_TURN_STREAM_RECONNECT_LIMIT;
46
- while (true) {
47
- const nextEvents = await currentStream.readEvents({
48
- onEvent: input.onEvent,
49
- });
50
- events.push(...nextEvents);
51
- currentStreamIndex += nextEvents.length;
52
- if (extractCurrentTurnBoundaryEvent(nextEvents)) {
53
- return {
54
- events,
55
- stream: currentStream,
56
- };
57
- }
58
- if (!currentStream.closed || remainingReconnectAttempts === 0) {
59
- return {
60
- events,
61
- stream: currentStream,
62
- };
63
- }
64
- remainingReconnectAttempts -= 1;
65
- await currentStream.close();
66
- currentStream = await openDevelopmentSessionStream({
67
- headers: input.headers,
68
- sessionId: input.sessionId,
69
- signal: input.signal,
70
- serverUrl: input.serverUrl,
71
- startIndex: currentStreamIndex,
72
- });
73
- }
74
- }
75
- /**
76
- * Sends one message to the configured Ash server and collects its streamed
77
- * events, forwarding any caller-supplied Ash route headers across the message
78
- * and stream requests for the current turn.
79
- */
80
- export async function sendDevelopmentMessage(input) {
81
- const session = input.session;
82
- const routePath = session.sessionId
83
- ? createAshContinueSessionRoutePath(session.sessionId)
84
- : ASH_CREATE_SESSION_ROUTE_PATH;
85
- const messageRouteUrl = resolveDevelopmentServerRouteUrl({
86
- routePath,
87
- serverUrl: input.serverUrl,
88
- });
89
- let stream;
90
- try {
91
- const response = await fetch(messageRouteUrl, {
92
- body: JSON.stringify(createDevelopmentMessageRequest({
93
- message: input.message,
94
- session,
95
- })),
96
- headers: await createDevelopmentRequestHeadersAsync({
97
- headers: createMessageRouteHeaders(input.headers),
98
- resourceUrl: messageRouteUrl,
99
- }),
100
- method: "POST",
101
- signal: input.signal ?? null,
102
- });
103
- if (!response.ok) {
104
- const body = await response.text();
105
- throw new Error(body || `Message route returned ${response.status}.`);
106
- }
107
- const payload = (await response.json());
108
- if (payload.status === "completed" && typeof payload.output === "string") {
109
- const continuationToken = typeof payload.continuationToken === "string" ? payload.continuationToken : undefined;
110
- return {
111
- completedMessage: payload.output,
112
- events: [],
113
- session: createDevelopmentSessionState({ continuationToken }),
114
- };
115
- }
116
- const sessionId = (typeof payload.sessionId === "string" ? payload.sessionId : undefined) ??
117
- response.headers.get(ASH_SESSION_ID_HEADER)?.trim() ??
118
- session.sessionId ??
119
- undefined;
120
- const continuationToken = typeof payload.continuationToken === "string"
121
- ? payload.continuationToken
122
- : session.continuationToken;
123
- if (!sessionId) {
124
- throw new Error("Message route did not return a session id.");
125
- }
126
- input.onResponseStart?.({
127
- sessionId,
128
- });
129
- stream = await openDevelopmentSessionStream({
130
- headers: input.headers,
131
- sessionId,
132
- signal: input.signal,
133
- serverUrl: input.serverUrl,
134
- startIndex: session.sessionId === sessionId ? session.streamIndex : undefined,
135
- });
136
- const readResult = await readDevelopmentTurnEvents({
137
- headers: input.headers,
138
- initialStartIndex: session.sessionId === sessionId ? session.streamIndex : 0,
139
- onEvent: input.onEvent,
140
- sessionId,
141
- signal: input.signal,
142
- serverUrl: input.serverUrl,
143
- stream,
144
- });
145
- const events = readResult.events;
146
- stream = readResult.stream;
147
- if (!extractCurrentTurnBoundaryEvent(events)) {
148
- await stream.close();
149
- throw new Error("Development message stream closed before the current turn reached a boundary.");
150
- }
151
- const nextSession = updateDevelopmentSessionState({
152
- continuationToken,
153
- events,
154
- sessionId,
155
- session,
156
- });
157
- await stream.close();
158
- return {
159
- events,
160
- sessionId,
161
- session: nextSession,
162
- };
163
- }
164
- catch (error) {
165
- await stream?.close().catch(() => undefined);
166
- throw error;
167
- }
168
- }
169
- function createMessageRouteHeaders(headers) {
170
- const resolvedHeaders = new Headers(copyDevelopmentRequestHeaders(headers));
171
- resolvedHeaders.set("content-type", "application/json");
172
- return resolvedHeaders;
173
- }
174
- function copyDevelopmentRequestHeaders(headers) {
175
- if (headers === undefined) {
176
- return undefined;
177
- }
178
- if (headers instanceof Headers) {
179
- return headers;
180
- }
181
- if (Array.isArray(headers)) {
182
- return headers.map(([key, value]) => [key, value]);
183
- }
184
- return headers;
185
- }
@@ -1,54 +0,0 @@
1
- import type { HandleMessageRequestBody, HandleMessageStreamEvent } from "#protocol/message.js";
2
- /**
3
- * Durable-session cursor owned by the development client.
4
- */
5
- export interface DevelopmentSessionState {
6
- /**
7
- * Number of turn-boundary events already consumed from the run stream.
8
- */
9
- readonly boundaryCount: number;
10
- /**
11
- * V2 continuation token for resuming a parked session across turns.
12
- */
13
- readonly continuationToken?: string;
14
- /**
15
- * Number of streamed workflow chunks already consumed from the session stream.
16
- */
17
- readonly streamIndex: number;
18
- /**
19
- * Active session id when the workflow is parked for the next user message.
20
- */
21
- readonly sessionId?: string;
22
- }
23
- /**
24
- * Returns the session state used before any message is sent or when the
25
- * client resumes a known waiting run.
26
- */
27
- export declare function createDevelopmentSessionState(input?: {
28
- readonly boundaryCount?: number;
29
- readonly continuationToken?: string;
30
- readonly sessionId?: string;
31
- readonly streamIndex?: number;
32
- }): DevelopmentSessionState;
33
- /**
34
- * Disposes any resources still attached to the durable session cursor.
35
- */
36
- export declare function disposeDevelopmentSession(_: DevelopmentSessionState): Promise<void>;
37
- /**
38
- * Creates the next canonical message-route request for the current session
39
- * state.
40
- */
41
- export declare function createDevelopmentMessageRequest(input: {
42
- readonly message: string;
43
- readonly session: DevelopmentSessionState;
44
- }): HandleMessageRequestBody;
45
- /**
46
- * Advances the durable session cursor after one streamed turn boundary is
47
- * observed.
48
- */
49
- export declare function updateDevelopmentSessionState(input: {
50
- readonly continuationToken?: string;
51
- readonly events: readonly HandleMessageStreamEvent[];
52
- readonly sessionId: string;
53
- readonly session: DevelopmentSessionState;
54
- }): DevelopmentSessionState;
@@ -1,52 +0,0 @@
1
- import { countCurrentTurnBoundaryEvents, extractCurrentTurnBoundaryEvent, } from "#services/dev-client/stream.js";
2
- /**
3
- * Returns the session state used before any message is sent or when the
4
- * client resumes a known waiting run.
5
- */
6
- export function createDevelopmentSessionState(input = {}) {
7
- return {
8
- boundaryCount: input.boundaryCount ?? 0,
9
- continuationToken: input.continuationToken,
10
- sessionId: input.sessionId,
11
- streamIndex: input.streamIndex ?? 0,
12
- };
13
- }
14
- /**
15
- * Disposes any resources still attached to the durable session cursor.
16
- */
17
- export async function disposeDevelopmentSession(_) {
18
- return undefined;
19
- }
20
- /**
21
- * Creates the next canonical message-route request for the current session
22
- * state.
23
- */
24
- export function createDevelopmentMessageRequest(input) {
25
- if (input.session.continuationToken) {
26
- return {
27
- continuationToken: input.session.continuationToken,
28
- message: input.message,
29
- };
30
- }
31
- return {
32
- message: input.message,
33
- };
34
- }
35
- /**
36
- * Advances the durable session cursor after one streamed turn boundary is
37
- * observed.
38
- */
39
- export function updateDevelopmentSessionState(input) {
40
- const boundaryEvent = extractCurrentTurnBoundaryEvent(input.events);
41
- const boundaryCount = input.session.boundaryCount + countCurrentTurnBoundaryEvents(input.events);
42
- const streamIndex = input.session.streamIndex + input.events.length;
43
- if (boundaryEvent?.type === "session.waiting") {
44
- return createDevelopmentSessionState({
45
- boundaryCount,
46
- continuationToken: input.continuationToken ?? input.session.continuationToken,
47
- sessionId: input.sessionId,
48
- streamIndex,
49
- });
50
- }
51
- return createDevelopmentSessionState();
52
- }
@@ -1,14 +0,0 @@
1
- import { type DevelopmentServerHandle } from "#internal/nitro/host.js";
2
- export type { DevelopmentServerHandle };
3
- /**
4
- * Builds the production host output for one Ash application.
5
- */
6
- export declare function buildHost(appRoot: string): Promise<string>;
7
- /**
8
- * Starts the development host for one Ash application.
9
- */
10
- export declare function startHost(appRoot: string, options?: {
11
- host?: string;
12
- port?: number;
13
- schedules?: boolean;
14
- }): Promise<DevelopmentServerHandle>;
@@ -1,13 +0,0 @@
1
- import { buildApplication, startDevelopmentServer, } from "#internal/nitro/host.js";
2
- /**
3
- * Builds the production host output for one Ash application.
4
- */
5
- export async function buildHost(appRoot) {
6
- return await buildApplication(appRoot);
7
- }
8
- /**
9
- * Starts the development host for one Ash application.
10
- */
11
- export async function startHost(appRoot, options = {}) {
12
- return await startDevelopmentServer(appRoot, options);
13
- }
File without changes