Skip to content

feat(instrumentation): warn when Next.js is loaded before dd-trace#8901

Draft
BridgeAR wants to merge 2 commits into
masterfrom
BridgeAR/2026-06-12-next-late-load-warning
Draft

feat(instrumentation): warn when Next.js is loaded before dd-trace#8901
BridgeAR wants to merge 2 commits into
masterfrom
BridgeAR/2026-06-12-next-late-load-warning

Conversation

@BridgeAR

Copy link
Copy Markdown
Member

Summary

Initializing dd-trace after Next.js has already loaded — e.g. from Next's
instrumentation.ts register() hook, which runs once the server modules are
required — leaves the next integration silently disabled: the require hook
never sees next-server.js, the plugin never attaches, and tracer.use('next')
is a no-op with no diagnostic. ESM apps hit this more often, since a top-level
import does not guarantee dd-trace evaluates before the framework.

checkForRequiredModules already detects packages loaded before dd-trace, but
its call and its log sink were both DD_TRACE_DEBUG-only, so affected users saw
nothing. The same scan now also collects a curated set (Next.js, matched on its
server module) and surfaces it by default via the startup-log path (gated on
startupLogs), naming the fix — load dd-trace first via --require dd-trace/init
or --import dd-trace/initialize.mjs and keep it in serverExternalPackages.
The broad list stays DD_TRACE_DEBUG-only.

Test plan

  • Default-on subprocess tests (no DD_TRACE_DEBUG): warns when next-server.js
    is cached before init; silent when next loads after init or only a non-server
    file is cached.
  • logLateLoadedFrameworks gating + drain idempotency; existing express
    debug-order tests unchanged.

Fixes: #5430

Initializing dd-trace after Next.js has already loaded — e.g. from Next's
instrumentation.ts register() hook, which runs once the server modules are
required — leaves the next integration silently disabled: the require hook
never sees next-server.js, the plugin never attaches, and tracer.use('next')
is a no-op with no diagnostic. ESM apps hit this more often, since a top-level
import does not guarantee dd-trace evaluates before the framework.

checkForRequiredModules already detects packages loaded before dd-trace, but
its call and its log sink were both DD_TRACE_DEBUG-only, so affected users saw
nothing. The same scan now also collects a curated set (Next.js, matched on its
server module) and surfaces it by default via the startup-log path (gated on
startupLogs); the broad list stays DD_TRACE_DEBUG-only.

Fixes: #5430
@codecov

codecov Bot commented Jun 12, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.95%. Comparing base (00e74e4) to head (35b11c3).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #8901      +/-   ##
==========================================
- Coverage   92.58%   91.95%   -0.63%     
==========================================
  Files         862      862              
  Lines       49641    49660      +19     
  Branches     9407     9411       +4     
