@dbos-inc/vercel-ai 0.4.4 → 0.5.4

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.
package/dist/mcp.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.durableMCPTools = durableMCPTools;
4
+ const dbos_sdk_1 = require("@dbos-inc/dbos-sdk");
4
5
  const internal_1 = require("./internal");
5
6
  const durable_stream_1 = require("./durable-stream");
6
7
  // Mirror of @ai-sdk/mcp's toModelOutput: MCP content becomes model content (text stays text, images become files).
@@ -69,12 +70,23 @@ async function durableMCPTools(client, options = {}) {
69
70
  };
70
71
  // The tool call id comes from the checkpointed model result, so a reordered parallel step fails replay instead of swapping results.
71
72
  return run(`mcp.tool.${name}.${toolCallId ?? 'call'}`, async () => {
73
+ // Stop the call when the attempt times out or the workflow is cancelled, as well as on the caller's abort.
74
+ const cancelSignal = (0, internal_1.stepCancelSignal)();
75
+ const record = async (outcome) => {
76
+ if (!durableStream || !toolCallId)
77
+ return;
78
+ const timeout = await (0, internal_1.timedOutOutcome)(callConfig.shouldRetry);
79
+ if (timeout === null)
80
+ return;
81
+ await (0, durable_stream_1.writeToolRecord)(durableStream, toolCallId, timeout ?? outcome);
82
+ };
83
+ const abortSignal = (0, internal_1.anySignal)(signal, dbos_sdk_1.DBOS.stepStatus?.timeoutSignal, cancelSignal);
72
84
  let output;
73
85
  try {
74
86
  const tool = (await client.tools(toolOptions))[name];
75
87
  if (typeof tool?.execute !== 'function')
76
88
  throw new Error(`MCP tool "${name}" is not executable.`);
77
- output = await tool.execute(input, execOptions);
89
+ output = await tool.execute(input, abortSignal === signal ? execOptions : { ...execOptions, abortSignal });
78
90
  // A streaming execute can't checkpoint mid-flight; drain it and record the final value (the last yield).
79
91
  if ((0, internal_1.isAsyncIterable)(output)) {
80
92
  let last;
@@ -84,13 +96,11 @@ async function durableMCPTools(client, options = {}) {
84
96
  }
85
97
  }
86
98
  catch (error) {
87
- if (durableStream && toolCallId) {
88
- await (0, durable_stream_1.writeToolRecord)(durableStream, toolCallId, { errorText: error instanceof Error ? error.message : String(error) });
89
- }
99
+ if (!cancelSignal?.aborted)
100
+ await record({ errorText: error instanceof Error ? error.message : String(error) });
90
101
  throw error;
91
102
  }
92
- if (durableStream && toolCallId)
93
- await (0, durable_stream_1.writeToolRecord)(durableStream, toolCallId, { output });
103
+ await record({ output });
94
104
  return output;
95
105
  }, callConfig);
96
106
  },
