Requested by: @JPeer264
Merge target: master
Quick links:
Assign the accepted label to this issue to approve the release.
Targets
Checked targets will be skipped (either already published or user-requested skip). Uncheck to retry a target.
📋 Changelog
Important Changes
-
feat(browser): Add View Hierarchy integration (#14981)
A new viewHierarchyIntegration captures the DOM structure when an error occurs, providing a snapshot of the page state for debugging. Enable it in your Sentry configuration:
import * as Sentry from '@sentry/browser';
Sentry.init({
dsn: '__DSN__',
integrations: [Sentry.viewHierarchyIntegration()],
});
-
feat(cloudflare): Split alarms into multiple traces and link them (#19373)
Durable Object alarms now create separate traces for each alarm invocation, with proper linking between related alarms for better observability.
-
feat(cloudflare): Enable RPC trace propagation with enableRpcTracePropagation (#19991, #20345)
A new enableRpcTracePropagation option enables automatic trace propagation for Cloudflare RPC calls via .fetch(), ensuring distributed traces flow correctly across service bindings.
-
feat(core): Add enableTruncation option to AI integrations (#20167, #20181, #20182, #20183, #20184)
All AI integrations (OpenAI, Anthropic, Google GenAI, LangChain, LangGraph) now support an enableTruncation option to control whether large AI inputs/outputs are truncated.
-
feat(opentelemetry): Vendor AsyncLocalStorageContextManager (#20243)
The OpenTelemetry context manager is now vendored internally, reducing external dependencies and ensuring consistent behavior across environments.
Other Changes
- feat(core): Export a reusable function to add tracing headers (#20076)
- feat(core): Expose
rewriteSources top level option (#20142)
- feat(deps): bump defu from 6.1.4 to 6.1.6 (#20104)
- feat(node-native): Add support for V8 v14 (Node v25+) (#20125)
- feat(node): Include global scope for
eventLoopBlockIntegration (#20108)
- fix(core, node): Support loading Express options lazily (#20211)
- fix(core): Set
conversation_id only on gen_ai spans (#20274)
- fix(core): Use
ai.operationId for Vercel AI V6 operation name mapping (#20285)
- fix(deno): Avoid inferring invalid span op from Deno tracer (#20128)
- fix(deno): Handle
reader.closed rejection from releaseLock() in streaming (#20187)
- fix(nextjs): Preserve directive prologues in turbopack loaders (#20103)
- fix(nextjs): Skip custom browser tracing setup for bot user agents (#20263)
- fix(opentelemetry): Use WeakRef for context stored on scope to prevent memory leak (#20328)
- fix(replay): Use live click attributes in breadcrumbs (#20262)
Internal Changes
- chore: Add PR review reminder workflow (#20175)
- chore: Fix lint warnings (#20250)
- chore(bugbot): Add rules to flag test-flake-provoking patterns (#20192)
- chore(ci): Bump actions/cache to v5 and actions/download-artifact to v7 (#20249)
- chore(ci): Bump dorny/paths-filter from v3.0.1 to v4.0.1 (#20251)
- chore(ci): Remove codecov steps from jobs that produce no coverage/JUnit data (#20244)
- chore(ci): Remove craft changelog preview (#20271)
- chore(ci): Remove node-overhead GitHub Action (#20246)
- chore(ci): Replace pr-labels-action with native GitHub expressions (#20252)
- chore(ci): Skip flaky issue creation for optional tests (#20288)
- chore(deps-dev): Bump @sveltejs/kit from 2.53.3 to 2.57.1 (#20216)
- chore(deps-dev): Bump vite from 7.2.0 to 7.3.2 in /dev-packages/e2e-tests/test-applications/tanstackstart-react (#20107)
- chore(deps): Bump axios from 1.13.5 to 1.15.0 (#20180)
- chore(deps): Bump axios from 1.13.5 to 1.15.0 in /dev-packages/e2e-tests/test-applications/nestjs-basic (#20179)
- chore(deps): Bump hono from 4.12.7 to 4.12.12 (#20118)
- chore(deps): Bump hono from 4.12.7 to 4.12.12 in /dev-packages/e2e-tests/test-applications/cloudflare-hono (#20119)
- chore(deps): Bump next from 16.1.7 to 16.2.3 in nextjs-16-cf-workers (#20289)
- chore(size-limit): Bump failing size limit scenario (#20186)
- ci: Add automatic flaky test detector (#18684)
- ci: Extract test names for flaky test issues (#20298)
- ci: Remove Docker container for Verdaccio package publishing (#20329)
- fix(ci): Prevent command injection in ci-metadata workflow (#19899)
- fix(e2e-tests): Remove flaky navigation breadcrumb assertions from parameterized-routes tests (#20202)
- fix(e2e): Add op check to waitForTransaction in React Router e2e tests (#20193)
- fix(node-integration-tests): Fix flaky kafkajs test race condition (#20189)
- ref(core): Add registry in Vercel ai integration (#20098)
- ref(core): Automatically disable truncation when span streaming is enabled in Anthropic AI integration (#20228)
- ref(core): Automatically disable truncation when span streaming is enabled in Google GenAI integration (#20229)
- ref(core): Automatically disable truncation when span streaming is enabled in LangChain integration (#20230)
- ref(core): Automatically disable truncation when span streaming is enabled in LangGraph integration (#20231)
- ref(core): Automatically disable truncation when span streaming is enabled in OpenAI integration (#20227)
- ref(core): Automatically disable truncation when span streaming is enabled in Vercel AI integration (#20232)
- ref(core): Merge embeddings operations constants (#20095)
- ref(core): Remove unused constants from vercel-ai-attributes.ts (#20096)
- ref(nextjs): Refactor
findInjectionIndexAfterDirectives for better readability (#20310)
- ref(opentelemetry): Replace
@opentelemetry/resources with inline getSentryResource() (#20327)
- test: Fix flaky ANR test by increasing blocking duration (#20239)
- test(bun): Add bun integration test folder (#20286)
- test(cloudflare): Skip flaky durableobject-spans test (#20282)
- test(openai): Use multi-message scenario in no-truncation test (#20194)
- test(react): Remove duplicated test mock (#20200)
- tests(ai): Fix streaming+truncation integration tests across AI integrations (#20326)
Requested by: @JPeer264
Merge target: master
Quick links:
Assign the accepted label to this issue to approve the release.
Targets
Checked targets will be skipped (either already published or user-requested skip). Uncheck to retry a target.
📋 Changelog
Important Changes
feat(browser): Add View Hierarchy integration (#14981)
A new
viewHierarchyIntegrationcaptures the DOM structure when an error occurs, providing a snapshot of the page state for debugging. Enable it in your Sentry configuration:feat(cloudflare): Split alarms into multiple traces and link them (#19373)
Durable Object alarms now create separate traces for each alarm invocation, with proper linking between related alarms for better observability.
feat(cloudflare): Enable RPC trace propagation with
enableRpcTracePropagation(#19991, #20345)A new
enableRpcTracePropagationoption enables automatic trace propagation for Cloudflare RPC calls via.fetch(), ensuring distributed traces flow correctly across service bindings.feat(core): Add
enableTruncationoption to AI integrations (#20167, #20181, #20182, #20183, #20184)All AI integrations (OpenAI, Anthropic, Google GenAI, LangChain, LangGraph) now support an
enableTruncationoption to control whether large AI inputs/outputs are truncated.feat(opentelemetry): Vendor
AsyncLocalStorageContextManager(#20243)The OpenTelemetry context manager is now vendored internally, reducing external dependencies and ensuring consistent behavior across environments.
Other Changes
rewriteSourcestop level option (#20142)eventLoopBlockIntegration(#20108)conversation_idonly ongen_aispans (#20274)ai.operationIdfor Vercel AI V6 operation name mapping (#20285)reader.closedrejection fromreleaseLock()in streaming (#20187)Internal Changes
findInjectionIndexAfterDirectivesfor better readability (#20310)@opentelemetry/resourceswith inlinegetSentryResource()(#20327)