==========================================
- Hits        45958    45664     -294     
- Misses       3683     3996     +313     
Flag Coverage Δ
aiguard-integration-active 41.52% <76.92%> (+0.14%) ⬆️
aiguard-integration-latest 41.53% <76.92%> (+0.14%) ⬆️
aiguard-integration-maintenance 41.60% <76.92%> (+0.13%) ⬆️
aiguard-macos 33.49% <76.92%> (+0.12%) ⬆️
aiguard-ubuntu 33.65% <76.92%> (+0.12%) ⬆️
aiguard-windows 33.31% <76.92%> (+0.12%) ⬆️
apm-capabilities-tracing-macos ?
apm-capabilities-tracing-ubuntu-active 48.46% <100.00%> (+0.09%) ⬆️
apm-capabilities-tracing-ubuntu-latest 48.46% <100.00%> (+0.09%) ⬆️
apm-capabilities-tracing-ubuntu-maintenance 48.69% <100.00%> (+0.09%) ⬆️
apm-capabilities-tracing-ubuntu-oldest 48.51% <100.00%> (+0.09%) ⬆️
apm-capabilities-tracing-windows 48.46% <100.00%> (?)
apm-integrations-aerospike-18-gte.5.2.0 33.22% <76.92%> (+0.12%) ⬆️
apm-integrations-aerospike-20-gte.5.5.0 33.24% <76.92%> (+0.12%) ⬆️
apm-integrations-aerospike-22-gte.5.12.1 33.25% <76.92%> (+0.12%) ⬆️
apm-integrations-aerospike-22-gte.6.0.0 33.25% <76.92%> (+0.12%) ⬆️
apm-integrations-aerospike-eol- 33.15% <76.92%> (+0.12%) ⬆️
apm-integrations-child-process 34.16% <76.92%> (+0.12%) ⬆️
apm-integrations-confluentinc-kafka-javascript-18 ?
apm-integrations-confluentinc-kafka-javascript-20 40.26% <76.92%> (?)
apm-integrations-confluentinc-kafka-javascript-22 40.26% <76.92%> (+0.11%) ⬆️
apm-integrations-confluentinc-kafka-javascript-24 ?
apm-integrations-couchbase-18 33.40% <76.92%> (+0.12%) ⬆️
apm-integrations-couchbase-eol 33.28% <76.92%> (+0.12%) ⬆️
apm-integrations-dns 33.16% <76.92%> (+0.12%) ⬆️
apm-integrations-elasticsearch 34.18% <76.92%> (+0.11%) ⬆️
apm-integrations-http-latest 41.38% <76.92%> (+0.09%) ⬆️
apm-integrations-http-maintenance 41.48% <76.92%> (+0.09%) ⬆️
apm-integrations-http-oldest 41.40% <76.92%> (+0.09%) ⬆️
apm-integrations-http2 38.70% <76.92%> (+0.27%) ⬆️
apm-integrations-kafkajs-latest 40.25% <76.92%> (+0.11%) ⬆️
apm-integrations-kafkajs-oldest 40.34% <76.92%> (?)
apm-integrations-net ?
apm-integrations-next-11.1.4 36.57% <ø> (ø)
apm-integrations-next-12.3.7 36.57% <ø> (ø)
apm-integrations-next-13.0.0 29.20% <84.61%> (+0.09%) ⬆️
apm-integrations-next-13.2.0 29.20% <84.61%> (+0.09%) ⬆️
apm-integrations-next-13.5.11 29.33% <84.61%> (+0.13%) ⬆️
apm-integrations-next-14.0.0 29.30% <84.61%> (+0.13%) ⬆️
apm-integrations-next-14.2.35 29.26% <84.61%> (+0.13%) ⬆️
apm-integrations-next-14.2.6 29.26% <84.61%> (+0.13%) ⬆️
apm-integrations-next-14.2.7 29.26% <84.61%> (+0.13%) ⬆️
apm-integrations-next-15.0.0 29.26% <84.61%> (+0.13%) ⬆️
apm-integrations-next-15.4.0 29.33% <84.61%> (+0.13%) ⬆️
apm-integrations-next-latest 29.29% <84.61%> (+0.13%) ⬆️
apm-integrations-oracledb 34.07% <76.92%> (+0.11%) ⬆️
apm-integrations-prisma-18-gte.6.16.0.and.lt.7.0.0 34.58% <76.92%> (+0.12%) ⬆️
apm-integrations-prisma-latest-all ?
apm-integrations-restify 35.26% <76.92%> (+0.11%) ⬆️
apm-integrations-sharedb 32.57% <76.92%> (+0.12%) ⬆️
apm-integrations-tedious 33.48% <76.92%> (+0.11%) ⬆️
appsec-express ?
appsec-fastify ?
appsec-graphql 48.00% <76.92%> (+0.07%) ⬆️
appsec-integration-active 35.93% <76.92%> (+0.01%) ⬆️
appsec-integration-latest 35.93% <76.92%> (+0.01%) ⬆️
appsec-integration-maintenance 35.99% <76.92%> (+0.01%) ⬆️
appsec-integration-oldest 35.99% <76.92%> (+0.01%) ⬆️
appsec-kafka 40.53% <76.92%> (+0.09%) ⬆️
appsec-ldapjs 39.90% <76.92%> (+0.09%) ⬆️
appsec-lodash 39.93% <76.92%> (+0.09%) ⬆️
appsec-macos ?
appsec-mongodb-core 44.12% <76.92%> (+0.08%) ⬆️
appsec-mongoose 44.96% <76.92%> (+0.08%) ⬆️
appsec-mysql 47.23% <76.92%> (+0.07%) ⬆️
appsec-next-latest-11.1.4 27.44% <76.92%> (+0.11%) ⬆️
appsec-next-latest-12.3.7 27.58% <ø> (ø)
appsec-next-latest-13.0.0 29.26% <76.92%> (+0.12%) ⬆️
appsec-next-latest-13.2.0 29.29% <76.92%> (+0.12%) ⬆️
appsec-next-latest-13.5.11 29.38% <76.92%> (+0.12%) ⬆️
appsec-next-latest-14.0.0 ?
appsec-next-latest-14.2.35 29.31% <76.92%> (+0.12%) ⬆️
appsec-next-latest-14.2.6 29.31% <76.92%> (+0.12%) ⬆️
appsec-next-latest-14.2.7 29.31% <76.92%> (+0.12%) ⬆️
appsec-next-latest-15.0.0 29.31% <76.92%> (+0.12%) ⬆️
appsec-next-latest-latest 29.31% <76.92%> (+0.12%) ⬆️
appsec-next-oldest-11.1.4 27.49% <76.92%> (+0.11%) ⬆️
appsec-next-oldest-12.3.7 29.32% <76.92%> (+0.12%) ⬆️
appsec-next-oldest-13.0.0 29.32% <76.92%> (+0.12%) ⬆️
appsec-next-oldest-13.2.0 29.59% <76.92%> (+0.12%) ⬆️
appsec-next-oldest-13.5.11 29.69% <76.92%> (+0.12%) ⬆️
appsec-next-oldest-14.0.0 29.62% <76.92%> (+0.12%) ⬆️
appsec-next-oldest-14.2.35 29.62% <76.92%> (?)
appsec-next-oldest-14.2.6 ?
appsec-next-oldest-14.2.7 29.62% <76.92%> (+0.12%) ⬆️
appsec-next-oldest-15.0.0 29.62% <76.92%> (?)
appsec-next-oldest-latest 27.79% <ø> (ø)
appsec-node-serialize 39.24% <76.92%> (+0.09%) ⬆️
appsec-passport 42.81% <76.92%> (+0.09%) ⬆️
appsec-postgres 47.19% <76.92%> (+0.30%) ⬆️
appsec-sourcing ?
appsec-stripe 40.58% <76.92%> (+0.09%) ⬆️
appsec-template 39.47% <76.92%> (+0.09%) ⬆️
appsec-ubuntu 57.30% <76.92%> (+0.06%) ⬆️
appsec-windows 57.03% <76.92%> (+0.05%) ⬆️
debugger-ubuntu-active 43.57% <76.92%> (+0.02%) ⬆️
debugger-ubuntu-latest 43.50% <76.92%> (+0.02%) ⬆️
debugger-ubuntu-maintenance 43.70% <76.92%> (+0.02%) ⬆️
debugger-ubuntu-oldest 44.01% <76.92%> (+0.02%) ⬆️
instrumentations-instrumentation-ai 42.49% <ø> (ø)
instrumentations-instrumentation-aws-sdk 44.65% <ø> (ø)
instrumentations-instrumentation-bluebird 27.62% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-body-parser 35.76% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-child_process 33.54% <76.92%> (+0.12%) ⬆️
instrumentations-instrumentation-cookie-parser 29.50% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-couchbase-18 45.77% <ø> (ø)
instrumentations-instrumentation-couchbase-eol 45.77% <ø> (ø)
instrumentations-instrumentation-crypto 27.67% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-express 29.71% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-express-mongo-sanitize 29.61% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-express-multi-version 41.54% <ø> (ø)
instrumentations-instrumentation-express-session 35.54% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-fastify 47.65% <ø> (ø)
instrumentations-instrumentation-fetch 44.84% <ø> (ø)
instrumentations-instrumentation-fs 27.31% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-generic-pool 27.31% <68.42%> (+0.34%) ⬆️
instrumentations-instrumentation-hono 28.82% <76.92%> (+0.12%) ⬆️
instrumentations-instrumentation-http 35.20% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-http-client-options 37.72% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-kafkajs 48.74% <ø> (ø)
instrumentations-instrumentation-knex 27.60% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-light-my-request 35.39% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-mongoose 28.70% <76.92%> (+0.12%) ⬆️
instrumentations-instrumentation-multer 35.43% <76.92%> (+0.11%) ⬆️
instrumentations-instrumentation-mysql2 33.57% <76.92%> (+0.12%) ⬆️
instrumentations-instrumentation-openai-aiguard 47.66% <ø> (ø)
instrumentations-instrumentation-otel-sdk-trace 25.62% <57.69%> (+0.42%) ⬆️
instrumentations-instrumentation-passport 39.30% <76.92%> (+0.09%) ⬆️
instrumentations-instrumentation-passport-http 38.99% <76.92%> (+0.10%) ⬆️
instrumentations-instrumentation-passport-local 39.45% <76.92%> (+0.09%) ⬆️
instrumentations-instrumentation-pg 33.29% <76.92%> (+0.12%) ⬆️
instrumentations-instrumentation-promise 27.56% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-promise-js 27.57% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-q 27.60% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-router 42.86% <ø> (ø)
instrumentations-instrumentation-stripe 28.09% <76.92%> (+0.12%) ⬆️
instrumentations-instrumentation-url 27.50% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-when 27.58% <76.92%> (+0.13%) ⬆️
instrumentations-instrumentation-zlib 27.55% <76.92%> (+0.13%) ⬆️
instrumentations-integration-esbuild-0.16.12-active 18.39% <57.69%> (?)
instrumentations-integration-esbuild-0.16.12-latest 18.39% <57.69%> (+0.06%) ⬆️
instrumentations-integration-esbuild-0.16.12-maintenance ?
instrumentations-integration-esbuild-0.16.12-oldest 18.41% <57.69%> (+0.06%) ⬆️
instrumentations-integration-esbuild-latest-active 18.39% <57.69%> (+0.06%) ⬆️
instrumentations-integration-esbuild-latest-latest ?
instrumentations-integration-esbuild-latest-maintenance 18.41% <57.69%> (+0.06%) ⬆️
instrumentations-integration-esbuild-latest-oldest 18.41% <57.69%> (+0.06%) ⬆️
llmobs-ai ?
llmobs-anthropic 36.67% <76.92%> (+0.10%) ⬆️
llmobs-bedrock 36.19% <76.92%> (+0.10%) ⬆️
llmobs-google-genai 35.94% <76.92%> (+0.10%) ⬆️
llmobs-langchain 34.54% <76.92%> (+0.09%) ⬆️
llmobs-openai-latest 39.07% <76.92%> (+0.10%) ⬆️
llmobs-openai-oldest ?
llmobs-sdk-active 43.66% <76.92%> (+0.10%) ⬆️
llmobs-sdk-latest ?
llmobs-sdk-maintenance 43.76% <76.92%> (+0.10%) ⬆️
llmobs-sdk-oldest 43.75% <76.92%> (+0.10%) ⬆️
llmobs-vertex-ai 35.71% <76.92%> (+0.11%) ⬆️
master-coverage 91.95% <100.00%> (?)
openfeature-macos 37.56% <76.92%> (+0.15%) ⬆️
openfeature-ubuntu 37.70% <76.92%> (+0.15%) ⬆️
openfeature-unit-active 49.97% <ø> (ø)
openfeature-unit-latest 49.97% <ø> (ø)
openfeature-unit-maintenance 50.34% <ø> (ø)
openfeature-unit-oldest 50.34% <ø> (ø)
openfeature-windows 37.39% <76.92%> (?)
platform-core 46.06% <ø> (ø)
platform-esbuild 46.70% <ø> (ø)
platform-instrumentations-misc 30.53% <96.15%> (+0.07%) ⬆️
platform-integration-active 46.66% <76.92%> (+0.03%) ⬆️
platform-integration-latest 46.61% <76.92%> (-0.02%) ⬇️
platform-integration-maintenance 46.75% <76.92%> (?)
platform-integration-oldest 46.91% <76.92%> (?)
platform-shimmer 47.12% <ø> (ø)
platform-unit-guardrails 44.11% <ø> (ø)
platform-webpack 18.00% <57.69%> (+0.12%) ⬆️
plugins-axios ?
plugins-azure-cosmos ?
plugins-azure-event-hubs 34.86% <76.92%> (+0.20%) ⬆️
plugins-azure-service-bus 35.34% <76.92%> (+0.19%) ⬆️
plugins-body-parser 36.50% <76.92%> (+0.04%) ⬆️
plugins-bullmq 39.13% <76.92%> (+0.21%) ⬆️
plugins-cassandra 33.69% <76.92%> (+0.11%) ⬆️
plugins-cookie 40.35% <ø> (ø)
plugins-cookie-parser 40.18% <ø> (ø)
plugins-crypto 42.43% <ø> (ø)
plugins-dd-trace-api 33.39% <76.92%> (+0.12%) ⬆️
plugins-express-mongo-sanitize 40.23% <ø> (ø)
plugins-express-session 40.09% <ø> (ø)
plugins-fastify 37.84% <76.92%> (+0.10%) ⬆️
plugins-fetch 34.11% <76.92%> (+0.11%) ⬆️
plugins-fs 33.78% <76.92%> (+0.12%) ⬆️
plugins-generic-pool 39.66% <ø> (ø)
plugins-google-cloud-pubsub 41.51% <76.92%> (?)
plugins-grpc 36.60% <76.92%> (+0.10%) ⬆️
plugins-handlebars 40.23% <ø> (ø)
plugins-hapi 35.67% <76.92%> (+0.11%) ⬆️
plugins-hono 36.00% <76.92%> (+0.11%) ⬆️
plugins-ioredis 34.25% <76.92%> (+0.12%) ⬆️
plugins-jest 27.12% <ø> (ø)
plugins-knex ?
plugins-langgraph 32.41% <76.92%> (+0.12%) ⬆️
plugins-ldapjs 38.68% <ø> (ø)
plugins-light-my-request 39.80% <ø> (ø)
plugins-limitd-client ?
plugins-lodash 39.84% <ø> (ø)
plugins-mariadb ?
plugins-memcached ?
plugins-microgateway-core 34.77% <76.92%> (+0.11%) ⬆️
plugins-modelcontextprotocol-sdk 32.37% <76.92%> (+0.12%) ⬆️
plugins-moleculer 36.66% <76.92%> (+0.11%) ⬆️
plugins-mongodb 35.91% <76.92%> (+0.11%) ⬆️
plugins-mongodb-core ?
plugins-mongoose 34.39% <76.92%> (+0.11%) ⬆️
plugins-multer 40.15% <ø> (ø)
plugins-mysql 34.55% <76.92%> (-0.02%) ⬇️
plugins-mysql2 35.03% <76.92%> (?)
plugins-nats 36.41% <76.92%> (+0.11%) ⬆️
plugins-node-serialize 40.37% <ø> (ø)
plugins-opensearch 33.63% <76.92%> (+0.11%) ⬆️
plugins-passport-http 39.97% <ø> (ø)
plugins-pino 29.86% <76.92%> (?)
plugins-postgres 34.74% <76.92%> (+0.12%) ⬆️
plugins-process 42.43% <ø> (ø)
plugins-pug 40.35% <ø> (?)
plugins-redis 34.36% <76.92%> (+0.12%) ⬆️
plugins-router 38.09% <76.92%> (-0.11%) ⬇️
plugins-sequelize 39.62% <ø> (ø)
plugins-test-and-upstream-amqp10 33.91% <76.92%> (+0.12%) ⬆️
plugins-test-and-upstream-amqplib 39.27% <76.92%> (+0.11%) ⬆️
plugins-test-and-upstream-apollo 34.84% <76.92%> (+0.10%) ⬆️
plugins-test-and-upstream-avsc 33.79% <76.92%> (+0.12%) ⬆️
plugins-test-and-upstream-bunyan 29.27% <76.92%> (?)
plugins-test-and-upstream-connect 36.35% <76.92%> (+0.11%) ⬆️
plugins-test-and-upstream-graphql ?
plugins-test-and-upstream-koa 35.85% <76.92%> (+0.11%) ⬆️
plugins-test-and-upstream-protobufjs 34.02% <76.92%> (+0.12%) ⬆️
plugins-test-and-upstream-rhea 39.24% <76.92%> (+0.11%) ⬆️
plugins-undici 34.61% <76.92%> (+0.11%) ⬆️
plugins-url 42.43% <ø> (ø)
plugins-valkey 33.87% <76.92%> (+0.11%) ⬆️
plugins-vm 42.43% <ø> (ø)
plugins-winston 29.71% <76.92%> (+0.12%) ⬆️
plugins-ws 37.15% <76.92%> (+0.11%) ⬆️
profiling-macos 43.10% <76.92%> (-0.04%) ⬇️
profiling-ubuntu 43.63% <76.92%> (+0.01%) ⬆️
profiling-windows 40.98% <76.92%> (+0.09%) ⬆️
serverless-aws-sdk-latest-aws-sdk 33.12% <76.92%> (+0.08%) ⬆️
serverless-aws-sdk-latest-bedrockruntime 31.81% <76.92%> (?)
serverless-aws-sdk-latest-client 36.07% <ø> (ø)
serverless-aws-sdk-latest-dynamodb ?
serverless-aws-sdk-latest-eventbridge 26.98% <76.92%> (+0.11%) ⬆️
serverless-aws-sdk-latest-kinesis 37.09% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-latest-lambda 34.47% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-latest-s3 32.37% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-latest-serverless-peer-service 39.38% <76.92%> (+0.02%) ⬆️
serverless-aws-sdk-latest-sns 38.27% <76.92%> (+0.09%) ⬆️
serverless-aws-sdk-latest-sqs 37.82% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-latest-stepfunctions 33.04% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-latest-util 46.46% <ø> (ø)
serverless-aws-sdk-oldest-aws-sdk 33.24% <76.92%> (+0.09%) ⬆️
serverless-aws-sdk-oldest-bedrockruntime ?
serverless-aws-sdk-oldest-client 36.63% <ø> (ø)
serverless-aws-sdk-oldest-dynamodb 34.10% <76.92%> (+0.08%) ⬆️
serverless-aws-sdk-oldest-eventbridge 27.06% <76.92%> (?)
serverless-aws-sdk-oldest-kinesis 37.27% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-oldest-lambda ?
serverless-aws-sdk-oldest-s3 32.51% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-oldest-serverless-peer-service 39.47% <76.92%> (+0.11%) ⬆️
serverless-aws-sdk-oldest-sns 38.37% <76.92%> (+0.09%) ⬆️
serverless-aws-sdk-oldest-sqs 37.70% <76.92%> (+0.10%) ⬆️
serverless-aws-sdk-oldest-stepfunctions ?
serverless-aws-sdk-oldest-util 47.21% <ø> (ø)
serverless-azure-durable-functions 36.79% <76.92%> (+0.18%) ⬆️
serverless-azure-functions-eventhubs 38.43% <76.92%> (+0.17%) ⬆️
serverless-azure-functions-servicebus 38.49% <76.92%> (+0.17%) ⬆️
serverless-lambda 34.48% <76.92%> (+0.14%) ⬆️
test-optimization-cucumber-latest-7.0.0 50.00% <73.07%> (+0.13%) ⬆️
test-optimization-cucumber-latest-latest 52.74% <73.07%> (+0.13%) ⬆️
test-optimization-cucumber-oldest-7.0.0 50.08% <73.07%> (+0.13%) ⬆️
test-optimization-cypress-latest-12.0.0-commonJS 48.69% <73.07%> (-0.58%) ⬇️
test-optimization-cypress-latest-12.0.0-esm 49.38% <73.07%> (+0.08%) ⬆️
test-optimization-cypress-latest-14.5.4-commonJS 49.19% <73.07%> (+0.08%) ⬆️
test-optimization-cypress-latest-14.5.4-esm 49.22% <73.07%> (+0.08%) ⬆️
test-optimization-cypress-latest-latest-commonJS 49.65% <73.07%> (+0.43%) ⬆️
test-optimization-cypress-latest-latest-esm 49.71% <73.07%> (+0.08%) ⬆️
test-optimization-cypress-oldest-12.0.0-commonJS 49.43% <73.07%> (+0.08%) ⬆️
test-optimization-cypress-oldest-12.0.0-esm 46.71% <73.07%> (-2.14%) ⬇️
test-optimization-cypress-oldest-14.5.4-commonJS 47.62% <73.07%> (-1.57%) ⬇️
test-optimization-cypress-oldest-14.5.4-esm 48.68% <73.07%> (-0.54%) ⬇️
test-optimization-jest-latest-latest 55.45% <80.76%> (+0.09%) ⬆️
test-optimization-jest-latest-oldest 52.44% <80.76%> (-1.83%) ⬇️
test-optimization-jest-oldest-latest 55.50% <80.76%> (+2.59%) ⬆️
test-optimization-jest-oldest-oldest 54.38% <80.76%> (+0.10%) ⬆️
test-optimization-mocha-latest-latest 53.69% <80.76%> (+0.10%) ⬆️
test-optimization-mocha-oldest-latest 53.80% <80.76%> (+0.10%) ⬆️
test-optimization-mocha-oldest-oldest 51.23% <80.76%> (+0.10%) ⬆️
test-optimization-playwright-latest-latest-playwright-active-test-span 44.40% <73.07%> (+0.40%) ⬆️
test-optimization-playwright-latest-latest-playwright-atr 43.03% <73.07%> (+0.24%) ⬆️
test-optimization-playwright-latest-latest-playwright-efd 43.45% <73.07%> (+0.22%) ⬆️
test-optimization-playwright-latest-latest-playwright-final-status 43.52% <73.07%> (+0.24%) ⬆️
test-optimization-playwright-latest-latest-playwright-impacted-tests 43.00% <73.07%> (+0.13%) ⬆️
test-optimization-playwright-latest-latest-playwright-reporting ?
test-optimization-playwright-latest-latest-playwright-test-management 44.56% <73.07%> (+0.12%) ⬆️
test-optimization-playwright-latest-oldest-playwright-active-test-span 44.22% <73.07%> (+0.40%) ⬆️
test-optimization-playwright-latest-oldest-playwright-atr 43.11% <73.07%> (+0.24%) ⬆️
test-optimization-playwright-latest-oldest-playwright-efd 43.40% <73.07%> (+0.23%) ⬆️
test-optimization-playwright-latest-oldest-playwright-impacted-tests 42.92% <73.07%> (+0.13%) ⬆️
test-optimization-playwright-latest-oldest-playwright-reporting 42.86% <73.07%> (+0.20%) ⬆️
test-optimization-playwright-latest-oldest-playwright-test-management 44.51% <73.07%> (+0.12%) ⬆️
test-optimization-playwright-oldest-latest-playwright-active-test-span 44.48% <73.07%> (+0.24%) ⬆️
test-optimization-playwright-oldest-latest-playwright-atr 43.10% <73.07%> (+0.22%) ⬆️
test-optimization-playwright-oldest-latest-playwright-efd 43.53% <73.07%> (+0.22%) ⬆️
test-optimization-playwright-oldest-latest-playwright-final-status ?
test-optimization-playwright-oldest-latest-playwright-impacted-tests 43.08% <73.07%> (+0.13%) ⬆️
test-optimization-playwright-oldest-latest-playwright-reporting 43.12% <73.07%> (+0.22%) ⬆️
test-optimization-playwright-oldest-latest-playwright-test-management 44.64% <73.07%> (+0.13%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-active-test-span 44.30% <73.07%> (+0.40%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-atr 43.19% <73.07%> (+0.24%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-efd 43.47% <73.07%> (+0.23%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-final-status 43.53% <73.07%> (+0.24%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-impacted-tests ?
test-optimization-selenium-latest 45.33% <73.07%> (+0.17%) ⬆️
test-optimization-selenium-oldest 44.92% <73.07%> (+0.18%) ⬆️
test-optimization-testopt-active 48.35% <80.76%> (+0.14%) ⬆️
test-optimization-testopt-latest 48.35% <80.76%> (+0.14%) ⬆️
test-optimization-testopt-maintenance 48.34% <80.76%> (+0.15%) ⬆️
test-optimization-testopt-oldest 49.44% <80.76%> (+0.12%) ⬆️
test-optimization-vitest-latest 50.80% <73.07%> (+0.12%) ⬆️
test-optimization-vitest-oldest 48.11% <73.07%> (+0.45%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dd-octo-sts

dd-octo-sts Bot commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Overall package size

Self size: 6.2 MB
Deduped: 7.25 MB
No deduping: 7.25 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | import-in-the-middle | 3.0.2 | 85.93 kB | 825.11 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | dc-polyfill | 0.1.11 | 25.74 kB | 25.74 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

@datadog-prod-us1-5

This comment has been minimized.

@pr-commenter

pr-commenter Bot commented Jun 12, 2026

Copy link
Copy Markdown

Benchmarks

Benchmark execution time: 2026-06-12 16:42:06

Comparing candidate commit 35b11c3 in PR branch BridgeAR/2026-06-12-next-late-load-warning with baseline commit 00e74e4 in branch master.

📊 Benchmarking dashboard

Found 0 performance improvements and 0 performance regressions! Performance is the same for 1448 metrics, 19 unstable metrics.

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

Unstable benchmarks

These benchmarks have a confidence interval too wide to call a change; treat them as noise rather than signal.

scenario:debugger-line-probe-with-snapshot-default-20

  • unstable max_rss_usage [-9697.277KB; +10455.677KB] or [-5.026%; +5.419%]

scenario:debugger-line-probe-with-snapshot-default-26

  • unstable max_rss_usage [-14865.965KB; +16709.165KB] or [-5.434%; +6.108%]

scenario:log-skip-log-24

  • unstable cpu_user_time [-2297.067µs; +3906.067µs] or [-4.860%; +8.264%]

scenario:log-skip-log-26

  • unstable cpu_user_time [-1956.076µs; +3191.276µs] or [-4.222%; +6.888%]

scenario:log-without-log-20

  • unstable cpu_user_time [-2386.192µs; +3794.792µs] or [-4.302%; +6.842%]

scenario:log-without-log-24

  • unstable cpu_user_time [-2963.221µs; +3809.821µs] or [-6.450%; +8.293%]

scenario:log-without-log-26

  • unstable cpu_user_time [-3048.652µs; +2145.252µs] or [-6.462%; +4.547%]

scenario:plugin-graphql-long-with-depth-and-collapse-off-24

  • unstable cpu_user_time [-458.327ms; +142.492ms] or [-10.797%; +3.357%]
  • unstable execution_time [-488.076ms; +153.447ms] or [-10.786%; +3.391%]
  • unstable max_rss_usage [-52.085MB; +13.271MB] or [-10.187%; +2.596%]

scenario:plugin-graphql-long-with-depth-off-20

  • unstable max_rss_usage [-7.017MB; +15.840MB] or [-5.011%; +11.313%]

scenario:spans-finish-later-20

  • unstable cpu_user_time [-442.781ms; +345.897ms] or [-9.392%; +7.337%]
  • unstable execution_time [-526.973ms; +401.256ms] or [-10.078%; +7.674%]

scenario:spans-finish-later-24

  • unstable cpu_user_time [-614.985ms; +958.153ms] or [-26.127%; +40.706%]
  • unstable execution_time [-625.941ms; +973.102ms] or [-25.249%; +39.252%]
  • unstable instructions [-1122.4M instructions; +1747.3M instructions] or [-7.457%; +11.609%]
  • unstable max_rss_usage [-27.032MB; +31.922MB] or [-8.314%; +9.818%]

scenario:spans-finish-later-26

  • unstable cpu_user_time [-182.288ms; +144.513ms] or [-9.746%; +7.727%]
  • unstable execution_time [-183.715ms; +145.281ms] or [-9.459%; +7.480%]

require.cache keys use the platform separator, so on Windows
(...\node_modules\next\...) extractPackageAndModulePath never matched
node_modules/ and the framework scan silently collected nothing. Normalize the
key to forward slashes before parsing so the Next.js late-load warning fires on
Windows too.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG]: Next plugin not loaded

1 participant