package/dist/mcp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAItD,OAAO,KAAK,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,IAAI,CAAC,OAAO,iBAAiB,EAAE,QAAQ,EAAE,CAAC;AAkBvI,OAAO,EAAE,KAAK,oBAAoB,EAA2C,MAAM,kBAAkB,CAAC;AAEtG,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,kHAAkH;IAClH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,qIAAqI;IACrI,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAC7D;AA8BD,8KAA8K;AAC9K,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,uBAAuB,CAyMvF;AAED,yHAAyH;AACzH,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,UAAe,GAAG,wBAAwB,CA2BxF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,UAAe,GAAG,oBAAoB,CAmBhF"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAItD,OAAO,KAAK,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,IAAI,CAAC,OAAO,iBAAiB,EAAE,QAAQ,EAAE,CAAC;AAkBvI,OAAO,EAAE,KAAK,oBAAoB,EAA2C,MAAM,kBAAkB,CAAC;AAEtG,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,kHAAkH;IAClH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,qIAAqI;IACrI,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAC7D;AA8BD,8KAA8K;AAC9K,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,uBAAuB,CAuNvF;AAED,yHAAyH;AACzH,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,UAAe,GAAG,wBAAwB,CA8BxF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,UAAe,GAAG,oBAAoB,CAsBhF"}
@@ -46,7 +46,10 @@ function durableCalls(options = {}) {
46
46
  const workflowID = await enterDurableModelCall();
47
47
  try {
48
48
  return await dbos_sdk_1.DBOS.runStep(async () => {
49
- const result = ensureResponseMetadata(encodeBinaryContent(omitBodies(await doGenerate(), include)));
49
+ // The provider call also stops when the attempt times out or the workflow is cancelled.
50
+ const signal = (0, internal_1.anySignal)(params.abortSignal, dbos_sdk_1.DBOS.stepStatus?.timeoutSignal, (0, internal_1.stepCancelSignal)());
51
+ const raw = signal === params.abortSignal ? await doGenerate() : await model.doGenerate({ ...params, abortSignal: signal });
52
+ const result = ensureResponseMetadata(encodeBinaryContent(omitBodies(raw, include)));
50
53
  // A non-streaming call writes its whole output at once, so the stream holds every call the loop makes, not only streamed ones.
51
54
  if (streamConfig) {
52
55
  const streamWriter = new durable_stream_1.ModelStreamWriter(streamConfig);
@@ -127,21 +130,27 @@ function durableCalls(options = {}) {
127
130
  const accumulator = new StreamAccumulator();
128
131
  // A timed-out attempt is abandoned by DBOS (its outcome is discarded) but keeps running; stop it so it can't emit alongside a retry.
129
132
  const timeoutSignal = dbos_sdk_1.DBOS.stepStatus?.timeoutSignal;
133
+ // A workflow cancel is not a consumer abort: it must fail the attempt so nothing is checkpointed and a resume re-runs the call.
134
+ const cancelSignal = (0, internal_1.stepCancelSignal)();
135
+ const cancelledWorkflow = () => cancelSignal?.aborted === true;
136
+ const providerSignal = (0, internal_1.anySignal)(abortSignal, timeoutSignal, cancelSignal);
130
137
  let reader;
131
138
  let sawFinish = false;
132
139
  const abandon = () => void reader?.cancel().catch(() => { });
133
140
  timeoutSignal?.addEventListener('abort', abandon, { once: true });
141
+ cancelSignal?.addEventListener('abort', abandon, { once: true });
134
142
  // A consumer abort tears the provider call down too; the attempt is then recorded as aborted below.
135
143
  abortSignal?.addEventListener('abort', abandon, { once: true });
136
144
  // Step-scope stream writes: cheap, replay-safe, and never duplicated since a retry is refused once content has streamed.
137
145
  const streamWriter = streamConfig ? new durable_stream_1.ModelStreamWriter(streamConfig) : undefined;
138
146
  try {
139
- reader = (await doStream()).stream.getReader();
147
+ const result = providerSignal === abortSignal ? await doStream() : await model.doStream({ ...params, abortSignal: providerSignal });
148
+ reader = result.stream.getReader();
140
149
  for (;;) {
141
150
  const { done, value: part } = await reader.read();
142
151
  if (timeoutSignal?.aborted)
143
152
  throw (timeoutSignal.reason ?? new Error('step attempt timed out'));
144
- if (done || aborted())
153
+ if (done || aborted() || cancelledWorkflow())
145
154
  break;
146
155
  if (part.type === 'error') {
147
156
  // A cancelled consumer abandoned this call; don't let a late failure become the step outcome, or replay would fail where the live run succeeded.
@@ -158,23 +167,28 @@ function durableCalls(options = {}) {
158
167
  accumulator.add(part);
159
168
  }
160
169
  // No terminal part and no output: fail (retryably) like the AI SDK's NoOutputGeneratedError, instead of checkpointing a permanent empty success.
161
- if (!sawFinish && !accumulator.hasContent && !cancelled && !aborted()) {
170
+ if (!sawFinish && !accumulator.hasContent && !cancelled && !aborted() && !cancelledWorkflow()) {
162
171
  throw new Error('Model stream ended without a finish part or any output.');
163
172
  }
164
173
  }
165
174
  catch (error) {
166
- // Same rule for stream-level failures (doStream or a read rejecting) after a cancel; after an abort, the abort is the outcome.
167
- if (!cancelled && !aborted()) {
175
+ // Same rule for stream-level failures (doStream or a read rejecting) after a cancel; after an abort or a workflow cancel, that is the outcome.
176
+ if (!cancelled && !aborted() && !cancelledWorkflow()) {
168
177
  await streamWriter?.abandon();
169
178
  throw error;
170
179
  }
171
180
  }
172
181
  finally {
173
182
  timeoutSignal?.removeEventListener('abort', abandon);
183
+ cancelSignal?.removeEventListener('abort', abandon);
174
184
  abortSignal?.removeEventListener('abort', abandon);
175
185
  // Tear down the provider stream on early exits (error part, post-cancel break); a no-op after a clean drain.
176
186
  void reader?.cancel().catch(() => { });
177
187
  }
188
+ if (cancelledWorkflow()) {
189
+ await streamWriter?.abandon();
190
+ throw cancelSignal.reason;
191
+ }
178
192
  // Record the abort as the step's failure; replay rethrows it, so the workflow must catch aborts it means to survive.
179
193
  if (aborted()) {
180
194
  await streamWriter?.end({ aborted: true });
@@ -244,14 +258,17 @@ function durableEmbeddingCalls(options = {}) {
244
258
  overrideSupportsParallelCalls: ({ model }) => ({
245
259
  then: (onfulfilled, onrejected) => Promise.resolve((0, internal_1.isInWorkflowFunction)() ? false : model.supportsParallelCalls).then(onfulfilled, onrejected),
246
260
  }),
247
- wrapEmbed: async ({ doEmbed, model }) => {
261
+ wrapEmbed: async ({ doEmbed, params, model }) => {
248
262
  (0, internal_1.assertNotInTransaction)('embed');
249
263
  if (!(0, internal_1.isInWorkflowFunction)()) {
250
264
  return await doEmbed();
251
265
  }
252
266
  const workflowID = await enterDurableModelCall();
253
267
  try {
254
- return await dbos_sdk_1.DBOS.runStep(async () => doEmbed(), {
268
+ return await dbos_sdk_1.DBOS.runStep(async () => {
269
+ const signal = (0, internal_1.anySignal)(params.abortSignal, dbos_sdk_1.DBOS.stepStatus?.timeoutSignal, (0, internal_1.stepCancelSignal)());
270
+ return signal === params.abortSignal ? doEmbed() : model.doEmbed({ ...params, abortSignal: signal });
271
+ }, {
255
272
  ...stepConfig,
256
273
  name: stepConfig.name ?? stepName(model, 'embed'),
257
274
  });
@@ -274,13 +291,16 @@ function durableImageCalls(options = {}) {
274
291
  const stepConfig = (0, internal_1.withErrorClassification)(options);
275
292
  return {
276
293
  specificationVersion: 'v4',
277
- wrapGenerate: async ({ doGenerate, model }) => {
294
+ wrapGenerate: async ({ doGenerate, params, model }) => {
278
295
  (0, internal_1.assertNotInTransaction)('generateImage');
279
296
  if (!(0, internal_1.isInWorkflowFunction)()) {
280
297
  return await doGenerate();
281
298
  }
282
299
  try {
283
- return await dbos_sdk_1.DBOS.runStep(async () => encodeImageResult(await doGenerate()), {
300
+ return await dbos_sdk_1.DBOS.runStep(async () => {
301
+ const signal = (0, internal_1.anySignal)(params.abortSignal, dbos_sdk_1.DBOS.stepStatus?.timeoutSignal, (0, internal_1.stepCancelSignal)());
302
+ return encodeImageResult(signal === params.abortSignal ? await doGenerate() : await model.doGenerate({ ...params, abortSignal: signal }));
303
+ }, {
284
304
  ...stepConfig,
285
305
  name: stepConfig.name ?? stepName(model, 'image'),
286
306
  });
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"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"}
package/dist/tools.d.ts CHANGED
@@ -1,11 +1,15 @@
1
1
  import { StepConfig } from '@dbos-inc/dbos-sdk';
2
- import type { ToolSet } from 'ai' with { 'resolution-mode': 'import' };
2
+ import type { ToolSet, UIMessageStreamWriter } from 'ai' with { 'resolution-mode': 'import' };
3
3
  export interface DurableToolsOptions extends StepConfig {
4
4
  /** Per-tool step config overriding the defaults; `false` leaves that tool non-durable. */
5
5
  tools?: Record<string, StepConfig | false>;
6
6
  /** Write each tool call's output (or error) to this durable stream from inside its step. */
7
7
  durableStream?: string;
8
+ /** Receives chunks tools write via `toolWriter()`; those that are part of the message are checkpointed and re-emitted on replay, before the tool's output. */
9
+ writer?: UIMessageStreamWriter;
8
10
  }
11
+ /** Returns a UI message stream writer bound to the current `durableTools` tool call. */
12
+ export declare function toolWriter(): UIMessageStreamWriter;
9
13
  /**
10
14
  * Wraps each tool's `execute` so that, inside a workflow, every tool call runs as a durable DBOS step named
11
15
  * `<tool>.<toolCallId>` and replays from its checkpoint on recovery; outside a workflow tools run unchanged.
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,iBAAiB,EAAE,QAAQ,EAAE,CAAC;AAKvE,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,0FAA0F;IAC1F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,CAAC,CAAC;IAC3C,4FAA4F;IAC5F,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAKD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAS,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAE,mBAAwB,GAAG,KAAK,CA4D1G"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAkB,qBAAqB,EAAE,MAAM,IAAI,CAAC,OAAO,iBAAiB,EAAE,QAAQ,EAAE,CAAC;AAK9G,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,0FAA0F;IAC1F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,CAAC,CAAC;IAC3C,4FAA4F;IAC5F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8JAA8J;IAC9J,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC;AAID,wFAAwF;AACxF,wBAAgB,UAAU,IAAI,qBAAqB,CAIlD;AAuFD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAS,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,GAAE,mBAAwB,GAAG,KAAK,CAoF1G"}
package/dist/tools.js CHANGED
@@ -1,17 +1,95 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toolWriter = toolWriter;
3
4
  exports.durableTools = durableTools;
5
+ const node_async_hooks_1 = require("node:async_hooks");
4
6
  const dbos_sdk_1 = require("@dbos-inc/dbos-sdk");
5
7
  const internal_1 = require("./internal");
6
8
  const agent_tool_1 = require("./agent-tool");
7
9
  const durable_stream_1 = require("./durable-stream");
10
+ const currentWriter = new node_async_hooks_1.AsyncLocalStorage();
11
+ /** Returns a UI message stream writer bound to the current `durableTools` tool call. */
12
+ function toolWriter() {
13
+ const writer = currentWriter.getStore();
14
+ if (!writer)
15
+ throw new Error('toolWriter() can only be called from a tool wrapped by durableTools.');
16
+ return writer;
17
+ }
18
+ function isToolEnvelope(value) {
19
+ return typeof value === 'object' && value !== null && value.__dbosToolChunks === 1;
20
+ }
21
+ function isTransient(chunk) {
22
+ return chunk.transient === true;
23
+ }
24
+ // An async generator's body runs as it is iterated, outside run(); bind each step of the iteration to the writer.
25
+ function runWithWriter(writer, fn) {
26
+ const result = currentWriter.run(writer, fn);
27
+ if (!(0, internal_1.isAsyncIterable)(result))
28
+ return result;
29
+ const iterator = currentWriter.run(writer, () => result[Symbol.asyncIterator]());
30
+ return {
31
+ [Symbol.asyncIterator]() {
32
+ return this;
33
+ },
34
+ next: (...args) => currentWriter.run(writer, () => iterator.next(...args)),
35
+ return: (value) => currentWriter.run(writer, () => iterator.return?.(value) ?? Promise.resolve({ done: true, value })),
36
+ throw: (error) => currentWriter.run(writer, () => iterator.throw?.(error) ?? Promise.reject(error)),
37
+ };
38
+ }
39
+ // Outside a step: every chunk goes straight to the writer, or nowhere.
40
+ function liveWriter(writer) {
41
+ return writer ?? { write() { }, merge() { }, onError: undefined };
42
+ }
43
+ /** One attempt's writer: transient chunks go out live, the rest wait for the step to succeed. */
44
+ class StepWriter {
45
+ writer;
46
+ durableStream;
47
+ chunks = [];
48
+ pending = [];
49
+ constructor(writer, durableStream) {
50
+ this.writer = writer;
51
+ this.durableStream = durableStream;
52
+ }
53
+ get onError() {
54
+ return this.writer?.onError;
55
+ }
56
+ write(chunk) {
57
+ if (!isTransient(chunk)) {
58
+ this.chunks.push(chunk);
59
+ return;
60
+ }
61
+ this.writer?.write(chunk);
62
+ if (this.durableStream)
63
+ this.track((0, durable_stream_1.writeDurableStream)(this.durableStream, [chunk]));
64
+ }
65
+ merge(stream) {
66
+ this.track((async () => {
67
+ for await (const chunk of stream)
68
+ this.write(chunk);
69
+ })());
70
+ }
71
+ // Observed now so a failure after the tool throws is not an unhandled rejection; settle still sees it.
72
+ track(promise) {
73
+ promise.catch(() => { });
74
+ this.pending.push(promise);
75
+ }
76
+ /** Waits for merges and live writes, including any started while waiting; a failed one fails the call. */
77
+ async settle() {
78
+ while (this.pending.length > 0) {
79
+ const batch = this.pending;
80
+ this.pending = [];
81
+ await Promise.all(batch);
82
+ }
83
+ }
84
+ }
8
85
  /**
9
86
  * Wraps each tool's `execute` so that, inside a workflow, every tool call runs as a durable DBOS step named
10
87
  * `<tool>.<toolCallId>` and replays from its checkpoint on recovery; outside a workflow tools run unchanged.
11
88
  * Retries are off by default (the AI SDK never retries tools); opt in per tool with `retriesAllowed`.
12
89
  */
13
90
  function durableTools(tools, options = {}) {
14
- const { tools: perTool, durableStream, ...defaults } = options;
91
+ const { tools: perTool, durableStream, writer, ...defaults } = options;
92
+ const live = liveWriter(writer);
15
93
  const durable = {};
16
94
  for (const [name, definition] of Object.entries(tools)) {
17
95
  const override = perTool?.[name];
@@ -21,11 +99,18 @@ function durableTools(tools, options = {}) {
21
99
  durable[name] = durableStream ? bindAgentTool(durableStream) : definition;
22
100
  continue;
23
101
  }
24
- if (typeof definition.execute !== 'function' || override === false) {
102
+ if (typeof definition.execute !== 'function') {
25
103
  durable[name] = definition;
26
104
  continue;
27
105
  }
28
106
  const execute = definition.execute;
107
+ if (override === false) {
108
+ durable[name] = {
109
+ ...definition,
110
+ execute: (input, execOptions) => runWithWriter(live, () => execute(input, execOptions)),
111
+ };
112
+ continue;
113
+ }
29
114
  const merged = { ...defaults, ...override };
30
115
  // Default classification (aborts and provider-declared non-retryable errors are terminal), but retries stay opt-in.
31
116
  const stepConfig = { ...(0, internal_1.withErrorClassification)(merged), retriesAllowed: merged.retriesAllowed ?? false };
@@ -35,7 +120,7 @@ function durableTools(tools, options = {}) {
35
120
  execute: (input, execOptions) => {
36
121
  (0, internal_1.assertNotInTransaction)(name);
37
122
  if (!(0, internal_1.isInWorkflowFunction)())
38
- return execute(input, execOptions);
123
+ return runWithWriter(live, () => execute(input, execOptions));
39
124
  const signal = execOptions.abortSignal;
40
125
  // An aborted call is done whatever the failure looks like; a retry would re-run a cancelled side effect.
41
126
  const callConfig = {
@@ -44,29 +129,49 @@ function durableTools(tools, options = {}) {
44
129
  };
45
130
  // The tool call id comes from the checkpointed model result, so a reordered parallel step fails replay instead of swapping results.
46
131
  return (0, internal_1.runDurableStep)(`${prefix}.${execOptions.toolCallId}`, async () => {
47
- // A timed-out attempt is abandoned by DBOS but keeps running; forward its signal so the tool stops too.
48
- const timeoutSignal = dbos_sdk_1.DBOS.stepStatus?.timeoutSignal;
49
- const abortSignal = timeoutSignal && signal ? AbortSignal.any([signal, timeoutSignal]) : (timeoutSignal ?? signal);
132
+ // A timed-out attempt is abandoned by DBOS but keeps running, and a cancelled workflow's tool should stop: forward both signals.
133
+ const cancelSignal = (0, internal_1.stepCancelSignal)();
134
+ const abortSignal = (0, internal_1.anySignal)(signal, dbos_sdk_1.DBOS.stepStatus?.timeoutSignal, cancelSignal);
135
+ const stepWriter = new StepWriter(writer, durableStream);
136
+ const record = async (outcome, chunks) => {
137
+ if (!durableStream)
138
+ return;
139
+ const timeout = await (0, internal_1.timedOutOutcome)(callConfig.shouldRetry);
140
+ if (timeout === null)
141
+ return;
142
+ await (0, durable_stream_1.writeToolRecord)(durableStream, execOptions.toolCallId, timeout ?? outcome, timeout ? [] : chunks);
143
+ };
50
144
  let output;
51
145
  try {
52
- output = await execute(input, abortSignal === signal ? execOptions : { ...execOptions, abortSignal });
53
- // A streaming execute can't checkpoint mid-flight; drain it and record the final value (the last yield).
54
- if ((0, internal_1.isAsyncIterable)(output)) {
146
+ output = await currentWriter.run(stepWriter, async () => {
147
+ const value = await execute(input, abortSignal === signal ? execOptions : { ...execOptions, abortSignal });
148
+ // A streaming execute can't checkpoint mid-flight; drain it and record the final value (the last yield).
149
+ if (!(0, internal_1.isAsyncIterable)(value))
150
+ return value;
55
151
  let last;
56
- for await (last of output)
152
+ for await (last of value)
57
153
  ;
58
- output = last;
59
- }
154
+ return last;
155
+ });
156
+ await stepWriter.settle();
60
157
  }
61
158
  catch (error) {
62
- if (durableStream)
63
- await (0, durable_stream_1.writeToolRecord)(durableStream, execOptions.toolCallId, { errorText: errorMessage(error) });
159
+ // A cancelled workflow's reader ends the turn with an abort; this call has no outcome of its own.
160
+ if (!cancelSignal?.aborted)
161
+ await record({ errorText: errorMessage(error) });
64
162
  throw error;
65
163
  }
66
- if (durableStream)
67
- await (0, durable_stream_1.writeToolRecord)(durableStream, execOptions.toolCallId, { output });
68
- return output;
69
- }, callConfig);
164
+ const chunks = stepWriter.chunks;
165
+ await record({ output }, chunks);
166
+ return chunks.length > 0 ? { __dbosToolChunks: 1, output, chunks } : output;
167
+ }, callConfig).then((result) => {
168
+ if (!isToolEnvelope(result))
169
+ return result;
170
+ // Runs on first execution and on replay alike, so the workflow's message gets the same parts either way.
171
+ for (const chunk of result.chunks)
172
+ writer?.write(chunk);
173
+ return result.output;
174
+ });
70
175
  },
71
176
  };
72
177
  }
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dbos-inc/vercel-ai",
3
- "version": "0.4.4",
3
+ "version": "0.5.4",
4
4
  "description": "DBOS durable execution integration for the Vercel AI SDK",
5
5
  "license": "MIT",
6
6
  "type": "commonjs",
@@ -44,14 +44,14 @@
44
44
  "agent"
45
45
  ],
46
46
  "peerDependencies": {
47
- "@dbos-inc/dbos-sdk": "^4.21.0 || ^5.0.0",
47
+ "@dbos-inc/dbos-sdk": "^4.27.0 || ^5.0.0",
48
48
  "ai": "^7.0.0"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@ai-sdk/gateway": "^4.0.0",
52
52
  "@ai-sdk/provider": "^4.0.0",
53
53
  "@arethetypeswrong/cli": "^0.18.0",
54
- "@dbos-inc/dbos-sdk": "^5.0.2",
54
+ "@dbos-inc/dbos-sdk": "^5.2.11",
55
55
  "@types/node": "^24.0.0",
56
56
  "@types/pg": "^8.20.0",
57
57
  "ai": "^7.0.0",