Skip to content

fix(eslint): skip autofix on ${} in string literal#8627

Merged
BridgeAR merged 1 commit into
masterfrom
watson/fix-eslint-rule
May 25, 2026
Merged

fix(eslint): skip autofix on ${} in string literal#8627
BridgeAR merged 1 commit into
masterfrom
watson/fix-eslint-rule

Conversation

@watson

@watson watson commented May 25, 2026

Copy link
Copy Markdown
Collaborator

What does this PR do?

Fixes a bug in the eslint-require-boolean-assert-message autofixer (introduced in #8537): when a boolean assertion has a string-literal operand that contains ${...}, the autofixer silently produces a broken message — or, worse, code that throws ReferenceError before the assertion runs.

buildAutofixMessage embeds the source text of Literal operands verbatim into the static segments of the synthesised template literal (non-literal operands are wrapped in ${...} and are expression text, so they're unaffected). For example:

assert.ok(value == '${expected}')

was being autofixed to:

assert.ok(value == '${expected}', `Expected ${value} == ${expected}`)

…where the literal's ${expected} becomes a real interpolation against whatever expected happens to mean in scope. This PR adds an early bail-out (return null) when a Literal operand's source text contains ${, leaving the violation flagged but unfixed so the author can write the message themselves. The companion comment about backslashes — now subsumed by the broader literal-level check — is dropped.

Three regression tests cover the cases that motivated the fix: == with an interpolation-shaped RHS, > with the same, and the escaped \${...} variant (the escape is normalised away by the parser, so the synthesised template still sees ${).

Motivation

The original autofixer in #8537 protected against one hazard — a literal backtick in an operand, which would terminate the synthesised template early — but missed the symmetric case of ${...} syntax appearing inside a string literal. The window is narrow but real: any test asserting against a string that happens to contain template-literal syntax (error messages, snapshots, codegen output, fixture strings) would hit it on the first --fix.

Additional Notes

#8620 proposes deactivating eslint-require-boolean-assert-message outright and reworking it before re-enabling. This PR is independent of that decision: the autofixer source still ships either way, the bug is real, and the fix is part of the hardening #8620 references. Happy to sequence behind it if reviewers prefer.

For literal operands, `buildAutofixMessage` embeds the source text
verbatim into the synthesised template's static segments. When that
text contains `${...}`, it turns into a real interpolation —
silently changing the message, or throwing `ReferenceError` if the
identifier isn't in scope before `assert.ok` even runs.

Bail out (return null) in that case rather than try to escape, and
drop the now-obsolete comment about backslashes — the broader
literal check supersedes it. Includes regression tests for `==`,
`>`, and the escaped `\${...}` variant.

Follow-up to #8537.
@watson watson requested review from a team as code owners May 25, 2026 07:57
@watson watson requested review from BridgeAR and removed request for a team May 25, 2026 07:57

watson commented May 25, 2026

Copy link
Copy Markdown
Collaborator Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@datadog-datadog-prod-us1-2

datadog-datadog-prod-us1-2 Bot commented May 25, 2026

Copy link
Copy Markdown

Pipelines  Tests

Fix all issues with BitsAI

⚠️ Warnings

🚦 1 Pipeline job failed

Pull Request Labels | label   View in Datadog   GitHub Actions

🛟 This job is unlikely to succeed on retry. Please review your pipeline configuration. Label error. Requires exactly 1 of: semver-patch, semver-minor, semver-major. Found:

ℹ️ Info

No other issues found (see more)

🧪 All tests passed
❄️ No new flaky tests detected

🎯 Code Coverage (details)
Patch Coverage: 100.00%
Overall Coverage: 86.37% (-0.00%)

Useful? React with 👍 / 👎

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 57da6fa | Docs | Datadog PR Page | Give us feedback!

@dd-octo-sts

dd-octo-sts Bot commented May 25, 2026

Copy link
Copy Markdown
Contributor

Overall package size

Self size: 5.86 MB
Deduped: 6.89 MB
No deduping: 6.89 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | import-in-the-middle | 3.0.1 | 82.56 kB | 817.39 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

@codecov

codecov Bot commented May 25, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.64%. Comparing base (b50f1ca) to head (57da6fa).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #8627      +/-   ##
==========================================
- Coverage   93.06%   92.64%   -0.43%     
==========================================
  Files         847      846       -1     
  Lines       47193    47171      -22     
  Branches     8519     8518       -1     
==========================================
- Hits        43921    43700     -221     
- Misses       3272     3471     +199     
Flag Coverage Δ
aiguard-integration-active ?
aiguard-integration-latest 41.20% <ø> (ø)
aiguard-integration-maintenance 41.25% <ø> (ø)
aiguard-macos 33.56% <ø> (-0.08%) ⬇️
aiguard-ubuntu 33.76% <ø> (+0.02%) ⬆️
aiguard-windows ?
apm-capabilities-tracing-macos 47.94% <ø> (-0.04%) ⬇️
apm-capabilities-tracing-ubuntu-active 48.19% <ø> (+0.18%) ⬆️
apm-capabilities-tracing-ubuntu-latest 47.98% <ø> (ø)
apm-capabilities-tracing-ubuntu-maintenance 48.00% <ø> (ø)
apm-capabilities-tracing-ubuntu-oldest 48.00% <ø> (+<0.01%) ⬆️
apm-capabilities-tracing-windows 47.97% <ø> (+<0.01%) ⬆️
apm-integrations-aerospike-18-gte.5.2.0 33.26% <ø> (-0.08%) ⬇️
apm-integrations-aerospike-20-gte.5.5.0 33.29% <ø> (-0.08%) ⬇️
apm-integrations-aerospike-22-gte.5.12.1 33.29% <ø> (-0.08%) ⬇️
apm-integrations-aerospike-22-gte.6.0.0 33.29% <ø> (-0.08%) ⬇️
apm-integrations-aerospike-eol- ?
apm-integrations-child-process 34.13% <ø> (-0.08%) ⬇️
apm-integrations-confluentinc-kafka-javascript-18 40.36% <ø> (-0.08%) ⬇️
apm-integrations-confluentinc-kafka-javascript-20 40.37% <ø> (-0.08%) ⬇️
apm-integrations-confluentinc-kafka-javascript-22 ?
apm-integrations-confluentinc-kafka-javascript-24 40.32% <ø> (-0.08%) ⬇️
apm-integrations-couchbase-18 33.28% <ø> (-0.25%) ⬇️
apm-integrations-couchbase-eol 33.29% <ø> (-0.08%) ⬇️
apm-integrations-dns 32.99% <ø> (-0.08%) ⬇️
apm-integrations-elasticsearch 34.20% <ø> (-0.08%) ⬇️
apm-integrations-http-latest 41.47% <ø> (-0.07%) ⬇️
apm-integrations-http-maintenance 41.51% <ø> (-0.07%) ⬇️
apm-integrations-http-oldest 41.52% <ø> (-0.07%) ⬇️
apm-integrations-http2 38.57% <ø> (-0.08%) ⬇️
apm-integrations-kafkajs-latest 40.23% <ø> (+0.02%) ⬆️
apm-integrations-kafkajs-oldest 40.17% <ø> (-0.08%) ⬇️
apm-integrations-net 33.90% <ø> (-0.08%) ⬇️
apm-integrations-next-11.1.4 27.90% <ø> (-0.07%) ⬇️
apm-integrations-next-12.3.7 29.50% <ø> (-0.04%) ⬇️
apm-integrations-next-13.0.0 29.50% <ø> (-0.04%) ⬇️
apm-integrations-next-13.2.0 29.50% <ø> (-0.08%) ⬇️
apm-integrations-next-13.5.11 29.64% <ø> (-0.08%) ⬇️
apm-integrations-next-14.0.0 29.53% <ø> (-0.12%) ⬇️
apm-integrations-next-14.2.35 29.53% <ø> (-0.12%) ⬇️
apm-integrations-next-14.2.6 29.53% <ø> (-0.08%) ⬇️
apm-integrations-next-14.2.7 29.53% <ø> (-0.12%) ⬇️
apm-integrations-next-15.0.0 29.57% <ø> (-0.04%) ⬇️
apm-integrations-next-15.4.0 29.60% <ø> (-0.08%) ⬇️
apm-integrations-oracledb ?
apm-integrations-prisma-18-gte.6.16.0.and.lt.7.0.0 35.66% <ø> (-0.08%) ⬇️
apm-integrations-prisma-latest-all 34.55% <ø> (-0.08%) ⬇️
apm-integrations-restify ?
apm-integrations-sharedb 32.66% <ø> (-0.08%) ⬇️
apm-integrations-tedious 33.48% <ø> (-0.08%) ⬇️
appsec-express 51.59% <ø> (-0.08%) ⬇️
appsec-fastify 48.23% <ø> (-0.08%) ⬇️
appsec-graphql 48.24% <ø> (-0.06%) ⬇️
appsec-integration-active 37.08% <ø> (ø)
appsec-integration-latest 37.05% <ø> (ø)
appsec-integration-maintenance 37.09% <ø> (ø)
appsec-integration-oldest 37.08% <ø> (ø)
appsec-kafka 40.85% <ø> (-0.13%) ⬇️
appsec-ldapjs 40.03% <ø> (-0.07%) ⬇️
appsec-lodash 40.13% <ø> (-0.07%) ⬇️
appsec-macos 57.78% <ø> (+0.01%) ⬆️
appsec-mongodb-core 44.74% <ø> (-0.07%) ⬇️
appsec-mongoose 45.59% <ø> (-0.07%) ⬇️
appsec-mysql 47.53% <ø> (-0.06%) ⬇️
appsec-next-latest-11.1.4 27.95% <ø> (-0.08%) ⬇️
appsec-next-latest-12.3.7 29.51% <ø> (-0.08%) ⬇️
appsec-next-latest-13.0.0 29.51% <ø> (-0.08%) ⬇️
appsec-next-latest-13.2.0 29.54% <ø> (-0.08%) ⬇️
appsec-next-latest-13.5.11 29.64% <ø> (-0.08%) ⬇️
appsec-next-latest-14.0.0 29.56% <ø> (-0.08%) ⬇️
appsec-next-latest-14.2.35 29.56% <ø> (-0.08%) ⬇️
appsec-next-latest-14.2.6 29.56% <ø> (-0.08%) ⬇️
appsec-next-latest-14.2.7 29.56% <ø> (-0.08%) ⬇️
appsec-next-latest-15.0.0 29.56% <ø> (-0.08%) ⬇️
appsec-next-latest-latest 29.57% <ø> (-0.08%) ⬇️
appsec-next-oldest-11.1.4 27.96% <ø> (-0.07%) ⬇️
appsec-next-oldest-12.3.7 ?
appsec-next-oldest-13.0.0 ?
appsec-next-oldest-13.2.0 29.79% <ø> (-0.08%) ⬇️
appsec-next-oldest-13.5.11 29.89% <ø> (-0.08%) ⬇️
appsec-next-oldest-14.0.0 29.82% <ø> (-0.08%) ⬇️
appsec-next-oldest-14.2.35 29.82% <ø> (-0.08%) ⬇️
appsec-next-oldest-14.2.6 29.82% <ø> (-0.08%) ⬇️
appsec-next-oldest-14.2.7 29.82% <ø> (-0.08%) ⬇️
appsec-next-oldest-15.0.0 ?
appsec-next-oldest-latest 27.78% <ø> (ø)
appsec-node-serialize 39.35% <ø> (-0.07%) ⬇️
appsec-passport 43.08% <ø> (-0.07%) ⬇️
appsec-postgres 47.20% <ø> (-0.06%) ⬇️
appsec-sourcing 38.74% <ø> (-0.07%) ⬇️
appsec-stripe 40.81% <ø> (-0.07%) ⬇️
appsec-template 39.59% <ø> (-0.07%) ⬇️
appsec-ubuntu 57.77% <ø> (-0.06%) ⬇️
appsec-windows 57.56% <ø> (-0.13%) ⬇️
debugger-ubuntu-active 43.93% <ø> (ø)
debugger-ubuntu-latest ?
debugger-ubuntu-maintenance 43.95% <ø> (ø)
debugger-ubuntu-oldest 44.39% <ø> (ø)
instrumentations-instrumentation-ai 36.24% <ø> (ø)
instrumentations-instrumentation-aws-sdk 35.20% <ø> (ø)
instrumentations-instrumentation-bluebird 27.82% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-body-parser 36.02% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-child_process 33.52% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-cookie-parser 29.82% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-couchbase-18 36.41% <ø> (ø)
instrumentations-instrumentation-couchbase-eol 36.41% <ø> (ø)
instrumentations-instrumentation-crypto 27.90% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-express 30.01% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-express-mongo-sanitize 29.93% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-express-multi-version 21.17% <ø> (ø)
instrumentations-instrumentation-express-session 35.73% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-fetch 33.27% <ø> (ø)
instrumentations-instrumentation-fs 27.54% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-generic-pool 27.44% <ø> (ø)
instrumentations-instrumentation-hono 28.96% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-http 35.25% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-http-client-options 37.75% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-knex 27.81% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-light-my-request 35.55% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-mongoose 29.17% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-multer 35.68% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-mysql2 33.58% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-otel-sdk-trace 25.35% <ø> (ø)
instrumentations-instrumentation-passport 39.48% <ø> (-0.07%) ⬇️
instrumentations-instrumentation-passport-http 39.17% <ø> (-0.07%) ⬇️
instrumentations-instrumentation-passport-local 39.64% <ø> (-0.09%) ⬇️
instrumentations-instrumentation-pg 33.17% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-promise 27.77% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-promise-js 27.77% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-q 27.80% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-stripe 28.31% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-url 27.73% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-when 27.78% <ø> (-0.08%) ⬇️
instrumentations-instrumentation-zlib 27.78% <ø> (-0.08%) ⬇️
instrumentations-integration-esbuild-0.16.12-active 19.24% <ø> (ø)
instrumentations-integration-esbuild-0.16.12-latest 19.23% <ø> (ø)
instrumentations-integration-esbuild-0.16.12-maintenance 19.24% <ø> (ø)
instrumentations-integration-esbuild-0.16.12-oldest 19.23% <ø> (ø)
instrumentations-integration-esbuild-latest-active 19.24% <ø> (ø)
instrumentations-integration-esbuild-latest-latest 19.23% <ø> (ø)
instrumentations-integration-esbuild-latest-maintenance 19.24% <ø> (ø)
instrumentations-integration-esbuild-latest-oldest 19.23% <ø> (ø)
llmobs-ai 36.51% <ø> (-0.08%) ⬇️
llmobs-anthropic 36.70% <ø> (-0.08%) ⬇️
llmobs-bedrock 35.43% <ø> (-0.07%) ⬇️
llmobs-google-genai 35.77% <ø> (-0.08%) ⬇️
llmobs-langchain 36.75% <ø> (-0.07%) ⬇️
llmobs-openai-latest 39.67% <ø> (-0.07%) ⬇️
llmobs-openai-oldest 39.70% <ø> (-0.07%) ⬇️
llmobs-sdk-active ?
llmobs-sdk-latest 43.71% <ø> (-0.08%) ⬇️
llmobs-sdk-maintenance 43.76% <ø> (-0.08%) ⬇️
llmobs-sdk-oldest 43.75% <ø> (-0.08%) ⬇️
llmobs-vertex-ai 35.77% <ø> (-0.08%) ⬇️
master-coverage 92.64% <ø> (?)
openfeature-macos 38.09% <ø> (+0.04%) ⬆️
openfeature-ubuntu 38.17% <ø> (ø)
openfeature-unit-active 47.81% <ø> (ø)
openfeature-unit-latest 47.68% <ø> (ø)
openfeature-unit-maintenance 47.81% <ø> (ø)
openfeature-unit-oldest 47.81% <ø> (ø)
openfeature-windows 37.91% <ø> (-0.05%) ⬇️
platform-core 32.21% <ø> (ø)
platform-esbuild 36.77% <ø> (ø)
platform-instrumentations-misc 30.17% <ø> (ø)
platform-integration-active 47.20% <ø> (-0.05%) ⬇️
platform-integration-latest 47.21% <ø> (+0.04%) ⬆️
platform-integration-maintenance 47.21% <ø> (-0.05%) ⬇️
platform-integration-oldest 47.43% <ø> (ø)
platform-shimmer 39.58% <ø> (ø)
platform-unit-guardrails 32.99% <ø> (ø)
platform-webpack 18.74% <ø> (ø)
plugins-axios 35.54% <ø> (ø)
plugins-azure-cosmos ?
plugins-azure-event-hubs 34.88% <ø> (ø)
plugins-azure-service-bus 35.37% <ø> (ø)
plugins-body-parser ?
plugins-bullmq 39.29% <ø> (+0.02%) ⬆️
plugins-cassandra 33.70% <ø> (-0.08%) ⬇️
plugins-cookie 25.20% <ø> (ø)
plugins-cookie-parser 24.95% <ø> (ø)
plugins-crypto 24.94% <ø> (ø)
plugins-dd-trace-api 33.54% <ø> (-0.08%) ⬇️
plugins-express-mongo-sanitize 25.20% <ø> (ø)
plugins-express-session 24.87% <ø> (ø)
plugins-fastify ?
plugins-fetch 34.18% <ø> (-0.08%) ⬇️
plugins-fs 33.86% <ø> (-0.08%) ⬇️
plugins-generic-pool 23.89% <ø> (ø)
plugins-google-cloud-pubsub 41.49% <ø> (-0.08%) ⬇️
plugins-grpc 36.70% <ø> (-0.08%) ⬇️
plugins-handlebars 25.16% <ø> (ø)
plugins-hapi 35.70% <ø> (-0.08%) ⬇️
plugins-hono 35.98% <ø> (-0.08%) ⬇️
plugins-ioredis 34.27% <ø> (-0.08%) ⬇️
plugins-jest 28.09% <ø> (ø)
plugins-knex 24.88% <ø> (ø)
plugins-langgraph 33.11% <ø> (-0.08%) ⬇️
plugins-ldapjs 22.48% <ø> (ø)
plugins-light-my-request 24.60% <ø> (ø)
plugins-limitd-client 28.14% <ø> (-0.08%) ⬇️
plugins-lodash 24.08% <ø> (ø)
plugins-mariadb 35.11% <ø> (-0.15%) ⬇️
plugins-memcached 33.77% <ø> (-0.08%) ⬇️
plugins-microgateway-core 34.80% <ø> (-0.08%) ⬇️
plugins-modelcontextprotocol-sdk 32.44% <ø> (-0.08%) ⬇️
plugins-moleculer 36.73% <ø> (-0.08%) ⬇️
plugins-mongodb 35.18% <ø> (-0.17%) ⬇️
plugins-mongodb-core 34.84% <ø> (-0.08%) ⬇️
plugins-mongoose 34.61% <ø> (-0.17%) ⬇️
plugins-multer 24.91% <ø> (ø)
plugins-mysql 34.66% <ø> (+0.06%) ⬆️
plugins-mysql2 34.90% <ø> (-0.08%) ⬇️
plugins-node-serialize 25.25% <ø> (ø)
plugins-opensearch 33.63% <ø> (-0.08%) ⬇️
plugins-passport-http 24.83% <ø> (ø)
plugins-pino 30.07% <ø> (-0.08%) ⬇️
plugins-postgres 34.48% <ø> (-0.08%) ⬇️
plugins-process 24.94% <ø> (ø)
plugins-pug 25.20% <ø> (ø)
plugins-redis 34.10% <ø> (-0.26%) ⬇️
plugins-router 38.35% <ø> (-0.08%) ⬇️
plugins-sequelize 23.77% <ø> (ø)
plugins-test-and-upstream-amqp10 33.75% <ø> (-0.08%) ⬇️
plugins-test-and-upstream-amqplib 39.21% <ø> (-0.08%) ⬇️
plugins-test-and-upstream-apollo 34.96% <ø> (-0.07%) ⬇️
plugins-test-and-upstream-avsc 33.97% <ø> (-0.08%) ⬇️
plugins-test-and-upstream-bunyan 29.39% <ø> (-0.08%) ⬇️
plugins-test-and-upstream-connect 36.37% <ø> (-0.08%) ⬇️
plugins-test-and-upstream-graphql 36.00% <ø> (-0.06%) ⬇️
plugins-test-and-upstream-koa 35.93% <ø> (-0.08%) ⬇️
plugins-test-and-upstream-protobufjs 34.17% <ø> (-0.08%) ⬇️
plugins-test-and-upstream-rhea 39.31% <ø> (-0.08%) ⬇️
plugins-undici 34.69% <ø> (-0.08%) ⬇️
plugins-url 24.94% <ø> (ø)
plugins-valkey 33.88% <ø> (-0.08%) ⬇️
plugins-vm 24.94% <ø> (ø)
plugins-winston 29.94% <ø> (-0.08%) ⬇️
plugins-ws 37.21% <ø> (-0.08%) ⬇️
profiling-macos 43.47% <ø> (-0.03%) ⬇️
profiling-ubuntu 43.80% <ø> (-0.07%) ⬇️
profiling-windows 41.17% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-aws-sdk 33.55% <ø> (-0.06%) ⬇️
serverless-aws-sdk-latest-bedrockruntime 31.80% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-client 20.21% <ø> (ø)
serverless-aws-sdk-latest-dynamodb 34.30% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-eventbridge 27.43% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-kinesis 37.53% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-lambda 34.93% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-s3 32.74% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-serverless-peer-service 39.78% <ø> (-0.08%) ⬇️
serverless-aws-sdk-latest-sns 38.68% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-sqs 38.22% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-stepfunctions 33.48% <ø> (-0.07%) ⬇️
serverless-aws-sdk-latest-util ?
serverless-aws-sdk-oldest-aws-sdk 33.62% <ø> (-0.06%) ⬇️
serverless-aws-sdk-oldest-bedrockruntime 32.07% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-client 20.61% <ø> (ø)
serverless-aws-sdk-oldest-dynamodb 34.41% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-eventbridge 27.46% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-kinesis 37.66% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-lambda 34.99% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-s3 32.79% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-serverless-peer-service 39.82% <ø> (-0.08%) ⬇️
serverless-aws-sdk-oldest-sns 38.74% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-sqs 38.06% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-stepfunctions 33.54% <ø> (-0.07%) ⬇️
serverless-aws-sdk-oldest-util 47.38% <ø> (ø)
serverless-azure-durable-functions 36.89% <ø> (-0.17%) ⬇️
serverless-azure-functions-eventhubs 38.52% <ø> (ø)
serverless-azure-functions-servicebus 38.58% <ø> (ø)
serverless-lambda 34.83% <ø> (-0.10%) ⬇️
test-optimization-cucumber-latest-7.0.0 50.32% <ø> (+0.01%) ⬆️
test-optimization-cucumber-latest-latest 53.19% <ø> (+0.12%) ⬆️
test-optimization-cucumber-oldest-7.0.0 50.36% <ø> (+0.12%) ⬆️
test-optimization-cypress-latest-12.0.0-commonJS 48.79% <ø> (+0.07%) ⬆️
test-optimization-cypress-latest-12.0.0-esm 48.82% <ø> (+0.07%) ⬆️
test-optimization-cypress-latest-14.5.4-commonJS 48.64% <ø> (+0.07%) ⬆️
test-optimization-cypress-latest-14.5.4-esm 48.67% <ø> (+0.07%) ⬆️
test-optimization-cypress-latest-latest-commonJS 49.13% <ø> (+0.07%) ⬆️
test-optimization-cypress-latest-latest-esm 49.16% <ø> (+0.07%) ⬆️
test-optimization-cypress-oldest-12.0.0-commonJS 48.76% <ø> (+0.01%) ⬆️
test-optimization-cypress-oldest-12.0.0-esm 48.86% <ø> (+0.07%) ⬆️
test-optimization-cypress-oldest-14.5.4-commonJS 48.67% <ø> (+0.07%) ⬆️
test-optimization-cypress-oldest-14.5.4-esm 48.71% <ø> (+0.07%) ⬆️
test-optimization-jest-latest-latest 54.77% <ø> (-0.02%) ⬇️
test-optimization-jest-latest-oldest 53.60% <ø> (+0.05%) ⬆️
test-optimization-jest-oldest-latest 54.77% <ø> (+0.08%) ⬆️
test-optimization-jest-oldest-oldest 51.20% <ø> (-2.29%) ⬇️
test-optimization-mocha-latest-latest 53.62% <ø> (+0.08%) ⬆️
test-optimization-mocha-latest-oldest 51.28% <ø> (+0.08%) ⬆️
test-optimization-mocha-oldest-latest 53.68% <ø> (+0.06%) ⬆️
test-optimization-mocha-oldest-oldest 51.22% <ø> (+0.08%) ⬆️
test-optimization-playwright-latest-latest-playwright-active-test-span 44.34% <ø> (+0.28%) ⬆️
test-optimization-playwright-latest-latest-playwright-atr 43.12% <ø> (+0.11%) ⬆️
test-optimization-playwright-latest-latest-playwright-efd 43.54% <ø> (+0.09%) ⬆️
test-optimization-playwright-latest-latest-playwright-final-status 43.58% <ø> (+0.08%) ⬆️
test-optimization-playwright-latest-latest-playwright-impacted-tests 43.05% <ø> (ø)
test-optimization-playwright-latest-latest-playwright-reporting ?
test-optimization-playwright-latest-latest-playwright-test-management 44.78% <ø> (+0.10%) ⬆️
test-optimization-playwright-latest-oldest-playwright-active-test-span 44.40% <ø> (+0.28%) ⬆️
test-optimization-playwright-latest-oldest-playwright-atr 43.33% <ø> (+0.11%) ⬆️
test-optimization-playwright-latest-oldest-playwright-efd 43.59% <ø> (+0.09%) ⬆️
test-optimization-playwright-latest-oldest-playwright-final-status 43.66% <ø> (+0.11%) ⬆️
test-optimization-playwright-latest-oldest-playwright-impacted-tests 43.10% <ø> (ø)
test-optimization-playwright-latest-oldest-playwright-reporting 43.09% <ø> (+0.09%) ⬆️
test-optimization-playwright-latest-oldest-playwright-test-management ?
test-optimization-playwright-oldest-latest-playwright-active-test-span 44.37% <ø> (+0.28%) ⬆️
test-optimization-playwright-oldest-latest-playwright-atr 43.15% <ø> (+0.11%) ⬆️
test-optimization-playwright-oldest-latest-playwright-efd 43.55% <ø> (+0.09%) ⬆️
test-optimization-playwright-oldest-latest-playwright-final-status 43.62% <ø> (+0.11%) ⬆️
test-optimization-playwright-oldest-latest-playwright-impacted-tests 43.09% <ø> (ø)
test-optimization-playwright-oldest-latest-playwright-reporting 43.03% <ø> (+0.09%) ⬆️
test-optimization-playwright-oldest-latest-playwright-test-management 44.80% <ø> (+0.10%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-active-test-span 44.44% <ø> (+0.28%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-atr 43.37% <ø> (+0.11%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-efd ?
test-optimization-playwright-oldest-oldest-playwright-final-status 43.68% <ø> (+0.11%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-impacted-tests 43.14% <ø> (ø)
test-optimization-playwright-oldest-oldest-playwright-reporting 43.10% <ø> (+0.09%) ⬆️
test-optimization-playwright-oldest-oldest-playwright-test-management 44.87% <ø> (+0.10%) ⬆️
test-optimization-selenium-latest 45.54% <ø> (+0.07%) ⬆️
test-optimization-selenium-oldest 45.10% <ø> (+0.07%) ⬆️
test-optimization-testopt-active 46.94% <ø> (+0.13%) ⬆️
test-optimization-testopt-latest 46.90% <ø> (+0.13%) ⬆️
test-optimization-testopt-maintenance 46.94% <ø> (+0.13%) ⬆️
test-optimization-testopt-oldest 47.81% <ø> (+0.14%) ⬆️
test-optimization-vitest-latest 51.19% <ø> (+0.10%) ⬆️
test-optimization-vitest-oldest 48.28% <ø> (+0.33%) ⬆️

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

☔ View full report in Codecov by Sentry.
📢 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.

@pr-commenter

pr-commenter Bot commented May 25, 2026

Copy link
Copy Markdown

Benchmarks

Benchmark execution time: 2026-05-25 08:16:40

Comparing candidate commit 57da6fa in PR branch watson/fix-eslint-rule with baseline commit b50f1ca in branch master.

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

@BridgeAR BridgeAR left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

We should likely limit the rule quite a bit to where it applies. I deactivated it for now.

@BridgeAR BridgeAR merged commit e0b94ec into master May 25, 2026
788 of 789 checks passed
@BridgeAR BridgeAR deleted the watson/fix-eslint-rule branch May 25, 2026 12:25
This was referenced May 27, 2026
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.

2 participants