Skip to content

fix(v10/cloudflare): auto-instrument a re-exported default export #63465

fix(v10/cloudflare): auto-instrument a re-exported default export

fix(v10/cloudflare): auto-instrument a re-exported default export #63465

Re-run triggered October 25, 2026 21:31
Status Failure
Total duration 13m 32s
Artifacts –

build.yml

on: pull_request
Get CI Metadata  /  Get Metadata
8s
Get CI Metadata / Get Metadata
Check lockfile
Check lockfile
Check file formatting
44s
Check file formatting
Check PR branches
4s
Check PR branches
Build Lambda layer
Build Lambda layer
Matrix: job_bundler_plugin_integration_tests
Matrix: job_node_core_integration_tests
Matrix: job_node_integration_tests
Matrix: job_node_unit_tests
Lint
1m 31s
Lint
Circular Dependency Check
1m 50s
Circular Dependency Check
Browser Unit Tests
43s
Browser Unit Tests
Bun Unit Tests
Bun Unit Tests
Deno Unit Tests
Deno Unit Tests
Node v18.0.0 Compatibility Check
Node v18.0.0 Compatibility Check
Cloudflare Integration Tests
6m 18s
Cloudflare Integration Tests
Bun Integration Tests
1m 1s
Bun Integration Tests
Deno Integration Tests
Deno Integration Tests
Check for faulty .d.ts files
38s
Check for faulty .d.ts files
Matrix: job_browser_loader_tests
Matrix: job_browser_playwright_tests
Matrix: job_optional_e2e_tests
Upload Artifacts
Upload Artifacts
Matrix: job_e2e_tests
All required jobs passed or were skipped
5s
All required jobs passed or were skipped
Fit to window
Zoom out
Zoom in

Annotations

