@vercel/agent-runs 0.0.4 → 1.0.0-rc.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.
package/CHANGELOG.md CHANGED
@@ -1,10 +1,10 @@
1
- # @vercel/agent-runs 0.0.4
1
+ # @vercel/agent-runs 1.0.0-rc.1
2
2
 
3
- Released 2026-10-29 · [Compare with 0.0.3](https://github.com/vercel/eve/compare/%40vercel%2Fagent-runs%400.0.3...%40vercel%2Fagent-runs%400.0.4)
3
+ Released 2026-11-03 · [Compare with 1.0.0-rc.0](https://github.com/vercel/eve/compare/%40vercel%2Fagent-runs%401.0.0-rc.0...%40vercel%2Fagent-runs%401.0.0-rc.1)
4
4
 
5
5
  ## Bug Fixes
6
6
 
7
- - Release notes now list breaking changes first and use plain headings, one paragraph per change, and a single compare link.
8
- A `minor` changeset always appears under Breaking Changes, so breaking changes merged with an internal PR title are no longer left out. The 0.86.0 and 0.87.0 notes now include the two breaking changes they missed. ([#5588](https://github.com/vercel/eve/pull/5588))
7
+ - Fix durable agent traces keeping every finished turn that called tools in parallel: each one stayed in the session's serialized context, so step inputs grew with every turn.
8
+ A checkpoint this process had already written, read back through another execution context, was treated as another process's write and forked the turn's trace tree; the stale copy then overwrote the tool completions and the checkpoint was never deleted. A replaced tree now also stops persisting. ([#5835](https://github.com/vercel/eve/pull/5835))
9
9
 
10
- For an upgrade across multiple releases, review each version between the installed and target versions in the [target version's changelog](https://raw.githubusercontent.com/vercel/eve/refs/tags/%40vercel%2Fagent-runs%400.0.4/packages/tracing/CHANGELOG.md).
10
+ For an upgrade across multiple releases, review each version between the installed and target versions in the [target version's changelog](https://raw.githubusercontent.com/vercel/eve/refs/tags/%40vercel%2Fagent-runs%401.0.0-rc.1/packages/tracing/CHANGELOG.md).
@@ -1 +1 @@
1
- {"version":3,"file":"agent-run.d.ts","sourceRoot":"","sources":["../../src/agent-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-run.d.ts","sourceRoot":"","sources":["../../src/agent-run.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { traceSnapshot } from "./core/snapshot.js";
8
8
  import { operationHandle, wrappedOperation } from "./operations.js";
9
9
  const METADATA_ONLY = { emit: true, recordInputs: false, recordOutputs: false };
10
10
  const LIVE_TURNS = 1000;
11
+ const REVISIONS_PER_TURN = 10000;
11
12
  export function createAgentRun(input) {
12
13
  const telemetry = input.telemetry ?? otelTelemetry();
13
14
  const checkpointer = input.checkpointer;
@@ -38,7 +39,7 @@ export function createAgentRun(input) {
38
39
  let queue = Promise.resolve();
39
40
  return () => {
40
41
  const turn = entry();
41
- if (checkpointer === undefined || turn === undefined)
42
+ if (checkpointer === undefined || turn === undefined || turn.retired)
42
43
  return queue;
43
44
  turn.writes++;
44
45
  queue = queue.then(async () => {
@@ -51,6 +52,8 @@ export function createAgentRun(input) {
51
52
  const revision = randomUUID();
52
53
  await checkpointer.set(key, traceSnapshot({ ...turn.root.record(), revision }));
53
54
  turn.revision = revision;
55
+ if (turn.revisions.size < REVISIONS_PER_TURN)
56
+ turn.revisions.add(revision);
54
57
  }
55
58
  }
56
59
  catch (error) {
@@ -76,8 +79,11 @@ export function createAgentRun(input) {
76
79
  const ceiling = currentAgentHandoff()?.capture;
77
80
  capture = capture === undefined ? ceiling : intersectCapture(capture, ceiling);
78
81
  const saved = checkpointer === undefined ? undefined : await loadCheckpoint(key);
82
+ const savedRevision = saved?.revision;
79
83
  if (cached !== undefined &&
80
- (cached.writes > 0 || saved?.revision === cached.revision)) {
84
+ (cached.writes > 0 ||
85
+ savedRevision === cached.revision ||
86
+ (savedRevision !== undefined && cached.revisions.has(savedRevision)))) {
81
87
  if (context !== undefined)
82
88
  cached.root.useContext(context);
83
89
  // A re-entry may decline content the cached turn was allowed to record.
@@ -85,13 +91,24 @@ export function createAgentRun(input) {
85
91
  cached.root.narrow(capture);
86
92
  return cached;
87
93
  }
94
+ // Another process wrote this checkpoint, so it replaces the cached tree.
95
+ // Callers may still hold the cached tree's operations; keep them from
96
+ // persisting their older view over the newer checkpoint.
97
+ if (cached !== undefined)
98
+ cached.retired = true;
88
99
  let entry;
89
100
  const onChange = persistence(key, () => entry);
90
101
  const restored = saved === undefined ? undefined : await scopes.restore(saved, { capture, context, onChange });
91
102
  const root = restored ?? (await open?.(onChange));
92
103
  if (root === undefined)
93
104
  return undefined;
94
- entry = { root, revision: saved?.revision, writes: 0 };
105
+ entry = {
106
+ root,
107
+ revision: savedRevision,
108
+ revisions: new Set(savedRevision === undefined ? [] : [savedRevision]),
109
+ retired: false,
110
+ writes: 0,
111
+ };
95
112
  if (restored === undefined)
96
113
  await onChange();
97
114
  return entry;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../src/agent-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../src/agent-run.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vercel/agent-runs",
3
- "version": "0.0.4",
3
+ "version": "1.0.0-rc.1",
4
4
  "private": false,
5
5
  "description": "Framework-neutral agent run tracing with OpenTelemetry and durable checkpoints.",
6
6
  "license": "Apache-2.0",
package/src/agent-run.ts CHANGED
@@ -107,9 +107,20 @@ interface LiveTurn {
107
107
  readonly root: LiveOperation;
108
108
  /** Token of the last checkpoint this process wrote. */
109
109
  revision: string | undefined;
110
+ /**
111
+ * Every checkpoint token this tree wrote. A checkpoint store scoped to an
112
+ * execution context (eve keeps it in the serialized workflow context) can
113
+ * hand a concurrent hook an older checkpoint of this same tree; that is not
114
+ * another process's write and must not fork the tree.
115
+ */
116
+ readonly revisions: Set<string>;
117
+ /** Replaced by another process's checkpoint: the tree still records spans but no longer persists. */
118
+ retired: boolean;
110
119
  writes: number;
111
120
  }
112
121
 
122
+ const REVISIONS_PER_TURN = 10000;
123
+
113
124
  export function createAgentRun(input: AgentRunOptions): AgentRun {
114
125
  const telemetry = input.telemetry ?? otelTelemetry();
115
126
  const checkpointer = input.checkpointer;
@@ -142,7 +153,7 @@ export function createAgentRun(input: AgentRunOptions): AgentRun {
142
153
  let queue = Promise.resolve();
143
154
  return () => {
144
155
  const turn = entry();
145
- if (checkpointer === undefined || turn === undefined) return queue;
156
+ if (checkpointer === undefined || turn === undefined || turn.retired) return queue;
146
157
  turn.writes++;
147
158
  queue = queue.then(async () => {
148
159
  try {
@@ -153,6 +164,7 @@ export function createAgentRun(input: AgentRunOptions): AgentRun {
153
164
  const revision = randomUUID();
154
165
  await checkpointer.set(key, traceSnapshot({ ...turn.root.record(), revision }));
155
166
  turn.revision = revision;
167
+ if (turn.revisions.size < REVISIONS_PER_TURN) turn.revisions.add(revision);
156
168
  }
157
169
  } catch (error) {
158
170
  report(error, { phase: "checkpoint", operation: "activation" });
@@ -183,22 +195,35 @@ export function createAgentRun(input: AgentRunOptions): AgentRun {
183
195
  const ceiling = currentAgentHandoff()?.capture;
184
196
  capture = capture === undefined ? ceiling : intersectCapture(capture, ceiling);
185
197
  const saved = checkpointer === undefined ? undefined : await loadCheckpoint(key);
198
+ const savedRevision = (saved as ScopeRecord | undefined)?.revision;
186
199
  if (
187
200
  cached !== undefined &&
188
- (cached.writes > 0 || (saved as ScopeRecord | undefined)?.revision === cached.revision)
201
+ (cached.writes > 0 ||
202
+ savedRevision === cached.revision ||
203
+ (savedRevision !== undefined && cached.revisions.has(savedRevision)))
189
204
  ) {
190
205
  if (context !== undefined) cached.root.useContext(context);
191
206
  // A re-entry may decline content the cached turn was allowed to record.
192
207
  if (capture !== undefined) cached.root.narrow(capture);
193
208
  return cached;
194
209
  }
210
+ // Another process wrote this checkpoint, so it replaces the cached tree.
211
+ // Callers may still hold the cached tree's operations; keep them from
212
+ // persisting their older view over the newer checkpoint.
213
+ if (cached !== undefined) cached.retired = true;
195
214
  let entry: LiveTurn | undefined;
196
215
  const onChange = persistence(key, () => entry);
197
216
  const restored =
198
217
  saved === undefined ? undefined : await scopes.restore(saved, { capture, context, onChange });
199
218
  const root = restored ?? (await open?.(onChange));
200
219
  if (root === undefined) return undefined;
201
- entry = { root, revision: (saved as ScopeRecord | undefined)?.revision, writes: 0 };
220
+ entry = {
221
+ root,
222
+ revision: savedRevision,
223
+ revisions: new Set(savedRevision === undefined ? [] : [savedRevision]),
224
+ retired: false,
225
+ writes: 0,
226
+ };
202
227
  if (restored === undefined) await onChange();
203
228
  return entry;
204
229
  }