Skip to main content

Flagship Scorecard

Per-rule numbers for the 10 Interlace flagship ESLint rules, measured on real open-source repositories. Generated from the ILB-Flagship bench suite — dated snapshots committed to benchmarks/results/ilb-flagship/.

Provenance

Generated
2026-05-10 16:50 UTC
ESLint
v9.39.4
oxlint
1.63.0
Node
v24.13.0

Source JSON: benchmarks/results/ilb-flagship/2026-05-10.json · Schema ilb-flagship/v2.

Latency (cold → warm) and findings count

One row per flagship rule, measured on a real OSS repository. Cold is eslint --no-cache; Warm is the same command after a prior cold run with a stable cache location. oxlintcaches implicitly via file mtime + content hash. A dash means the stack wasn’t exercised for that rule (green-field rules have no competitor; not every rule has an oxlint port yet).

RuleRepoTierOurs coldOurs warmOurs findingsComp coldComp warmoxlint cold
import-next/no-cyclenext.js131KT120,651 ms470 ms5,24325,866 ms410 ms152 ms
pg/no-unsafe-querysupabase78KT115,568 ms714 ms0
secure-coding/no-hardcoded-credentialsvercel-ai15KT22,233 ms309 ms02,840 ms295 ms
secure-coding/no-redos-vulnerable-regexlodash60KT1228 ms194 ms1233 ms190 ms
mongodb-security/no-unsafe-querypayload35KT23,855 ms444 ms233
jwt/no-algorithm-nonesupabase78KT115,430 ms1,276 ms0
browser-security/no-postmessage-wildcard-originnext.js131KT119,570 ms394 ms2
react-features/hooks-exhaustive-depsnext.js131KT120,272 ms426 ms10219,696 ms410 ms81 ms
react-a11y/alt-textshadcn-ui100KT14,502 ms432 ms04,843 ms488 ms87 ms
vercel-ai-security/no-unsafe-output-handlingvercel-ai15KT22,218 ms293 ms0

Cache effectiveness (median across rules)

StackMedian coldMedian warmΔCache benefit
Ours (ESLint)9,966 ms429 ms9,537 ms96%
Competitor (ESLint)4,843 ms410 ms4,433 ms92%
oxlint native (competitor)87 ms86 ms1 ms1%

How to read this

  • Latency is single-shot today. For SLO-grade numbers we owe you median-of-N with confidence intervals (tracked on the roadmap).
  • Findings count is filtered by the rule’s own ID prefix — parser errors and unrelated rules are excluded.
  • A higher findings count is not automatically better. See the source markdown report (linked above) for the per-rule ours-only / theirs-only triage tables.
  • The 10 rules are the flagship list at .agent/flagship-rules.md. Each is type-unaware and locked by the meta-package test at packages/eslint-config-interlace/src/index.test.ts.

Re-run with npm run ilb:flagship at the repo root. Tracks 10 rules per snapshot.