61 errors and 2 notices
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates streamText spans with the model call parented to invoke_agent: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L577
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:577:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:572:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > parents concurrent streamText calls that share one model instance correctly: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L533
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:533:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:525:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > parents concurrent calls that share one model instance correctly: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L482
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:482:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:477:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates spans for ToolLoopAgent with tool calls: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L419
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:419:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:414:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai related spans: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L377
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:377:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:372:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > captures error in tool: dev-packages/node-integration-tests/utils/runner/createRunner.ts#L373
Error: Expected envelope item type 'span' but got 'event'. Item: [{"type":"event"},{"exception":{"values":[{"type":"Error","value":"Error in tool","stacktrace":{"frames":[{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf1ar_m9vjo1/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"generateText","lineno":4647,"colno":12,"in_app":false,"pre_context":[" callbacks: ["," onStart,"," globalTelemetry.onStart"," ]"," });"," const tracer = getTracer(telemetry);"," try {"],"context_line":" return await recordSpan({","post_context":[" name: \"ai.generateText\","," attributes: selectTelemetryAttributes({"," telemetry,"," attributes: {"," ...assembleOperationName({"," operationId: \"ai.generateText\","," telemetry"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf1ar_m9vjo1/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, error);"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf1ar_m9vjo1/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"fn","lineno":5057,"colno":20,"in_app":false,"pre_context":[" clientToolCalls = stepToolCalls.filter("," (toolCall) => !toolCall.providerExecuted"," );"," if (stepToolSet != null && isToolExecutionAllowedFinishReason("," currentModelResponse.finishReason.unified"," )) {"," clientToolOutputs.push("],"context_line":" ...await executeTools({","post_context":[" toolCalls: clientToolCalls.filter("," (toolCall) => !toolCall.invalid && toolApprovalRequests[toolCall.toolCallId] == null"," ),"," tools: stepToolSet,"," tracer,"," telemetry,"," messages: stepInputMessages,"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf1ar_m9vjo1/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"executeTools","lineno":5282,"colno":23,"in_app":false,"pre_context":[" abortSignal,"," experimental_context,"," stepNumber,"," model,"," onToolCallStart,"," onToolCallFinish","}) {"],"context_line":" const toolOutputs = await Promise.all(","post_context":[" toolCalls.map("," async (toolCall) => executeToolCall({"," toolCall,"," tools,"," tracer,"," telemetry,"," messages,"]},{"filename":"index 0","module":"index 0","function":"Promise.all","in_app":false},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf1ar_m9vjo1/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, erro
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans when dataCollection.genAi has inputs and outputs disabled: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L179
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:179:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:174:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [cjs]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:84:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [esm]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:68:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/hono/test.ts > should handle transactions for all route/method/path combinations [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L42
AssertionError: expected { contexts: { …(9) }, …(15) } to match object { event_id: Any<String>, …(5) } (114 matching properties omitted from actual) - Expected + Received { "event_id": Any<String>, - "spans": ArrayContaining [ - ObjectContaining { - "data": ObjectContaining { + "spans": [ + { + "data": { "hono.name": "sentryRequestMiddleware", "hono.type": "middleware", + "sentry.op": "middleware.hono", + "sentry.origin": "auto.http.otel.hono", }, "description": "sentryRequestMiddleware", "op": "middleware.hono", "origin": "auto.http.otel.hono", + "parent_span_id": "b1afafbe2fae8aae", + "span_id": "bd3ccb1eea4c1d68", + "start_timestamp": 1792964200.735932, + "status": "ok", + "timestamp": 1792964200.7363565, + "trace_id": "0d0b6a595a7443868cf4fd274e589ca6", }, - ObjectContaining { - "data": ObjectContaining { + { + "data": { "hono.name": "sentryErrorMiddleware", "hono.type": "middleware", + "sentry.op": "middleware.hono", + "sentry.origin": "auto.http.otel.hono", }, "description": "sentryErrorMiddleware", "op": "middleware.hono", "origin": "auto.http.otel.hono", + "parent_span_id": "bd3ccb1eea4c1d68", + "span_id": "82c1e1209ab4fb94", + "start_timestamp": 1792964200.7360005, + "status": "ok", + "timestamp": 1792964200.7363503, + "trace_id": "0d0b6a595a7443868cf4fd274e589ca6", }, - ObjectContaining { - "data": ObjectContaining { + { + "data": { "hono.name": "global", "hono.type": "middleware", + "sentry.op": "middleware.hono", + "sentry.origin": "auto.http.otel.hono", }, "description": "global", "op": "middleware.hono", "origin": "auto.http.otel.hono", + "parent_span_id": "82c1e1209ab4fb94", + "span_id": "a331466ecdaccc70", + "start_timestamp": 1792964200.7360246, + "status": "ok", + "timestamp": 1792964200.7363439, + "trace_id": "0d0b6a595a7443868cf4fd274e589ca6", }, - ObjectContaining { - "data": ObjectContaining { + { + "data": { "hono.name": "base", "hono.type": "middleware", + "sentry.op": "middleware.hono", + "sentry.origin": "auto.http.otel.hono", }, "description": "base", "op": "middleware.hono", "origin": "auto.http.otel.hono", + "parent_span_id": "a331466ecdaccc70", + "span_id": "929c7ceeccac333d", + "start_timestamp": 1792964200.7361276, + "status": "ok", + "timestamp": 1792964200.736338, + "trace_id": "0d0b6a595a7443868cf4fd274e589ca6", }, - ObjectContaining { - "data": ObjectContaining { + { + "data": { "hono.name": "anonymous", "hono.type": "middleware", + "sentry.op": "middleware.hono", + "sentry.origin": "auto.http.otel.hono", }, "description": "anonymous", "op": "middleware.hono", "origin": "auto.http.otel.hono", + "parent_span_id": "929c7ceeccac333d", + "span_id": "9844bb9dee1b025d", + "start_timestamp": 1792964200.7361658, + "status": "ok", + "timestamp": 1792964200.7363293, + "trace_id": "0d0b6a595a7443868cf4fd274e589ca6", }, - ObjectContaining { - "data": ObjectContaining { - "hono.name": "/async/all/middleware", + { + "data": { + "hono.name": "/async/middleware", "hono.type": "request_handler", + "sentry.op": "request_handler.hono", + "sentry.origin": "auto.http.otel.hono", }, - "description": "/async/all/middleware", + "description": "/async/middleware", "op": "request_handler.hono", "origin": "auto.http.otel.hono", + "parent_span_id": "9844bb9dee1b025d", + "span_id": "a32f01323c640d38", + "start_timestamp": 1792964200.7361932, +
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > captures error in tool: dev-packages/node-integration-tests/utils/runner/createRunner.ts#L373
Error: Expected envelope item type 'span' but got 'event'. Item: [{"type":"event"},{"exception":{"values":[{"type":"Error","value":"Error in tool","stacktrace":{"frames":[{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocey74_q8q6ye/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"generateText","lineno":4647,"colno":12,"in_app":false,"pre_context":[" callbacks: ["," onStart,"," globalTelemetry.onStart"," ]"," });"," const tracer = getTracer(telemetry);"," try {"],"context_line":" return await recordSpan({","post_context":[" name: \"ai.generateText\","," attributes: selectTelemetryAttributes({"," telemetry,"," attributes: {"," ...assembleOperationName({"," operationId: \"ai.generateText\","," telemetry"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocey74_q8q6ye/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, error);"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocey74_q8q6ye/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"fn","lineno":5057,"colno":20,"in_app":false,"pre_context":[" clientToolCalls = stepToolCalls.filter("," (toolCall) => !toolCall.providerExecuted"," );"," if (stepToolSet != null && isToolExecutionAllowedFinishReason("," currentModelResponse.finishReason.unified"," )) {"," clientToolOutputs.push("],"context_line":" ...await executeTools({","post_context":[" toolCalls: clientToolCalls.filter("," (toolCall) => !toolCall.invalid && toolApprovalRequests[toolCall.toolCallId] == null"," ),"," tools: stepToolSet,"," tracer,"," telemetry,"," messages: stepInputMessages,"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocey74_q8q6ye/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"executeTools","lineno":5282,"colno":23,"in_app":false,"pre_context":[" abortSignal,"," experimental_context,"," stepNumber,"," model,"," onToolCallStart,"," onToolCallFinish","}) {"],"context_line":" const toolOutputs = await Promise.all(","post_context":[" toolCalls.map("," async (toolCall) => executeToolCall({"," toolCall,"," tools,"," tracer,"," telemetry,"," messages,"]},{"filename":"index 0","module":"index 0","function":"Promise.all","in_app":false},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocey74_q8q6ye/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, erro
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans when dataCollection.genAi has inputs and outputs disabled: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L179
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:179:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:174:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [cjs]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:84:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [esm]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:68:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13677219840, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.memory": { + "type": "integer", + "value": 129019904, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:00.502Z", }, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "name": "invoke_agent", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:42.909Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 9V45 96-Core Processor", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.free_memory": { + "type": "integer", + "value": 13677219840, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.memory_size": { + "type": "integer", + "value": 16766410752, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.processor_frequency": { + "type": "integer", + "value": 0, }, + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "name": "generate_content mock-model-id", - "status": "ok", + "process.runtime.engine.version": { + "type": "string", + "value": "13.6.233.17-node.53", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "sentry.op": { + "type": "string", + "value": "function", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.origin": { + "type": "string", + "value": "manual", }, - "gen_ai.tool.type": ObjectContaining { - "value": "function", + "sentry.release": { + "type": "string", + "value": "1.0", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.sample_rate": { + "type": "integer", + "value": 1, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13648363520, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.memory": { + "type": "integer", + "value": 172122112, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:59.886Z", }, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "name": "invoke_agent", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:42.917Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 9V45 96-Core Processor", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.free_memory": { + "type": "integer", + "value": 13648363520, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.memory_size": { + "type": "integer", + "value": 16766410752, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.processor_frequency": { + "type": "integer", + "value": 0, }, + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "name": "generate_content mock-model-id", - "status": "ok", + "process.runtime.engine.version": { + "type": "string", + "value": "13.6.233.17-node.53", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "sentry.op": { + "type": "string", + "value": "function", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.origin": { + "type": "string", + "value": "manual", }, - "gen_ai.tool.type": ObjectContaining { - "value": "function", + "sentry.release": { + "type": "string", + "value": "1.0", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.sample_rate": { + "type": "integer", + "value": 1, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13690413056, }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "app.memory": { + "type": "integer", + "value": 128806912, }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:59.438Z", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, - }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"Second span here!\"}],\"finish_reason\":\"stop\"}]", -
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13737103360, }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "app.memory": { + "type": "integer", + "value": 173473792, }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:58.623Z", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, - }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"Second span here!\"}],\"finish_reason\":\"stop\"}]", -
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13810348032, }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "app.memory": { + "type": "integer", + "value": 128770048, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:58.216Z", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.boot_time": { +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13775892480, }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "app.memory": { + "type": "integer", + "value": 172916736, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:57.565Z", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.boot_time": { +
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > captures error in tool: dev-packages/node-integration-tests/utils/runner/createRunner.ts#L373
Error: Expected envelope item type 'span' but got 'event'. Item: [{"type":"event"},{"exception":{"values":[{"type":"Error","value":"Error in tool","stacktrace":{"frames":[{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocezzy_n0ftvl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"generateText","lineno":4647,"colno":12,"in_app":false,"pre_context":[" callbacks: ["," onStart,"," globalTelemetry.onStart"," ]"," });"," const tracer = getTracer(telemetry);"," try {"],"context_line":" return await recordSpan({","post_context":[" name: \"ai.generateText\","," attributes: selectTelemetryAttributes({"," telemetry,"," attributes: {"," ...assembleOperationName({"," operationId: \"ai.generateText\","," telemetry"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocezzy_n0ftvl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, error);"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocezzy_n0ftvl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"fn","lineno":5057,"colno":20,"in_app":false,"pre_context":[" clientToolCalls = stepToolCalls.filter("," (toolCall) => !toolCall.providerExecuted"," );"," if (stepToolSet != null && isToolExecutionAllowedFinishReason("," currentModelResponse.finishReason.unified"," )) {"," clientToolOutputs.push("],"context_line":" ...await executeTools({","post_context":[" toolCalls: clientToolCalls.filter("," (toolCall) => !toolCall.invalid && toolApprovalRequests[toolCall.toolCallId] == null"," ),"," tools: stepToolSet,"," tracer,"," telemetry,"," messages: stepInputMessages,"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocezzy_n0ftvl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"executeTools","lineno":5282,"colno":23,"in_app":false,"pre_context":[" abortSignal,"," experimental_context,"," stepNumber,"," model,"," onToolCallStart,"," onToolCallFinish","}) {"],"context_line":" const toolOutputs = await Promise.all(","post_context":[" toolCalls.map("," async (toolCall) => executeToolCall({"," toolCall,"," tools,"," tracer,"," telemetry,"," messages,"]},{"filename":"index 0","module":"index 0","function":"Promise.all","in_app":false},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocezzy_n0ftvl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, erro
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans when dataCollection.genAi has inputs and outputs disabled: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L179
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:179:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:174:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [cjs]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:84:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [esm]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:68:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14188957696, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.memory": { + "type": "integer", + "value": 101863424, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:57.888Z", }, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "name": "invoke_agent", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:28:35.277Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 9V45 96-Core Processor", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.free_memory": { + "type": "integer", + "value": 14188957696, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.memory_size": { + "type": "integer", + "value": 16766414848, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.processor_frequency": { + "type": "integer", + "value": 0, }, + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "name": "generate_content mock-model-id", - "status": "ok", + "process.runtime.engine.version": { + "type": "string", + "value": "11.3.244.8-node.38", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "sentry.op": { + "type": "string", + "value": "function", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.origin": { + "type": "string", + "value": "manual", }, - "gen_ai.tool.type": ObjectContaining { - "value": "function", + "sentry.release": { + "type": "string", + "value": "1.0", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.sample_rate": { + "type": "integer", + "value": 1, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14210359296, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.memory": { + "type": "integer", + "value": 145510400, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:57.262Z", }, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "name": "invoke_agent", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:28:35.277Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 9V45 96-Core Processor", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.free_memory": { + "type": "integer", + "value": 14210359296, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.memory_size": { + "type": "integer", + "value": 16766414848, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.processor_frequency": { + "type": "integer", + "value": 0, + }, + "os.kernel_version": { + "type": "string", + "value": "6.17.0-1022-azure", }, + "os.name": { + "type": "string", + "value": "Ubuntu Linux", }, - "name": "generate_content mock-model-id", - "status": "ok", + "os.version": { + "type": "string", + "value": "24.04", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "process.runtime.engine.version": { + "type": "string", + "value": "11.3.244.8-node.38", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.tool.type": ObjectContaining { + "sentry.op": { + "type": "string", "value": "function", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.origin": { + "type": "string", + "value": "manual", + }, +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14236209152, }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "app.memory": { + "type": "integer", + "value": 101113856, }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:56.902Z", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, - }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"Second span here!\"}],\"finish_reason\":\"stop\"}]", -
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, - }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"Second span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_ag
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14259806208, }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "app.memory": { + "type": "integer", + "value": 101244928, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:55.939Z", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.boot_time": { +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14270005248, }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "app.memory": { + "type": "integer", + "value": 142888960, }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:33:55.255Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:28:35.276Z", }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 9V45 96-Core Processor", }, + "device.free_memory": { + "type": "integer", + "value": 14270005248, }, - "name": "invoke_agent", - "status": "ok", + "device.memory_size": { + "type": "integer", + "value": 16766414848, }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.processor_frequency": { + "type": "integer", + "value": 0, }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContain
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > captures error in tool: dev-packages/node-integration-tests/utils/runner/createRunner.ts#L373
Error: Expected envelope item type 'span' but got 'event'. Item: [{"type":"event"},{"exception":{"values":[{"type":"Error","value":"Error in tool","stacktrace":{"frames":[{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf3ew_ufvf83/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"generateText","lineno":4647,"colno":12,"in_app":false,"pre_context":[" callbacks: ["," onStart,"," globalTelemetry.onStart"," ]"," });"," const tracer = getTracer(telemetry);"," try {"],"context_line":" return await recordSpan({","post_context":[" name: \"ai.generateText\","," attributes: selectTelemetryAttributes({"," telemetry,"," attributes: {"," ...assembleOperationName({"," operationId: \"ai.generateText\","," telemetry"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf3ew_ufvf83/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, error);"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf3ew_ufvf83/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"fn","lineno":5057,"colno":20,"in_app":false,"pre_context":[" clientToolCalls = stepToolCalls.filter("," (toolCall) => !toolCall.providerExecuted"," );"," if (stepToolSet != null && isToolExecutionAllowedFinishReason("," currentModelResponse.finishReason.unified"," )) {"," clientToolOutputs.push("],"context_line":" ...await executeTools({","post_context":[" toolCalls: clientToolCalls.filter("," (toolCall) => !toolCall.invalid && toolApprovalRequests[toolCall.toolCallId] == null"," ),"," tools: stepToolSet,"," tracer,"," telemetry,"," messages: stepInputMessages,"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf3ew_ufvf83/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"executeTools","lineno":5282,"colno":23,"in_app":false,"pre_context":[" abortSignal,"," experimental_context,"," stepNumber,"," model,"," onToolCallStart,"," onToolCallFinish","}) {"],"context_line":" const toolOutputs = await Promise.all(","post_context":[" toolCalls.map("," async (toolCall) => executeToolCall({"," toolCall,"," tools,"," tracer,"," telemetry,"," messages,"]},{"filename":"index 0","module":"index 0","function":"Promise.all","in_app":false},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf3ew_ufvf83/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, erro
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans when dataCollection.genAi has inputs and outputs disabled: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L179
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:179:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:174:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [cjs]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:84:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [esm]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:68:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14012710912, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.memory": { + "type": "integer", + "value": 117006336, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:52.048Z", }, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "name": "invoke_agent", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:22.596Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.cpu_description": { + "type": "string", + "value": "INTEL(R) XEON(R) PLATINUM 8573C", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.free_memory": { + "type": "integer", + "value": 14012710912, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.memory_size": { + "type": "integer", + "value": 16765378560, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.processor_frequency": { + "type": "integer", + "value": 2300, }, + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "name": "generate_content mock-model-id", - "status": "ok", + "process.runtime.engine.version": { + "type": "string", + "value": "12.4.254.21-node.57", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "sentry.op": { + "type": "string", + "value": "function", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.origin": { + "type": "string", + "value": "manual", }, - "gen_ai.tool.type": ObjectContaining { - "value": "function", + "sentry.release": { + "type": "string", + "value": "1.0", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.sample_rate": { + "type": "integer", + "value": 1, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel",
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13998854144, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.memory": { + "type": "integer", + "value": 163774464, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:51.176Z", }, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "name": "invoke_agent", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:22.596Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.cpu_description": { + "type": "string", + "value": "INTEL(R) XEON(R) PLATINUM 8573C", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.free_memory": { + "type": "integer", + "value": 13998854144, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.memory_size": { + "type": "integer", + "value": 16765378560, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.processor_frequency": { + "type": "integer", + "value": 3101, + }, + "os.kernel_version": { + "type": "string", + "value": "6.17.0-1022-azure", }, + "os.name": { + "type": "string", + "value": "Ubuntu Linux", }, - "name": "generate_content mock-model-id", - "status": "ok", + "os.version": { + "type": "string", + "value": "24.04", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "process.runtime.engine.version": { + "type": "string", + "value": "12.4.254.21-node.57", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.tool.type": ObjectContaining { + "sentry.op": { + "type": "string", "value": "function", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.origin": { + "type": "string", + "value": "manual", + }, +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14040801280, }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "app.memory": { + "type": "integer", + "value": 116801536, }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:50.601Z", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, - }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"Second span here!\"}],\"finish_reason\":\"stop\"}]", -
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, - }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"Second span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_ag
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 14000758784, }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "app.memory": { + "type": "integer", + "value": 116752384, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:49.162Z", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.boot_time": { +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.free_memory": { + "type": "integer", + "value": 13902667776, }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "app.memory": { + "type": "integer", + "value": 159469568, }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:48.330Z", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:22.598Z", }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.cpu_description": { + "type": "string", + "value": "INTEL(R) XEON(R) PLATINUM 8573C", }, + "device.free_memory": { + "type": "integer", + "value": 13902667776, }, - "name": "invoke_agent", - "status": "ok", + "device.memory_size": { + "type": "integer", + "value": 16765378560, }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.processor_count": { + "type": "integer", + "value": 4, }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.processor_frequency": { + "type": "integer", + "value": 3100, }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectCont
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > captures error in tool: dev-packages/node-integration-tests/utils/runner/createRunner.ts#L373
Error: Expected envelope item type 'span' but got 'event'. Item: [{"type":"event"},{"exception":{"values":[{"type":"Error","value":"Error in tool","stacktrace":{"frames":[{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf33c_vxyqi2/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"generateText","lineno":4647,"colno":12,"in_app":false,"pre_context":[" callbacks: ["," onStart,"," globalTelemetry.onStart"," ]"," });"," const tracer = getTracer(telemetry);"," try {"],"context_line":" return await recordSpan({","post_context":[" name: \"ai.generateText\","," attributes: selectTelemetryAttributes({"," telemetry,"," attributes: {"," ...assembleOperationName({"," operationId: \"ai.generateText\","," telemetry"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf33c_vxyqi2/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, error);"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf33c_vxyqi2/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"fn","lineno":5057,"colno":20,"in_app":false,"pre_context":[" clientToolCalls = stepToolCalls.filter("," (toolCall) => !toolCall.providerExecuted"," );"," if (stepToolSet != null && isToolExecutionAllowedFinishReason("," currentModelResponse.finishReason.unified"," )) {"," clientToolOutputs.push("],"context_line":" ...await executeTools({","post_context":[" toolCalls: clientToolCalls.filter("," (toolCall) => !toolCall.invalid && toolApprovalRequests[toolCall.toolCallId] == null"," ),"," tools: stepToolSet,"," tracer,"," telemetry,"," messages: stepInputMessages,"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf33c_vxyqi2/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"executeTools","lineno":5282,"colno":23,"in_app":false,"pre_context":[" abortSignal,"," experimental_context,"," stepNumber,"," model,"," onToolCallStart,"," onToolCallFinish","}) {"],"context_line":" const toolOutputs = await Promise.all(","post_context":[" toolCalls.map("," async (toolCall) => executeToolCall({"," toolCall,"," tools,"," tracer,"," telemetry,"," messages,"]},{"filename":"index 0","module":"index 0","function":"Promise.all","in_app":false},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocf33c_vxyqi2/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, erro
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans when dataCollection.genAi has inputs and outputs disabled: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L179
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:179:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:174:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [cjs]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:84:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [esm]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:68:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.memory": { + "type": "integer", + "value": 103751680, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:57.811Z", }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "culture.locale": { + "type": "string", + "value": "en-US", }, + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "name": "invoke_agent", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:33.968Z", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 7763 64-Core Processor", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.free_memory": { + "type": "integer", + "value": 14162501632, }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.memory_size": { + "type": "integer", + "value": 16766414848, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_frequency": { + "type": "integer", + "value": 3240, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, + "process.runtime.engine.version": { + "type": "string", + "value": "10.2.154.26-node.39", }, - "name": "generate_content mock-model-id", - "status": "ok", + "sentry.environment": { + "type": "string", + "value": "production", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "sentry.op": { + "type": "string", + "value": "function", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "sentry.origin": { + "type": "string", + "value": "manual", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.release": { + "type": "string", + "value": "1.0", }, - "gen_ai.tool.type": ObjectContaining { - "value": "function", + "sentry.sample_rate": { + "type": "integer", + "value": 1, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.sdk.integrations": { + "type": "array", + "value": [ + "InboundFilters", + "FunctionToString", + "LinkedErrors", +
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > normalizes error status in streaming mode [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.memory": { + "type": "integer", + "value": 142921728, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:56.676Z", }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "culture.locale": { + "type": "string", + "value": "en-US", }, + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "name": "invoke_agent", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:33.966Z", }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 7763 64-Core Processor", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 15, + "device.free_memory": { + "type": "integer", + "value": 14157557760, }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 25, + "device.memory_size": { + "type": "integer", + "value": 16766414848, }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 40, + "device.processor_count": { + "type": "integer", + "value": 4, }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "device.processor_frequency": { + "type": "integer", + "value": 3242, }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "os.kernel_version": { + "type": "string", + "value": "6.17.0-1022-azure", }, + "os.name": { + "type": "string", + "value": "Ubuntu Linux", }, - "name": "generate_content mock-model-id", - "status": "ok", + "os.version": { + "type": "string", + "value": "24.04", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "execute_tool", + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "gen_ai.tool.call.id": ObjectContaining { - "value": "call-1", + "process.runtime.engine.version": { + "type": "string", + "value": "10.2.154.26-node.39", }, - "gen_ai.tool.name": ObjectContaining { - "value": "getWeather", + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.tool.type": ObjectContaining { + "sentry.op": { + "type": "string", "value": "function", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.execute_tool", + "sentry.origin": { + "type": "string", + "value": "manual", + }, + "sentry.release": { + "type": "string", + "value": "1.0", + }, + "se
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, - }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"Second span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_ag
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording enabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the first span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - "sentry.sdk_meta.gen_ai.input.messages.original_length": ObjectContaining { - "value": 1, - }, + "items": [ + { + "attributes": { + "app.memory": { + "type": "integer", + "value": 139165696, }, - "name": "invoke_agent", - "status": "ok", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:54.771Z", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": Any<String>, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.output.messages": ObjectContaining { - "value": "[{\"role\":\"assistant\",\"parts\":[{\"type\":\"text\",\"content\":\"First span here!\"}],\"finish_reason\":\"stop\"}]", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:33.972Z", }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 7763 64-Core Processor", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.input.messages": ObjectContaining { - "value": "[{\"role\":\"user\",\"content\":\"Where is the second span?\"}]", - }, - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.output.messages": ObjectContaining { -
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [cjs]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "items": [ + { + "attributes": { + "app.memory": { + "type": "integer", + "value": 102277120, }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:54.071Z", }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "culture.locale": { + "type": "string", + "value": "en-US", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:33.966Z", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 7763 64-Core Processor", }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.free_memory": { + "type": "integer", + "value": 14133469184, }, + "device.memory_size": { + "type": "integer", + "value": 16766414848, }, - "name": "invoke_agent", - "status": "ok", + "device.processor_count": { + "type": "integer", + "value": 4, }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", + "device.processor_frequency": { + "type": "integer", + "value": 3240, }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", + "process.runtime.engine.name": { + "type": "string", + "value": "v8", }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", + "process.runtime.engine.version": { + "type": "string", + "value": "10.2.154.26-node.39", }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "sentry.environment": { + "type": "string", + "value": "production", }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "sentry.op": { + "type": "string", + "value": "function", }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "sentry.origin": { + "type": "string", + "value": "manual", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", + "sentry.release": { + "type": "string", + "value": "1.0", }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "sentry.sample_rate": { + "type": "integer", + "value": 1, }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { -
suites/tracing/vercelai/span-streaming-v6/test.ts > Vercel AI integration (streaming, v6) > creates ai related spans in streaming mode with genAI recording disabled [esm]: dev-packages/node-integration-tests/utils/assertions.ts#L100
AssertionError: expected { version: 2, items: [ { …(8) } ] } to match object { items: ArrayContaining{…} } (1 matching property omitted from actual) - Expected + Received { - "items": ArrayContaining [ - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "invoke_agent", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "generate_content", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.response.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, - }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, - }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, - }, - "sentry.op": ObjectContaining { - "value": "gen_ai.generate_content", - }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", - }, - }, - "name": "generate_content mock-model-id", - "status": "ok", - }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", - }, - "gen_ai.request.model": ObjectContaining { - "value": "mock-model-id", - }, - "gen_ai.usage.input_tokens": ObjectContaining { - "value": 10, + "items": [ + { + "attributes": { + "app.memory": { + "type": "integer", + "value": 140308480, }, - "gen_ai.usage.output_tokens": ObjectContaining { - "value": 20, + "app.start_time": { + "type": "string", + "value": "2026-10-25T21:34:52.956Z", }, - "gen_ai.usage.total_tokens": ObjectContaining { - "value": 30, + "culture.locale": { + "type": "string", + "value": "en-US", }, - "sentry.op": ObjectContaining { - "value": "gen_ai.invoke_agent", + "culture.timezone": { + "type": "string", + "value": "UTC", }, - "sentry.origin": ObjectContaining { - "value": "auto.vercelai.otel", + "device.archs": { + "type": "array", + "value": [ + "x64", + ], }, + "device.boot_time": { + "type": "string", + "value": "2026-10-25T21:30:33.973Z", }, - "name": "invoke_agent", - "status": "ok", + "device.cpu_description": { + "type": "string", + "value": "AMD EPYC 7763 64-Core Processor", }, - ObjectContaining { - "attributes": ObjectContaining { - "gen_ai.operation.name": ObjectContaining { - "value": "invoke_agent", + "device.free_memory": { + "type": "integer", + "value": 14077231104, }, - "gen_ai.request.model": ObjectContaining { - "value": "mo
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > captures usage, tool calls and output across a multi-step streamText: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L638
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:638:31 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:631:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates streamText spans with the model call parented to invoke_agent: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L577
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:577:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:572:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > parents concurrent streamText calls that share one model instance correctly: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L533
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:533:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:525:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > parents concurrent calls that share one model instance correctly: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L482
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:482:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:477:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates spans for ToolLoopAgent with tool calls: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L419
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:419:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:414:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai related spans: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L377
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:377:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:372:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > captures error in tool: dev-packages/node-integration-tests/utils/runner/createRunner.ts#L373
Error: Expected envelope item type 'span' but got 'event'. Item: [{"type":"event"},{"exception":{"values":[{"type":"Error","value":"Error in tool","stacktrace":{"frames":[{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocimnx_7twkxl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"generateText","lineno":4647,"colno":12,"in_app":false,"pre_context":[" callbacks: ["," onStart,"," globalTelemetry.onStart"," ]"," });"," const tracer = getTracer(telemetry);"," try {"],"context_line":" return await recordSpan({","post_context":[" name: \"ai.generateText\","," attributes: selectTelemetryAttributes({"," telemetry,"," attributes: {"," ...assembleOperationName({"," operationId: \"ai.generateText\","," telemetry"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocimnx_7twkxl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, error);"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocimnx_7twkxl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"fn","lineno":5057,"colno":20,"in_app":false,"pre_context":[" clientToolCalls = stepToolCalls.filter("," (toolCall) => !toolCall.providerExecuted"," );"," if (stepToolSet != null && isToolExecutionAllowedFinishReason("," currentModelResponse.finishReason.unified"," )) {"," clientToolOutputs.push("],"context_line":" ...await executeTools({","post_context":[" toolCalls: clientToolCalls.filter("," (toolCall) => !toolCall.invalid && toolApprovalRequests[toolCall.toolCallId] == null"," ),"," tools: stepToolSet,"," tracer,"," telemetry,"," messages: stepInputMessages,"]},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocimnx_7twkxl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"executeTools","lineno":5282,"colno":23,"in_app":false,"pre_context":[" abortSignal,"," experimental_context,"," stepNumber,"," model,"," onToolCallStart,"," onToolCallFinish","}) {"],"context_line":" const toolOutputs = await Promise.all(","post_context":[" toolCalls.map("," async (toolCall) => executeToolCall({"," toolCall,"," tools,"," tracer,"," telemetry,"," messages,"]},{"filename":"index 0","module":"index 0","function":"Promise.all","in_app":false},{"filename":"/home/runner/work/sentry-javascript/sentry-javascript/dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/tmp_mvocimnx_7twkxl/node_modules/ai/dist/index.mjs","module":"ai.dist:index","function":"?","lineno":2458,"colno":24,"in_app":false,"pre_context":["}) {"," return tracer.startActiveSpan("," name23,"," { attributes: await attributes },"," async (span) => {"," const ctx = context.active();"," try {"],"context_line":" const result = await context.with(ctx, () => fn(span));","post_context":[" if (endWhenDone) {"," span.end();"," }"," return result;"," } catch (error) {"," try {"," recordErrorOnSpan(span, erro
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans when dataCollection.genAi has inputs and outputs disabled: dev-packages/node-integration-tests/suites/tracing/vercelai/v6_v7/test.ts#L179
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:179:7 ❯ createEsmTests utils/runner/createEsmAndCjsTests.ts:120:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:174:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [cjs]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:84:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
suites/tracing/vercelai/v6_v7/test.ts > Vercel AI integration (version 6) > creates ai spans for dataCollection defaults [esm]: dev-packages/node-integration-tests/utils/runner/createEsmAndCjsTests.ts#L427
Error: Test timed out in 15000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout". ❯ Object.apply utils/runner/createEsmAndCjsTests.ts:427:22 ❯ additionalDependencies.ai suites/tracing/vercelai/v6_v7/test.ts:55:7 ❯ createEsmAndCjsTests utils/runner/createEsmAndCjsTests.ts:68:3 ❯ suites/tracing/vercelai/v6_v7/test.ts:50:3
All required jobs passed or were skipped
Process completed with exit code 1.
🎭 Playwright Run Summary
11 passed (20.4s)
🎭 Playwright Run Summary
17 passed (54.9s)