react-doctor 0.9.12-dev.05ef989 → 0.9.12-dev.28a1a9f

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/{build-section-divider-BNQmYjME.js → build-section-divider-CdnczCsb.js} +7 -7
  2. package/dist/{ci-B9ir-2Up.js → ci-CvrWkFyG.js} +11 -11
  3. package/dist/cli.js +22 -22
  4. package/dist/{design-DrPr5wfS.js → design-C6QoD6j5.js} +4 -4
  5. package/dist/{exit-gracefully-C-_jVMT3.js → exit-gracefully-dQBRJxyW.js} +6 -6
  6. package/dist/index.js +3 -3
  7. package/dist/{inspect-BfdplEq6.js → inspect-CEYHtLuK.js} +15 -15
  8. package/dist/{install-CcPaQeBb.js → install-BPQG8X-S.js} +8 -8
  9. package/dist/{install-doctor-script-BlIhuJW6.js → install-doctor-script-BZJlaCgz.js} +4 -4
  10. package/dist/{install-github-workflow-DbnsoR9k.js → install-github-workflow-DQIDvKig.js} +6 -6
  11. package/dist/{install-react-doctor-COZnJROS.js → install-react-doctor-C3iiSm4r.js} +8 -8
  12. package/dist/{print-branded-header-B_Cgff5S.js → print-branded-header-B594Zejh.js} +4 -4
  13. package/dist/{read-object-file-NNLnIQKt.js → read-object-file-CIVH-Cg-.js} +4 -4
  14. package/dist/{record-metric-fdCvvcjz.js → record-metric-CFPfyOEW.js} +5 -5
  15. package/dist/{report-error-BH7DfHGY.js → report-error-DspMW6A2.js} +5 -5
  16. package/dist/{report-workflow-result-B3YeoXsK.js → report-workflow-result-GxDOhexG.js} +5 -5
  17. package/dist/{resolve-scope-gLUuBxjI.js → resolve-scope-CNV3HRNo.js} +6 -6
  18. package/dist/{rules-B5VC89MR.js → rules-C1Nt63By.js} +6 -6
  19. package/dist/{run-scan-app-Cl2mqLLB.js → run-scan-app-lYmDIiT4.js} +10 -10
  20. package/dist/{scan-7OBudBct.js → scan-D-Y1Qifl.js} +8 -8
  21. package/dist/{should-fail-scan-gate-Dch9vbPz.js → should-fail-scan-gate-XdfNPXf9.js} +10 -10
  22. package/dist/{should-skip-prompts-CyNdARgB.js → should-skip-prompts-DXyhnzjP.js} +4 -4
  23. package/dist/{unref-stdin-Cynhx9N1.js → unref-stdin-CwYEtpri.js} +4 -4
  24. package/dist/{version-axnZCkCZ.js → version-tT7fsrFN.js} +4 -4
  25. package/dist/{why-Ducgj7Hu.js → why-4B0HPeQG.js} +4 -4
  26. package/package.json +5 -4
@@ -1,7 +1,7 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="75dc9463-1990-5668-b47e-861c001795cb")}catch(e){}}();
3
- import { $n as CANONICAL_GITHUB_URL, Gt as highlighter, M as SENTRY_FLUSH_TIMEOUT_MS, a as isEnvFlagEnabled, ar as DOCS_URL, dt as anonymizeInPlace, ft as anonymizeText, i as isTelemetryEnabled, mn as scrubSensitivePaths, o as buildSentryScope } from "./record-metric-fdCvvcjz.js";
4
- import { c as isExpectedUserError } from "./unref-stdin-Cynhx9N1.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a510ef38-c335-5207-aa80-ce74d4d590a8")}catch(e){}}();
3
+ import { $n as CANONICAL_GITHUB_URL, Gt as highlighter, M as SENTRY_FLUSH_TIMEOUT_MS, a as isEnvFlagEnabled, ar as DOCS_URL, dt as anonymizeInPlace, ft as anonymizeText, i as isTelemetryEnabled, mn as scrubSensitivePaths, o as buildSentryScope } from "./record-metric-CFPfyOEW.js";
4
+ import { c as isExpectedUserError } from "./unref-stdin-CwYEtpri.js";
5
5
  import * as Sentry from "@sentry/node";
6
6
  //#region src/cli/utils/scrub-sentry-event.ts
7
7
  /**
@@ -70,13 +70,13 @@ const isDevVersion = (version) => version === "0.0.0" || version.includes("-");
70
70
  * uploads source-map artifacts under, so stack frames symbolicate. Honors the
71
71
  * standard `SENTRY_RELEASE` override.
72
72
  */
73
- const resolveSentryRelease = () => process.env.SENTRY_RELEASE || `react-doctor@0.9.12-dev.05ef989`;
73
+ const resolveSentryRelease = () => process.env.SENTRY_RELEASE || `react-doctor@0.9.12-dev.28a1a9f`;
74
74
  /**
75
75
  * Deployment environment shown in Sentry's environment filter. Defaults to
76
76
  * `production` for tagged releases and `development` for dev/unbuilt versions,
77
77
  * overridable via the standard `SENTRY_ENVIRONMENT` env var.
78
78
  */
79
- const resolveSentryEnvironment = () => process.env.SENTRY_ENVIRONMENT || (isDevVersion("0.9.12-dev.05ef989") ? "development" : "production");
79
+ const resolveSentryEnvironment = () => process.env.SENTRY_ENVIRONMENT || (isDevVersion("0.9.12-dev.28a1a9f") ? "development" : "production");
80
80
  //#endregion
81
81
  //#region src/instrument.ts
82
82
  let isInitialized = false;
@@ -226,5 +226,5 @@ const buildSectionDivider = () => highlighter.dim(`${DIVIDER_INDENT}${"─".repe
226
226
  //#endregion
227
227
  export { initializeSentry as a, flushSentry as i, buildFooterLinkLines as n, activeScanAbortRegistry as r, buildSectionDivider as t };
228
228
 
229
- //# sourceMappingURL=build-section-divider-BNQmYjME.js.map
230
- //# debugId=75dc9463-1990-5668-b47e-861c001795cb
229
+ //# sourceMappingURL=build-section-divider-CdnczCsb.js.map
230
+ //# debugId=a510ef38-c335-5207-aa80-ce74d4d590a8
@@ -1,14 +1,14 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="abb11e82-1cc9-5c09-a1ee-b6dce35ed6ca")}catch(e){}}();
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="154e0951-d688-5d8f-ba77-8bb4b3f19acc")}catch(e){}}();
3
3
  import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-ChKA3wi6.js";
4
- import { Gt as highlighter, Rn as runSync, er as CI_URL, sr as GITHUB_ACTIONS_SETUP_URL, t as recordCount, w as METRIC } from "./record-metric-fdCvvcjz.js";
5
- import { c as isExpectedUserError } from "./unref-stdin-Cynhx9N1.js";
6
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BH7DfHGY.js";
7
- import { L as cliLogger, c as spinner, n as findNearestPackageDirectory } from "./install-doctor-script-BlIhuJW6.js";
8
- import { a as readReactDoctorWorkflow, d as detectDefaultBranch, f as runCommand, l as prompts, n as getReactDoctorWorkflowPath, s as upgradeWorkflowActionToV2, t as buildWorkflowContent } from "./install-github-workflow-DbnsoR9k.js";
9
- import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, n as isScopeValue } from "./resolve-scope-gLUuBxjI.js";
10
- import { t as shouldSkipPrompts } from "./should-skip-prompts-CyNdARgB.js";
11
- import { t as printBrandedHeader } from "./print-branded-header-B_Cgff5S.js";
4
+ import { Gt as highlighter, Rn as runSync, er as CI_URL, sr as GITHUB_ACTIONS_SETUP_URL, t as recordCount, w as METRIC } from "./record-metric-CFPfyOEW.js";
5
+ import { c as isExpectedUserError } from "./unref-stdin-CwYEtpri.js";
6
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-DspMW6A2.js";
7
+ import { L as cliLogger, c as spinner, n as findNearestPackageDirectory } from "./install-doctor-script-BZJlaCgz.js";
8
+ import { a as readReactDoctorWorkflow, d as detectDefaultBranch, f as runCommand, l as prompts, n as getReactDoctorWorkflowPath, s as upgradeWorkflowActionToV2, t as buildWorkflowContent } from "./install-github-workflow-DQIDvKig.js";
9
+ import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, n as isScopeValue } from "./resolve-scope-CNV3HRNo.js";
10
+ import { t as shouldSkipPrompts } from "./should-skip-prompts-DXyhnzjP.js";
11
+ import { t as printBrandedHeader } from "./print-branded-header-B594Zejh.js";
12
12
  import * as path$1 from "node:path";
13
13
  import * as fs$1 from "node:fs";
14
14
  //#region src/cli/utils/ci/ci-provider.ts
@@ -7497,5 +7497,5 @@ const ciConfigAction = (options) => runCiCommand("config", runCiConfig, options)
7497
7497
  //#endregion
7498
7498
  export { ciConfigAction, ciInstallAction, ciUpgradeAction };
7499
7499
 
7500
- //# sourceMappingURL=ci-B9ir-2Up.js.map
7501
- //# debugId=abb11e82-1cc9-5c09-a1ee-b6dce35ed6ca
7500
+ //# sourceMappingURL=ci-CvrWkFyG.js.map
7501
+ //# debugId=154e0951-d688-5d8f-ba77-8bb4b3f19acc
package/dist/cli.js CHANGED
@@ -1,11 +1,11 @@
1
1
 
2
2
  !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="03462e9a-cc61-5815-b641-9bce568efeb2")}catch(e){}}();
3
3
  import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-ChKA3wi6.js";
4
- import { $n as CANONICAL_GITHUB_URL, Gt as highlighter, R as CliInputError, V as isDebugFlagEnabled, d as isJsonModeActive, er as CI_URL, g as VERSION, hn as setColorEnabled, i as isTelemetryEnabled, m as writeJsonErrorReport } from "./record-metric-fdCvvcjz.js";
5
- import { c as isExpectedUserError, r as getLastRunTraceId, s as shutdownTelemetry, t as unrefStdin } from "./unref-stdin-Cynhx9N1.js";
6
- import { a as initializeSentry, i as flushSentry } from "./build-section-divider-BNQmYjME.js";
7
- import { t as exitGracefully } from "./exit-gracefully-C-_jVMT3.js";
8
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BH7DfHGY.js";
4
+ import { $n as CANONICAL_GITHUB_URL, Gt as highlighter, R as CliInputError, V as isDebugFlagEnabled, d as isJsonModeActive, er as CI_URL, g as VERSION, hn as setColorEnabled, i as isTelemetryEnabled, m as writeJsonErrorReport } from "./record-metric-CFPfyOEW.js";
5
+ import { c as isExpectedUserError, r as getLastRunTraceId, s as shutdownTelemetry, t as unrefStdin } from "./unref-stdin-CwYEtpri.js";
6
+ import { a as initializeSentry, i as flushSentry } from "./build-section-divider-CdnczCsb.js";
7
+ import { t as exitGracefully } from "./exit-gracefully-dQBRJxyW.js";
8
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-DspMW6A2.js";
9
9
  import { execFileSync } from "node:child_process";
10
10
  //#region ../../node_modules/.pnpm/commander@14.0.3/node_modules/commander/lib/error.js
11
11
  var require_error = /* @__PURE__ */ __commonJSMin(((exports) => {
@@ -3481,7 +3481,7 @@ ${highlighter.dim("Learn more:")}
3481
3481
  const collectCategoryOption = (value, previousValues) => [...previousValues ?? [], value];
3482
3482
  const program = new Command().name("react-doctor").description("Diagnose React codebase health").version(VERSION, "-v, --version", "display the version number").argument("[directory]", "project directory to scan", ".").option("--lint", "enable linting").option("--no-lint", "skip linting").addOption(new Option("--dead-code").hideHelp()).addOption(new Option("--no-dead-code").hideHelp()).option("--supply-chain", "enable the dependency supply-chain scan (default)").option("--no-supply-chain", "skip the dependency supply-chain scan (Socket.dev dependency health checks)").option("--verbose", "show every rule and per-file details (default shows top 3 rules)").option("--debug", "force a Sentry trace and print its id at the end (paste it into a bug report)").option("--output-dir <dir>", "directory for the full diagnostics dump (default: a temp folder)").option("--score", "output only the score").option("--json", "output a single structured JSON report (suppresses other output)").option("--json-compact", "with --json, emit compact JSON (no indentation)").option("--json-out <path>", "with --json, write the report to a file instead of stdout").option("--no-cache", "disable all scan caches for this run").option("-y, --yes", "skip prompts, scan all workspace projects").option("--no-parallel", "lint serially with one worker (default: parallel across CPU cores; set the worker count with REACT_DOCTOR_PARALLEL)").option("--project <name>", "select projects: workspace names or directory paths (comma-separated for multiple); overrides the `projects` config field").option("--scope <value>", "how much supported JS/TS and inline HTML script source to scan/report: full (default), files, changed (only new issues vs base), or lines (issues whose source spans touch changed lines)").option("--base <ref>", "base git ref for files/changed/lines scope (auto-detected when omitted)").option("--include-untracked", "with --scope files/changed/lines, also scan ordinary untracked files (respects .gitignore)").addOption(new Option("--diff [base]", "[deprecated] alias for --scope changed (pass `false` to force a full scan)").hideHelp()).addOption(new Option("--changed-files-from <file>", "scan source files listed in a newline-delimited changed-files file").hideHelp()).option("--no-score", "skip the score API, the share URL, and crash reporting").addOption(new Option("--category <category>", "only show diagnostics in a category (repeatable; e.g. Security)").argParser(collectCategoryOption)).option("--no-telemetry", "alias for --no-score (skip the score API, share URL, and crash reporting)").option("--staged", "scan only staged (git index) files for pre-commit hooks (honors --project and config `projects`; exits 0 when nothing is staged)").option("--max-duration <seconds>", MAX_DURATION_OPTION_DESCRIPTION).option("--blocking <level>", "severity that fails CI: error (default), warning, or none (advisory)").addOption(new Option("--fail-on <level>", "[deprecated] alias for --blocking <level>").hideHelp()).option("--no-respect-inline-disables", "audit mode: neutralize inline lint suppressions before scanning").option("--warnings", "show warning-severity diagnostics (default)").option("--no-warnings", "hide warning-severity diagnostics (errors only)").option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addHelpText("after", renderRootHelpEpilog);
3483
3483
  program.action(async (directory = ".", flags) => {
3484
- const { runScanCommand } = await import("./scan-7OBudBct.js");
3484
+ const { runScanCommand } = await import("./scan-D-Y1Qifl.js");
3485
3485
  return runScanCommand({
3486
3486
  directory,
3487
3487
  flags,
@@ -3489,71 +3489,71 @@ program.action(async (directory = ".", flags) => {
3489
3489
  });
3490
3490
  });
3491
3491
  program.command("design [directory]").description("Run only the focused UI design diagnostics").addHelpText("after", renderDesignHelpEpilog).action(async (directory, _options, command) => {
3492
- const { designAction } = await import("./design-DrPr5wfS.js");
3492
+ const { designAction } = await import("./design-C6QoD6j5.js");
3493
3493
  return designAction(directory ?? ".", command.optsWithGlobals());
3494
3494
  });
3495
3495
  program.command("why <location>").description("Explain why a rule fired (or why a suppression didn't apply) at a file:line").option("--project <name>", "select projects: workspace names or directory paths (comma-separated for multiple)").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async (location, options) => {
3496
- const { whyAction } = await import("./why-Ducgj7Hu.js");
3496
+ const { whyAction } = await import("./why-4B0HPeQG.js");
3497
3497
  return whyAction(location, options);
3498
3498
  });
3499
3499
  program.command("install").alias("setup").description("Install the react-doctor skill into your coding agents and optional git hook").option("-y, --yes", "skip prompts, install for all detected agents").option("--dry-run", "show what would be installed without writing files").option("--agent-hooks", "install end-of-turn agent hooks for Claude Code and Cursor").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addHelpText("after", renderInstallHelpEpilog).action(async (options, command) => {
3500
- const { installAction } = await import("./install-CcPaQeBb.js");
3500
+ const { installAction } = await import("./install-BPQG8X-S.js");
3501
3501
  return installAction(options, command);
3502
3502
  });
3503
3503
  const providerOption = ["--provider <name>", "ci provider: github-actions or gitlab-ci (auto-detected by default)"];
3504
3504
  const prOption = ["--pr", "open a pull request with the change instead of writing it to the working tree"];
3505
3505
  const ci = program.command("ci").description("Set up, upgrade, and configure React Doctor in your CI");
3506
3506
  ci.command("install").description("Add a CI workflow that scans every pull request").option(...providerOption).option(...prOption).option("--blocking <level>", "gate level: none (advisory, default), warning, or error").option("--scope <value>", "what a pull-request scan reports: changed (default), files, lines, full").option("--comment", "post a summary comment on each pull request").option("--no-comment", "don't post a summary comment").option("--review-comments", "add inline review comments on changed lines").option("--no-review-comments", "don't add inline review comments").option("--commit-status", "report a commit status with the health score").option("--no-commit-status", "don't report a commit status").option("-y, --yes", "skip prompts; use the defaults").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addHelpText("after", renderCiHelpEpilog).action(async (_options, command) => {
3507
- const { ciInstallAction } = await import("./ci-B9ir-2Up.js");
3507
+ const { ciInstallAction } = await import("./ci-CvrWkFyG.js");
3508
3508
  return ciInstallAction(command.optsWithGlobals());
3509
3509
  });
3510
3510
  ci.command("config").description("Change the gate, scan scope, and pull-request reporting").option(...providerOption).option("--blocking <level>", "gate level: none (advisory), warning, or error").option("--scope <value>", "what a pull-request scan reports: changed, files, lines, or full").option("--comment", "post a summary comment on each pull request").option("--no-comment", "don't post a summary comment").option("--review-comments", "add inline review comments on changed lines").option("--no-review-comments", "don't add inline review comments").option("--commit-status", "report a commit status with the health score").option("--no-commit-status", "don't report a commit status").option("-y, --yes", "skip prompts; print the current settings").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async (_options, command) => {
3511
- const { ciConfigAction } = await import("./ci-B9ir-2Up.js");
3511
+ const { ciConfigAction } = await import("./ci-CvrWkFyG.js");
3512
3512
  return ciConfigAction(command.optsWithGlobals());
3513
3513
  });
3514
3514
  ci.command("upgrade").description("Upgrade the CI workflow to the action's current major").option(...providerOption).option(...prOption).option("-y, --yes", "skip prompts").option("-c, --cwd <cwd>", "working directory", process.cwd()).option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async (_options, command) => {
3515
- const { ciUpgradeAction } = await import("./ci-B9ir-2Up.js");
3515
+ const { ciUpgradeAction } = await import("./ci-CvrWkFyG.js");
3516
3516
  return ciUpgradeAction(command.optsWithGlobals());
3517
3517
  });
3518
3518
  program.command("version").description("show the version with Node and platform info").option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").action(async () => {
3519
- const { versionAction } = await import("./version-axnZCkCZ.js");
3519
+ const { versionAction } = await import("./version-tT7fsrFN.js");
3520
3520
  return versionAction();
3521
3521
  });
3522
3522
  const rules = program.command("rules").description("List, explain, and configure which React Doctor rules run");
3523
3523
  rules.command("list").description("List rules and the severity they run at under your config").option("--category <name>", "only show rules in a category (e.g. Performance)").option("--tag <name>", "only show rules with a tag (e.g. design, test-noise)").option("--framework <name>", "only show rules for a framework (e.g. global, nextjs)").option("--configured", "only show rules your config has changed from the default").option("--json", "output a structured JSON array").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (_options, command) => {
3524
- const { rulesListAction } = await import("./rules-B5VC89MR.js");
3524
+ const { rulesListAction } = await import("./rules-C1Nt63By.js");
3525
3525
  return rulesListAction(command.optsWithGlobals());
3526
3526
  });
3527
3527
  rules.command("explain <rule>").description("Explain why a rule matters, its current severity, and how to configure it").option("--json", "output a structured JSON object").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, _options, command) => {
3528
- const { rulesExplainAction } = await import("./rules-B5VC89MR.js");
3528
+ const { rulesExplainAction } = await import("./rules-C1Nt63By.js");
3529
3529
  return rulesExplainAction(rule, command.optsWithGlobals());
3530
3530
  });
3531
3531
  rules.command("set <rule> <severity>").description("Set a rule's severity: off, warn, or error").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, severity, _options, command) => {
3532
- const { rulesSetAction } = await import("./rules-B5VC89MR.js");
3532
+ const { rulesSetAction } = await import("./rules-C1Nt63By.js");
3533
3533
  return rulesSetAction(rule, severity, command.optsWithGlobals());
3534
3534
  });
3535
3535
  rules.command("enable <rule>").description("Enable a rule at its recommended severity (or pass --severity)").option("--severity <level>", "severity to enable at: warn or error").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, _options, command) => {
3536
- const { rulesEnableAction } = await import("./rules-B5VC89MR.js");
3536
+ const { rulesEnableAction } = await import("./rules-C1Nt63By.js");
3537
3537
  return rulesEnableAction(rule, command.optsWithGlobals());
3538
3538
  });
3539
3539
  rules.command("disable <rule>").description("Disable a rule so it never runs").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (rule, _options, command) => {
3540
- const { rulesDisableAction } = await import("./rules-B5VC89MR.js");
3540
+ const { rulesDisableAction } = await import("./rules-C1Nt63By.js");
3541
3541
  return rulesDisableAction(rule, command.optsWithGlobals());
3542
3542
  });
3543
3543
  rules.command("category <category> <severity>").description("Set the severity for a whole category (off, warn, error)").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (category, severity, _options, command) => {
3544
- const { rulesCategoryAction } = await import("./rules-B5VC89MR.js");
3544
+ const { rulesCategoryAction } = await import("./rules-C1Nt63By.js");
3545
3545
  return rulesCategoryAction(category, severity, command.optsWithGlobals());
3546
3546
  });
3547
3547
  rules.command("ignore-tag <tag>").description("Skip a whole rule family by tag before linting (e.g. design)").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (tag, _options, command) => {
3548
- const { rulesIgnoreTagAction } = await import("./rules-B5VC89MR.js");
3548
+ const { rulesIgnoreTagAction } = await import("./rules-C1Nt63By.js");
3549
3549
  return rulesIgnoreTagAction(tag, command.optsWithGlobals());
3550
3550
  });
3551
3551
  rules.command("unignore-tag <tag>").description("Stop ignoring a tag previously skipped via ignore-tag").option("-c, --cwd <cwd>", "working directory", process.cwd()).action(async (tag, _options, command) => {
3552
- const { rulesUnignoreTagAction } = await import("./rules-B5VC89MR.js");
3552
+ const { rulesUnignoreTagAction } = await import("./rules-C1Nt63By.js");
3553
3553
  return rulesUnignoreTagAction(tag, command.optsWithGlobals());
3554
3554
  });
3555
3555
  program.command("experimental-tui [directory]", { hidden: true }).description("[experimental] interactive, scrollable scan report").option("--blocking <level>", "severity that fails CI: error (default), warning, or none (advisory)").option("--color", "force colored output").option("--no-color", "disable colored output (also honors NO_COLOR)").addOption(new Option("--no-dead-code").hideHelp()).option("--no-supply-chain", "skip the dependency supply-chain scan").option("--score", "only print the numeric score (for scripts and CI)").option("--no-score", "skip the score API, the share URL, and crash reporting").option("--no-cache", "disable all scan caches for this run").option("--max-duration <seconds>", MAX_DURATION_OPTION_DESCRIPTION).option("-p, --project <names>", "scan specific workspace projects (comma-separated, or *)").option("-y, --yes", "skip the project prompt and scan every discovered project").action(async (directory = ".", _localOptions, command) => {
3556
- const { runScanCommand } = await import("./scan-7OBudBct.js");
3556
+ const { runScanCommand } = await import("./scan-D-Y1Qifl.js");
3557
3557
  return runScanCommand({
3558
3558
  directory,
3559
3559
  flags: command.optsWithGlobals(),
@@ -1,6 +1,6 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1d3a2866-e17d-5edb-9d80-288679bcf6d5")}catch(e){}}();
3
- import { t as inspectAction } from "./inspect-BfdplEq6.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8e58ad56-88ef-508c-9d44-a0034346b9cd")}catch(e){}}();
3
+ import { t as inspectAction } from "./inspect-CEYHtLuK.js";
4
4
  //#region src/cli/commands/design.ts
5
5
  const designAction = async (directory, flags) => inspectAction(directory, {
6
6
  ...flags,
@@ -10,5 +10,5 @@ const designAction = async (directory, flags) => inspectAction(directory, {
10
10
  //#endregion
11
11
  export { designAction };
12
12
 
13
- //# sourceMappingURL=design-DrPr5wfS.js.map
14
- //# debugId=1d3a2866-e17d-5edb-9d80-288679bcf6d5
13
+ //# sourceMappingURL=design-C6QoD6j5.js.map
14
+ //# debugId=8e58ad56-88ef-508c-9d44-a0034346b9cd
@@ -1,8 +1,8 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4bcd4adf-f088-5e92-bfac-f9106280eb2f")}catch(e){}}();
3
- import { d as isJsonModeActive, m as writeJsonErrorReport } from "./record-metric-fdCvvcjz.js";
4
- import { s as shutdownTelemetry } from "./unref-stdin-Cynhx9N1.js";
5
- import { i as flushSentry, n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-BNQmYjME.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="35e0cca5-cdf2-53c1-ae27-a8ad6483dd63")}catch(e){}}();
3
+ import { d as isJsonModeActive, m as writeJsonErrorReport } from "./record-metric-CFPfyOEW.js";
4
+ import { s as shutdownTelemetry } from "./unref-stdin-CwYEtpri.js";
5
+ import { i as flushSentry, n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-CdnczCsb.js";
6
6
  //#region src/cli/utils/active-tui-renderer.ts
7
7
  let activeTuiRenderer = null;
8
8
  const registerActiveTuiRenderer = (renderer) => {
@@ -44,5 +44,5 @@ const exitGracefully = () => {
44
44
  //#endregion
45
45
  export { registerActiveTuiRenderer as n, exitGracefully as t };
46
46
 
47
- //# sourceMappingURL=exit-gracefully-C-_jVMT3.js.map
48
- //# debugId=4bcd4adf-f088-5e92-bfac-f9106280eb2f
47
+ //# sourceMappingURL=exit-gracefully-dQBRJxyW.js.map
48
+ //# debugId=35e0cca5-cdf2-53c1-ae27-a8ad6483dd63
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="753171a4-38be-578c-bc4e-e5a2caa33d7d")}catch(e){}}();
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3404885b-ce22-59ed-b773-5398b6af4974")}catch(e){}}();
3
3
  import { i as __toESM$1, r as __require, t as __commonJSMin$1 } from "./chunk-ChKA3wi6.js";
4
4
  import { createRequire } from "node:module";
5
5
  import * as path$1$1 from "node:path";
@@ -74523,7 +74523,7 @@ const buildRelatedLocations = (labels, filePath, sourceBuffer) => {
74523
74523
  const isOxlintSpan = (value) => isRecord(value) && typeof value.offset === "number" && typeof value.length === "number" && typeof value.line === "number" && typeof value.column === "number";
74524
74524
  const isOxlintLabel = (value) => isRecord(value) && isOxlintSpan(value.span);
74525
74525
  const isMappableOxlintDiagnostic = (value) => isRecord(value) && typeof value.code === "string" && value.code.length > 0 && typeof value.filename === "string" && value.filename.length > 0 && (value.severity === "warning" || value.severity === "error") && Array.isArray(value.labels) && value.labels.every(isOxlintLabel);
74526
- const isEngineFailureDiagnostic = (value) => !isRecord(value) || typeof value.filename !== "string" || value.filename.length === 0;
74526
+ const isEngineFailureDiagnostic = (value) => !isRecord(value) || typeof value.filename !== "string" || value.filename.length === 0 || typeof value.message === "string" && value.message.startsWith("Error running JS plugin.") && (typeof value.code !== "string" || value.code.length === 0) && Array.isArray(value.labels) && value.labels.length === 0;
74527
74527
  const isOxlintOutput = (value) => isRecord(value) && Array.isArray(value.diagnostics);
74528
74528
  /**
74529
74529
  * Parses one oxlint subprocess's stdout into a flat `Diagnostic[]`.
@@ -77882,4 +77882,4 @@ const toJsonReport = (result, options) => buildJsonReport({
77882
77882
  export { AmbiguousProjectError, NoReactDependencyError, NotADirectoryError, PackageJsonNotFoundError, ProjectNotFoundError, ReactDoctorError, buildJsonReport, buildJsonReportError, clearCaches, defineConfig, diagnose, filterSourceFiles, getDiffInfo, hasReactRuntime, isProjectDiscoveryError, isReactDoctorError, summarizeDiagnostics, toJsonReport };
77883
77883
 
77884
77884
  //# sourceMappingURL=index.js.map
77885
- //# debugId=753171a4-38be-578c-bc4e-e5a2caa33d7d
77885
+ //# debugId=3404885b-ce22-59ed-b773-5398b6af4974
@@ -1,17 +1,17 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e9cb09af-42e0-5486-8802-ed113fa37eb3")}catch(e){}}();
3
- import { $n as CANONICAL_GITHUB_URL, F as STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES, G as isCiOrCodingAgentEnvironment, Gt as highlighter, It as getBaselineDiffPlan, K as isCodingAgentEnvironment, Ln as runPromise, Lt as getChangedLineRanges, Nt as findLegacyConfig, Ot as detectAiTrainingEnvironment, P as STAGED_FILES_TEMP_DIR_PREFIX, Pn as provide$1, R as CliInputError, Sr as messageFromUnknown, Ut as hasSupportedFrameworkOrLibrary, V as isDebugFlagEnabled, Wn as provide, Y as Git, dn as resolveScanTarget, f as setJsonReportDirectory, g as VERSION, gr as STAGED_FILES_PROJECT_CONFIG_FILENAMES, h as writeJsonReport, kn as gen, kt as discoverSupportedSubprojects, lt as StagedFiles, m as writeJsonErrorReport, mt as buildJsonReport, n as recordDistribution, on as remainingDeadlineBudgetMs, p as setJsonReportMode, qt as isPathInsideDirectory, rn as mapWithConcurrency, t as recordCount, tn as listWorkspacePackages, u as enableJsonMode, vn as toRelativePath, w as METRIC, xr as isPlainObject, yr as isErrnoException, zt as getDiffInfo } from "./record-metric-fdCvvcjz.js";
4
- import { c as isExpectedUserError, s as shutdownTelemetry } from "./unref-stdin-Cynhx9N1.js";
5
- import { i as flushSentry } from "./build-section-divider-BNQmYjME.js";
6
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BH7DfHGY.js";
7
- import { F as runGitRaw, L as cliLogger, c as spinner, i as hasDoctorScript, n as findNearestPackageDirectory, o as isSpinnerSilent, s as setSpinnerSilent } from "./install-doctor-script-BlIhuJW6.js";
8
- import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, i as isReactDoctorWorkflowInstalled, l as prompts, s as upgradeWorkflowActionToV2 } from "./install-github-workflow-DbnsoR9k.js";
9
- import { c as openWorkflowPullRequest, i as warnDeprecatedDiff, l as stageWorkflowFile, r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-gLUuBxjI.js";
10
- import { t as shouldSkipPrompts } from "./should-skip-prompts-CyNdARgB.js";
11
- import { A as resolveMergeBaseRef, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, I as printDiagnosticsDump, O as createInvocationInspect, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, V as buildEmptyReportMessage, _ as resolveCliInspectOptions, a as projectManifestChanged, b as setUpGitHubActions, c as selectProjects, d as resolveProjectChangedLineRanges, f as resolveProjectDiffIncludePaths, g as resolveWorkspaceDeadCodeOwner, h as retryMissingProjectScores, i as validateModeFlags, j as printHeadlessReport, k as inspect, l as buildCodeFrame, m as resolveProjectRelativeDirectory, n as formatSkippedProjectsMessage, o as partitionProjectScanOutcomes, p as resolveProjectSourceFilePaths, r as validateIncludeUntrackedScope, t as shouldFailScanGate, u as resolveProjectScan, v as filterScansForSurface, w as launchCliAgent, x as detectLaunchableAgents, y as countUniqueScannedFiles, z as filterDiagnosticsByCategories } from "./should-fail-scan-gate-Dch9vbPz.js";
12
- import { a as recordGate, i as readPreference, o as runMigrations, p as SETUP_HINT_EVENT, r as isGatePending, s as writePreference, u as HANDOFF_TARGET_PREFERENCE_ID } from "./report-workflow-result-B3YeoXsK.js";
13
- import { a as askUpgradeActionVersion, c as recordCiPromptDecision, i as installReactDoctorAgentHooks, l as hasHandledActionUpgrade, o as askAddToGitHubActions, r as findAgentsWithOutdatedReactDoctorHooks, s as hasHandledCiPrompt, t as getSkillSourceDirectory, u as recordActionUpgradeDecision } from "./install-react-doctor-COZnJROS.js";
14
- import { t as readObjectFile } from "./read-object-file-NNLnIQKt.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="d12440f2-4f0b-5278-9431-0f07c02e3d17")}catch(e){}}();
3
+ import { $n as CANONICAL_GITHUB_URL, F as STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES, G as isCiOrCodingAgentEnvironment, Gt as highlighter, It as getBaselineDiffPlan, K as isCodingAgentEnvironment, Ln as runPromise, Lt as getChangedLineRanges, Nt as findLegacyConfig, Ot as detectAiTrainingEnvironment, P as STAGED_FILES_TEMP_DIR_PREFIX, Pn as provide$1, R as CliInputError, Sr as messageFromUnknown, Ut as hasSupportedFrameworkOrLibrary, V as isDebugFlagEnabled, Wn as provide, Y as Git, dn as resolveScanTarget, f as setJsonReportDirectory, g as VERSION, gr as STAGED_FILES_PROJECT_CONFIG_FILENAMES, h as writeJsonReport, kn as gen, kt as discoverSupportedSubprojects, lt as StagedFiles, m as writeJsonErrorReport, mt as buildJsonReport, n as recordDistribution, on as remainingDeadlineBudgetMs, p as setJsonReportMode, qt as isPathInsideDirectory, rn as mapWithConcurrency, t as recordCount, tn as listWorkspacePackages, u as enableJsonMode, vn as toRelativePath, w as METRIC, xr as isPlainObject, yr as isErrnoException, zt as getDiffInfo } from "./record-metric-CFPfyOEW.js";
4
+ import { c as isExpectedUserError, s as shutdownTelemetry } from "./unref-stdin-CwYEtpri.js";
5
+ import { i as flushSentry } from "./build-section-divider-CdnczCsb.js";
6
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-DspMW6A2.js";
7
+ import { F as runGitRaw, L as cliLogger, c as spinner, i as hasDoctorScript, n as findNearestPackageDirectory, o as isSpinnerSilent, s as setSpinnerSilent } from "./install-doctor-script-BZJlaCgz.js";
8
+ import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, i as isReactDoctorWorkflowInstalled, l as prompts, s as upgradeWorkflowActionToV2 } from "./install-github-workflow-DQIDvKig.js";
9
+ import { c as openWorkflowPullRequest, i as warnDeprecatedDiff, l as stageWorkflowFile, r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-CNV3HRNo.js";
10
+ import { t as shouldSkipPrompts } from "./should-skip-prompts-DXyhnzjP.js";
11
+ import { A as resolveMergeBaseRef, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, I as printDiagnosticsDump, O as createInvocationInspect, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, V as buildEmptyReportMessage, _ as resolveCliInspectOptions, a as projectManifestChanged, b as setUpGitHubActions, c as selectProjects, d as resolveProjectChangedLineRanges, f as resolveProjectDiffIncludePaths, g as resolveWorkspaceDeadCodeOwner, h as retryMissingProjectScores, i as validateModeFlags, j as printHeadlessReport, k as inspect, l as buildCodeFrame, m as resolveProjectRelativeDirectory, n as formatSkippedProjectsMessage, o as partitionProjectScanOutcomes, p as resolveProjectSourceFilePaths, r as validateIncludeUntrackedScope, t as shouldFailScanGate, u as resolveProjectScan, v as filterScansForSurface, w as launchCliAgent, x as detectLaunchableAgents, y as countUniqueScannedFiles, z as filterDiagnosticsByCategories } from "./should-fail-scan-gate-XdfNPXf9.js";
12
+ import { a as recordGate, i as readPreference, o as runMigrations, p as SETUP_HINT_EVENT, r as isGatePending, s as writePreference, u as HANDOFF_TARGET_PREFERENCE_ID } from "./report-workflow-result-GxDOhexG.js";
13
+ import { a as askUpgradeActionVersion, c as recordCiPromptDecision, i as installReactDoctorAgentHooks, l as hasHandledActionUpgrade, o as askAddToGitHubActions, r as findAgentsWithOutdatedReactDoctorHooks, s as hasHandledCiPrompt, t as getSkillSourceDirectory, u as recordActionUpgradeDecision } from "./install-react-doctor-C3iiSm4r.js";
14
+ import { t as readObjectFile } from "./read-object-file-CIVH-Cg-.js";
15
15
  import * as path$1 from "node:path";
16
16
  import * as fs$1 from "node:fs";
17
17
  import { tmpdir } from "node:os";
@@ -1440,5 +1440,5 @@ const inspectAction = async (directory, flags, invocationCommand = "inspect") =>
1440
1440
  //#endregion
1441
1441
  export { warnDeprecatedFailOn as n, runProjectMigrations as r, inspectAction as t };
1442
1442
 
1443
- //# sourceMappingURL=inspect-BfdplEq6.js.map
1444
- //# debugId=e9cb09af-42e0-5486-8802-ed113fa37eb3
1443
+ //# sourceMappingURL=inspect-CEYHtLuK.js.map
1444
+ //# debugId=d12440f2-4f0b-5278-9431-0f07c02e3d17
@@ -1,10 +1,10 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="099323bd-f8ea-509f-a3ee-33532b921639")}catch(e){}}();
3
- import { Rn as runSync, t as recordCount, w as METRIC } from "./record-metric-fdCvvcjz.js";
4
- import { c as isExpectedUserError } from "./unref-stdin-Cynhx9N1.js";
5
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BH7DfHGY.js";
6
- import { t as printBrandedHeader } from "./print-branded-header-B_Cgff5S.js";
7
- import { n as runInstallReactDoctor } from "./install-react-doctor-COZnJROS.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a8e61acf-9570-5505-9b3f-4ef985e77450")}catch(e){}}();
3
+ import { Rn as runSync, t as recordCount, w as METRIC } from "./record-metric-CFPfyOEW.js";
4
+ import { c as isExpectedUserError } from "./unref-stdin-CwYEtpri.js";
5
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-DspMW6A2.js";
6
+ import { t as printBrandedHeader } from "./print-branded-header-B594Zejh.js";
7
+ import { n as runInstallReactDoctor } from "./install-react-doctor-C3iiSm4r.js";
8
8
  //#region src/cli/commands/install.ts
9
9
  const installAction = async (options, command) => {
10
10
  recordCount(METRIC.cliInvoked, 1, { command: "install" });
@@ -28,5 +28,5 @@ const installAction = async (options, command) => {
28
28
  //#endregion
29
29
  export { installAction };
30
30
 
31
- //# sourceMappingURL=install-CcPaQeBb.js.map
32
- //# debugId=099323bd-f8ea-509f-a3ee-33532b921639
31
+ //# sourceMappingURL=install-BPQG8X-S.js.map
32
+ //# debugId=a8e61acf-9570-5505-9b3f-4ef985e77450
@@ -1,6 +1,6 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f1bc22eb-17f8-5a15-bf1c-49edee28de2d")}catch(e){}}();
3
- import { Cn as info$1, Gt as highlighter, O as RUN_GIT_MAX_BUFFER_BYTES, Rn as runSync, Sn as error$1, Tn as warn, wn as log, z as isNonInteractiveEnvironment } from "./record-metric-fdCvvcjz.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="bb776093-c0aa-5d9a-bd4f-178aaf858439")}catch(e){}}();
3
+ import { Cn as info$1, Gt as highlighter, O as RUN_GIT_MAX_BUFFER_BYTES, Rn as runSync, Sn as error$1, Tn as warn, wn as log, z as isNonInteractiveEnvironment } from "./record-metric-CFPfyOEW.js";
4
4
  import { execFileSync } from "node:child_process";
5
5
  import * as path$1 from "node:path";
6
6
  import * as fs$1 from "node:fs";
@@ -3247,5 +3247,5 @@ const installReactDoctorScriptStep = (projectRoot) => {
3247
3247
  //#endregion
3248
3248
  export { packageHasNestedRecordKey as A, SIMPLE_GIT_HOOKS_CONFIG_FILE as C, getPackageJsonPath as D, ensureTrailingNewline as E, runGitRaw as F, writeJsonFile as I, cliLogger as L, readPackageJson as M, resolveGitPath as N, isRecord as O, runGit as P, REACT_DOCTOR_COMMAND as S, VITE_PLUS_HOOKS_PATH as T, LEFTHOOK_CONFIG_FILES as _, installReactDoctorScriptStep as a, OVERCOMMIT_CONFIG_FILE as b, spinner as c, stripAnsi as d, isUnicodeSupported as f, HUSKY_HOOKS_PATH as g, HOOK_RELATIVE_PATH as h, hasDoctorScript as i, packageHasRecordKey as j, packageHasDependency as k, isFullWidth as l, HOOK_FILE_NAME as m, findNearestPackageDirectory as n, isSpinnerSilent as o, chalk as p, hasDoctorDependency as r, setSpinnerSilent as s, DOCTOR_PACKAGE_NAME as t, isWide as u, LEGACY_HOOK_RUNNER_RELATIVE_PATH as v, SIMPLE_GIT_HOOKS_PACKAGE_JSON_KEY as w, PRE_COMMIT_CONFIG_FILE as x, NON_BLOCKING_REACT_DOCTOR_COMMAND as y };
3249
3249
 
3250
- //# sourceMappingURL=install-doctor-script-BlIhuJW6.js.map
3251
- //# debugId=f1bc22eb-17f8-5a15-bf1c-49edee28de2d
3250
+ //# sourceMappingURL=install-doctor-script-BZJlaCgz.js.map
3251
+ //# debugId=bb776093-c0aa-5d9a-bd4f-178aaf858439
@@ -1,8 +1,8 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3b1f63b8-e67f-5f1e-a57a-7c5700117cc0")}catch(e){}}();
3
- import { C as GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS } from "./record-metric-fdCvvcjz.js";
4
- import { t as unrefStdin } from "./unref-stdin-Cynhx9N1.js";
5
- import { L as cliLogger } from "./install-doctor-script-BlIhuJW6.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f62c21fa-e7e2-5cf4-9ca4-aa3e9d56b5f9")}catch(e){}}();
3
+ import { C as GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS } from "./record-metric-CFPfyOEW.js";
4
+ import { t as unrefStdin } from "./unref-stdin-CwYEtpri.js";
5
+ import { L as cliLogger } from "./install-doctor-script-BZJlaCgz.js";
6
6
  import { createRequire } from "node:module";
7
7
  import { execFile } from "node:child_process";
8
8
  import * as path$1 from "node:path";
@@ -263,5 +263,5 @@ const upgradeReactDoctorWorkflowInPlace = (projectRoot) => {
263
263
  //#endregion
264
264
  export { readReactDoctorWorkflow as a, workflowUsesV1Action as c, detectDefaultBranch as d, runCommand as f, isReactDoctorWorkflowInstalled as i, prompts as l, getReactDoctorWorkflowPath as n, upgradeReactDoctorWorkflowInPlace as o, installReactDoctorWorkflow as r, upgradeWorkflowActionToV2 as s, buildWorkflowContent as t, isCommandAvailable as u };
265
265
 
266
- //# sourceMappingURL=install-github-workflow-DbnsoR9k.js.map
267
- //# debugId=3b1f63b8-e67f-5f1e-a57a-7c5700117cc0
266
+ //# sourceMappingURL=install-github-workflow-DQIDvKig.js.map
267
+ //# debugId=f62c21fa-e7e2-5cf4-9ca4-aa3e9d56b5f9
@@ -1,10 +1,10 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6c2ef451-cba6-58f2-9614-b874c2d89d20")}catch(e){}}();
3
- import { Gt as highlighter, R as CliInputError, S as CI_TRUST_COMPANIES, hr as SKILL_NAME, sr as GITHUB_ACTIONS_SETUP_URL, t as recordCount, w as METRIC, yr as isErrnoException } from "./record-metric-fdCvvcjz.js";
4
- import { A as packageHasNestedRecordKey, D as getPackageJsonPath, E as ensureTrailingNewline, I as writeJsonFile, L as cliLogger, M as readPackageJson, N as resolveGitPath, O as isRecord, P as runGit, S as REACT_DOCTOR_COMMAND, T as VITE_PLUS_HOOKS_PATH, _ as LEFTHOOK_CONFIG_FILES, a as installReactDoctorScriptStep, b as OVERCOMMIT_CONFIG_FILE, c as spinner, g as HUSKY_HOOKS_PATH, h as HOOK_RELATIVE_PATH, j as packageHasRecordKey, k as packageHasDependency, m as HOOK_FILE_NAME, n as findNearestPackageDirectory, r as hasDoctorDependency, t as DOCTOR_PACKAGE_NAME, v as LEGACY_HOOK_RUNNER_RELATIVE_PATH, x as PRE_COMMIT_CONFIG_FILE, y as NON_BLOCKING_REACT_DOCTOR_COMMAND } from "./install-doctor-script-BlIhuJW6.js";
5
- import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, d as detectDefaultBranch, l as prompts, n as getReactDoctorWorkflowPath, o as upgradeReactDoctorWorkflowInPlace, r as installReactDoctorWorkflow } from "./install-github-workflow-DbnsoR9k.js";
6
- import { t as shouldSkipPrompts } from "./should-skip-prompts-CyNdARgB.js";
7
- import { a as recordGate, c as ACTION_UPGRADE_EVENT, d as INSTALL_AGENTS_PREFERENCE_ID, h as detectAvailableAgents, i as readPreference, l as CI_PITCH_EVENT, m as computeDefaultSelectedAgents, n as openUrl, r as isGatePending, s as writePreference, t as reportWorkflowResult } from "./report-workflow-result-B3YeoXsK.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="9dd03041-4f0a-59bf-8b00-9eb4f35a4c83")}catch(e){}}();
3
+ import { Gt as highlighter, R as CliInputError, S as CI_TRUST_COMPANIES, hr as SKILL_NAME, sr as GITHUB_ACTIONS_SETUP_URL, t as recordCount, w as METRIC, yr as isErrnoException } from "./record-metric-CFPfyOEW.js";
4
+ import { A as packageHasNestedRecordKey, D as getPackageJsonPath, E as ensureTrailingNewline, I as writeJsonFile, L as cliLogger, M as readPackageJson, N as resolveGitPath, O as isRecord, P as runGit, S as REACT_DOCTOR_COMMAND, T as VITE_PLUS_HOOKS_PATH, _ as LEFTHOOK_CONFIG_FILES, a as installReactDoctorScriptStep, b as OVERCOMMIT_CONFIG_FILE, c as spinner, g as HUSKY_HOOKS_PATH, h as HOOK_RELATIVE_PATH, j as packageHasRecordKey, k as packageHasDependency, m as HOOK_FILE_NAME, n as findNearestPackageDirectory, r as hasDoctorDependency, t as DOCTOR_PACKAGE_NAME, v as LEGACY_HOOK_RUNNER_RELATIVE_PATH, x as PRE_COMMIT_CONFIG_FILE, y as NON_BLOCKING_REACT_DOCTOR_COMMAND } from "./install-doctor-script-BZJlaCgz.js";
5
+ import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, d as detectDefaultBranch, l as prompts, n as getReactDoctorWorkflowPath, o as upgradeReactDoctorWorkflowInPlace, r as installReactDoctorWorkflow } from "./install-github-workflow-DQIDvKig.js";
6
+ import { t as shouldSkipPrompts } from "./should-skip-prompts-DXyhnzjP.js";
7
+ import { a as recordGate, c as ACTION_UPGRADE_EVENT, d as INSTALL_AGENTS_PREFERENCE_ID, h as detectAvailableAgents, i as readPreference, l as CI_PITCH_EVENT, m as computeDefaultSelectedAgents, n as openUrl, r as isGatePending, s as writePreference, t as reportWorkflowResult } from "./report-workflow-result-GxDOhexG.js";
8
8
  import { execFile } from "node:child_process";
9
9
  import * as path$1 from "node:path";
10
10
  import * as fs$1 from "node:fs";
@@ -1152,5 +1152,5 @@ const runInstallReactDoctor = async (options = {}) => {
1152
1152
  //#endregion
1153
1153
  export { askUpgradeActionVersion as a, recordCiPromptDecision as c, installReactDoctorAgentHooks as i, hasHandledActionUpgrade as l, runInstallReactDoctor as n, askAddToGitHubActions as o, findAgentsWithOutdatedReactDoctorHooks as r, hasHandledCiPrompt as s, getSkillSourceDirectory as t, recordActionUpgradeDecision as u };
1154
1154
 
1155
- //# sourceMappingURL=install-react-doctor-COZnJROS.js.map
1156
- //# debugId=6c2ef451-cba6-58f2-9614-b874c2d89d20
1155
+ //# sourceMappingURL=install-react-doctor-C3iiSm4r.js.map
1156
+ //# debugId=9dd03041-4f0a-59bf-8b00-9eb4f35a4c83
@@ -1,6 +1,6 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a7bc5e3b-c458-50c9-b3ac-3004c43cb924")}catch(e){}}();
3
- import { Gt as highlighter, g as VERSION, kn as gen, wn as log } from "./record-metric-fdCvvcjz.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ecc94c1c-42f8-50be-83a4-6cf8f2e88796")}catch(e){}}();
3
+ import { Gt as highlighter, g as VERSION, kn as gen, wn as log } from "./record-metric-CFPfyOEW.js";
4
4
  //#region src/cli/utils/print-branded-header.ts
5
5
  /**
6
6
  * Single branded line every command prints first when not in JSON
@@ -18,5 +18,5 @@ const printBrandedHeader = gen(function* () {
18
18
  //#endregion
19
19
  export { printBrandedHeader as t };
20
20
 
21
- //# sourceMappingURL=print-branded-header-B_Cgff5S.js.map
22
- //# debugId=a7bc5e3b-c458-50c9-b3ac-3004c43cb924
21
+ //# sourceMappingURL=print-branded-header-B594Zejh.js.map
22
+ //# debugId=ecc94c1c-42f8-50be-83a4-6cf8f2e88796
@@ -1,6 +1,6 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="424abf7b-eb26-5a60-837f-b30e68c9b99b")}catch(e){}}();
3
- import { xr as isPlainObject } from "./record-metric-fdCvvcjz.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="488dfea8-5728-535a-81d1-4ab44d7ce93f")}catch(e){}}();
3
+ import { xr as isPlainObject } from "./record-metric-CFPfyOEW.js";
4
4
  import * as fs$1 from "node:fs";
5
5
  import { parseJSON5 } from "confbox";
6
6
  //#region src/cli/utils/read-object-file.ts
@@ -20,5 +20,5 @@ const readObjectFile = (filePath) => {
20
20
  //#endregion
21
21
  export { readObjectFile as t };
22
22
 
23
- //# sourceMappingURL=read-object-file-NNLnIQKt.js.map
24
- //# debugId=424abf7b-eb26-5a60-837f-b30e68c9b99b
23
+ //# sourceMappingURL=read-object-file-CIVH-Cg-.js.map
24
+ //# debugId=488dfea8-5728-535a-81d1-4ab44d7ce93f
@@ -1,5 +1,5 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4a5f202a-1a71-5847-a8c0-dfcb2cf256ff")}catch(e){}}();
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ac18cc4f-8871-5f0d-b6a2-c0cb3b27490d")}catch(e){}}();
3
3
  import { i as __toESM$1, r as __require, t as __commonJSMin$1 } from "./chunk-ChKA3wi6.js";
4
4
  import { n as require_picomatch, t as require_semver } from "./semver-DFtnEmN-.js";
5
5
  import { createRequire } from "node:module";
@@ -72894,7 +72894,7 @@ const buildRelatedLocations = (labels, filePath, sourceBuffer) => {
72894
72894
  const isOxlintSpan = (value) => isRecord(value) && typeof value.offset === "number" && typeof value.length === "number" && typeof value.line === "number" && typeof value.column === "number";
72895
72895
  const isOxlintLabel = (value) => isRecord(value) && isOxlintSpan(value.span);
72896
72896
  const isMappableOxlintDiagnostic = (value) => isRecord(value) && typeof value.code === "string" && value.code.length > 0 && typeof value.filename === "string" && value.filename.length > 0 && (value.severity === "warning" || value.severity === "error") && Array.isArray(value.labels) && value.labels.every(isOxlintLabel);
72897
- const isEngineFailureDiagnostic = (value) => !isRecord(value) || typeof value.filename !== "string" || value.filename.length === 0;
72897
+ const isEngineFailureDiagnostic = (value) => !isRecord(value) || typeof value.filename !== "string" || value.filename.length === 0 || typeof value.message === "string" && value.message.startsWith("Error running JS plugin.") && (typeof value.code !== "string" || value.code.length === 0) && Array.isArray(value.labels) && value.labels.length === 0;
72898
72898
  const isOxlintOutput = (value) => isRecord(value) && Array.isArray(value.diagnostics);
72899
72899
  /**
72900
72900
  * Parses one oxlint subprocess's stdout into a flat `Diagnostic[]`.
@@ -76468,7 +76468,7 @@ const makeNoopConsole = () => ({
76468
76468
  });
76469
76469
  //#endregion
76470
76470
  //#region src/cli/utils/version.ts
76471
- const VERSION = "0.9.12-dev.05ef989";
76471
+ const VERSION = "0.9.12-dev.28a1a9f";
76472
76472
  //#endregion
76473
76473
  //#region src/cli/utils/json-mode.ts
76474
76474
  let context = null;
@@ -76800,5 +76800,5 @@ const recordDistribution = (name, value, options = {}) => {
76800
76800
  //#endregion
76801
76801
  export { Maintainability as $, CANONICAL_GITHUB_URL as $n, listSourceFiles as $t, SCAN_RESULT_CACHE_MAX_HASHED_FILE_SIZE_BYTES as A, makeSpan$1 as An, filterDiagnosticsForSurface as At, isGitHookEnvironment as B, try_ as Bn, getEquivalentRuleKeys as Bt, GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS as C, info as Cn, toCanonicalPath as Cr, computeConfigFingerprint as Ct, REACT_DOCTOR_CONFIG_PROJECT_NAME as D, decodeUnknownSync as Dn, createOxlintSpawnSlots as Dt, NANOSECONDS_PER_MILLISECOND as E, Diagnostic as En, createNodeReadFileLinesSync as Et, STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES as F, provideContext as Fn, formatReactDoctorError as Ft, isCiOrCodingAgentEnvironment as G, succeed$3 as Gn, highlighter as Gt, ACTION_INPUT_ENVIRONMENT_VARIABLES as H, buildWithScope as Hn, hasPublishedFixRecipe as Ht, TUI_REPORT_COMPACT_MAX_ROWS as I, provideService as In, getBaselineDiffPlan as It, Files as J, fail$5 as Jn, isProjectDiscoveryError as Jt, isCodingAgentEnvironment as K, close as Kn, isMonorepoRoot as Kt, TUI_REPORT_DETAIL_WIDTH_FRACTION as L, runPromise as Ln, getChangedLineRanges as Lt, SENTRY_FLUSH_TIMEOUT_MS as M, orElseSucceed as Mn, filterSourceFiles as Mt, SENTRY_RELEASE_PREFIX as N, promise as Nn, findLegacyConfig as Nt, RUN_GIT_MAX_BUFFER_BYTES as O, make$30 as On, detectAiTrainingEnvironment as Ot, STAGED_FILES_TEMP_DIR_PREFIX as P, provide as Pn, formatErrorChain as Pt, Linter as Q, CANONICAL_DISCORD_URL as Qn, layerObservability as Qt, CliInputError as R, runSync as Rn, getDiagnosticRuleIdentity as Rt, CI_TRUST_COMPANIES as S, error as Sn, messageFromUnknown as Sr, collectSourceFileCountsByDirectory as St, MINIMUM_VTE_VERSION_FOR_HYPERLINKS as T, warn$1 as Tn, countOptInProjectRuleSelections as Tt, detectRunnerOs as U, mergeAll$1 as Un, hasSupportedFrameworkOrLibrary as Ut, isDebugFlagEnabled as V, void_ as Vn, groupBy as Vt, isCiEnvironment as W, provide$2 as Wn, hashFileContents as Wt, LEGACY_CONFIG_FILENAME as X, ParentSpan as Xn, isSameRuleKey as Xt, Git as Y, void_$1 as Yn, isReactDoctorError as Yt, LintPartialFailures as Z, AXIOM_DEFAULT_DOMAIN as Zn, isScanComplete as Zt, makeNoopConsole as _, summarizeDiagnostics as _n, getCategoryImpact as _r, buildSkippedChecks as _t, isEnvFlagEnabled as a, mergeReactDoctorConfigs as an, DOCS_URL as ar, Project as at, AXIOM_TRACES_DATASET as b, yieldToEventLoop as bn, isFile as br, classifyFileContext as bt, setSentryProjectInfo as c, resolveLintBatchOrdering as cn, GIT_SHOW_MAX_BUFFER_BYTES as cr, SidecarLintCacheEnabled as ct, isJsonModeActive as d, resolveScanTarget as dn, JSX_FILE_PATTERN as dr, anonymizeInPlace as dt, listSourceFilesCooperative as en, CI_URL as er, NodeResolver as et, setJsonReportDirectory as f, restoreLegacyThrow as fn, MILLISECONDS_PER_SECOND as fr, anonymizeText as ft, VERSION as g, shouldUseMaintainabilityLayer as gn, STAGED_FILES_PROJECT_CONFIG_FILENAMES as gr, buildRuleSeverityControls as gt, writeJsonReport as h, setColorEnabled as hn, SKILL_NAME as hr, buildRuleDocsUrl as ht, isTelemetryEnabled as i, materializeSourceTree as in, DIAGNOSTIC_CATEGORY_BUCKETS as ir, Progress as it, SENTRY_DSN as j, map$3 as jn, filterPathsOutsideDirectories as jt, SCAN_RESULT_CACHE_FILENAME as k, gen as kn, discoverSupportedSubprojects as kt, getRunId as l, resolveReactDoctorCacheDir as ln, HTML_FILE_PATTERN as lr, StagedFiles as lt, writeJsonErrorReport as m, scrubSensitivePaths as mn, SHARE_BASE_URL as mr, buildJsonReport as mt, recordDistribution as n, loadConfigWithSource as nn, COMPILER_CLEANUP_RULE_KEYS as nr, OxlintSpawnSlots as nt, buildSentryScope as o, remainingDeadlineBudgetMs as on, ENTERPRISE_CONTACT_URL as or, Reporter as ot, setJsonReportMode as p, runInspect as pn, OXLINT_NODE_REQUIREMENT as pr, atomicWriteJson as pt, Config as q, makeUnsafe$5 as qn, isPathInsideDirectory as qt, toSpanAttributes as r, mapWithConcurrency as rn, CONFIG_SCHEMA_URL as rr, PerFileLintCacheEnabled as rt, buildSentryProjectContext as s, resolveGithubActionsScoreMetadata as sn, GITHUB_ACTIONS_SETUP_URL as sr, Score as st, recordCount as t, listWorkspacePackages as tn, COMPILER_CLEANUP_BUCKET as tr, OxlintConcurrency as tt, enableJsonMode as u, resolveScanConcurrency as un, JSX_DUPLICATION_SOURCE_FILE_PATTERN as ur, SupplyChain as ut, AXIOM_INGEST_TOKEN as v, toRelativePath as vn, isDirectory as vr, calculateScore as vt, METRIC as w, log as wn, computeDiagnosticDelta as wt, BASELINE_FILES_TEMP_DIR_PREFIX as x, Console as xn, isPlainObject as xr, clearConfigCache as xt, AXIOM_METRICS_DATASET as y, validateConfigTypes as yn, isErrnoException as yr, canonicalizeUserRuleKey as yt, isNonInteractiveEnvironment as z, sync as zn, getDiffInfo as zt };
76802
76802
 
76803
- //# sourceMappingURL=record-metric-fdCvvcjz.js.map
76804
- //# debugId=4a5f202a-1a71-5847-a8c0-dfcb2cf256ff
76803
+ //# sourceMappingURL=record-metric-CFPfyOEW.js.map
76804
+ //# debugId=ac18cc4f-8871-5f0d-b6a2-c0cb3b27490d
@@ -1,7 +1,7 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6b305c9a-a6dc-5c2f-b70d-46421d386d2f")}catch(e){}}();
3
- import { $n as CANONICAL_GITHUB_URL, Ft as formatReactDoctorError, Gt as highlighter, M as SENTRY_FLUSH_TIMEOUT_MS, Pt as formatErrorChain, Qn as CANONICAL_DISCORD_URL, Rn as runSync, Sn as error, Yt as isReactDoctorError, g as VERSION, kn as gen, l as getRunId, o as buildSentryScope, t as recordCount, w as METRIC, yr as isErrnoException } from "./record-metric-fdCvvcjz.js";
4
- import { c as isExpectedUserError, i as recordRunTraceId, l as formatEnvironmentError, n as getActiveRunTrace, s as shutdownTelemetry, u as isEnvironmentError } from "./unref-stdin-Cynhx9N1.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c08852de-39e1-5424-8a55-3898af27f4b0")}catch(e){}}();
3
+ import { $n as CANONICAL_GITHUB_URL, Ft as formatReactDoctorError, Gt as highlighter, M as SENTRY_FLUSH_TIMEOUT_MS, Pt as formatErrorChain, Qn as CANONICAL_DISCORD_URL, Rn as runSync, Sn as error, Yt as isReactDoctorError, g as VERSION, kn as gen, l as getRunId, o as buildSentryScope, t as recordCount, w as METRIC, yr as isErrnoException } from "./record-metric-CFPfyOEW.js";
4
+ import { c as isExpectedUserError, i as recordRunTraceId, l as formatEnvironmentError, n as getActiveRunTrace, s as shutdownTelemetry, u as isEnvironmentError } from "./unref-stdin-CwYEtpri.js";
5
5
  import * as Sentry from "@sentry/node";
6
6
  //#region src/cli/utils/handle-error.ts
7
7
  const OTLP_ENDPOINT_ENVIRONMENT_VARIABLE = "REACT_DOCTOR_OTLP_ENDPOINT";
@@ -160,5 +160,5 @@ const reportErrorToSentry = async (error) => {
160
160
  //#endregion
161
161
  export { handleError as n, handleUserError as r, reportErrorToSentry as t };
162
162
 
163
- //# sourceMappingURL=report-error-BH7DfHGY.js.map
164
- //# debugId=6b305c9a-a6dc-5c2f-b70d-46421d386d2f
163
+ //# sourceMappingURL=report-error-DspMW6A2.js.map
164
+ //# debugId=c08852de-39e1-5424-8a55-3898af27f4b0
@@ -1,7 +1,7 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6ab89a67-529d-5725-901f-a2d58b2ccdac")}catch(e){}}();
3
- import { D as REACT_DOCTOR_CONFIG_PROJECT_NAME, t as recordCount, w as METRIC } from "./record-metric-fdCvvcjz.js";
4
- import { u as isCommandAvailable } from "./install-github-workflow-DbnsoR9k.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="30a85f2f-b657-57c2-9f17-78d9d615421f")}catch(e){}}();
3
+ import { D as REACT_DOCTOR_CONFIG_PROJECT_NAME, t as recordCount, w as METRIC } from "./record-metric-CFPfyOEW.js";
4
+ import { u as isCommandAvailable } from "./install-github-workflow-DQIDvKig.js";
5
5
  import { spawn } from "node:child_process";
6
6
  import * as path$1 from "node:path";
7
7
  import process$1 from "node:process";
@@ -275,5 +275,5 @@ const reportWorkflowResult = (workflowSpinner, result, projectRoot) => {
275
275
  //#endregion
276
276
  export { recordGate as a, ACTION_UPGRADE_EVENT as c, INSTALL_AGENTS_PREFERENCE_ID as d, ONBOARDING_EVENT as f, detectAvailableAgents as h, readPreference as i, CI_PITCH_EVENT as l, computeDefaultSelectedAgents as m, openUrl as n, runMigrations as o, SETUP_HINT_EVENT as p, isGatePending as r, writePreference as s, reportWorkflowResult as t, HANDOFF_TARGET_PREFERENCE_ID as u };
277
277
 
278
- //# sourceMappingURL=report-workflow-result-B3YeoXsK.js.map
279
- //# debugId=6ab89a67-529d-5725-901f-a2d58b2ccdac
278
+ //# sourceMappingURL=report-workflow-result-GxDOhexG.js.map
279
+ //# debugId=30a85f2f-b657-57c2-9f17-78d9d615421f
@@ -1,8 +1,8 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="974ac7e1-acb8-511d-bda6-833e6bcb52a8")}catch(e){}}();
3
- import { Cr as toCanonicalPath, Mt as filterSourceFiles, qt as isPathInsideDirectory } from "./record-metric-fdCvvcjz.js";
4
- import { L as cliLogger } from "./install-doctor-script-BlIhuJW6.js";
5
- import { d as detectDefaultBranch, f as runCommand, l as prompts, u as isCommandAvailable } from "./install-github-workflow-DbnsoR9k.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5e6700ae-baad-5c5d-b8e6-f1eb0d308a9b")}catch(e){}}();
3
+ import { Cr as toCanonicalPath, Mt as filterSourceFiles, qt as isPathInsideDirectory } from "./record-metric-CFPfyOEW.js";
4
+ import { L as cliLogger } from "./install-doctor-script-BZJlaCgz.js";
5
+ import { d as detectDefaultBranch, f as runCommand, l as prompts, u as isCommandAvailable } from "./install-github-workflow-DQIDvKig.js";
6
6
  import * as path$1 from "node:path";
7
7
  //#region src/cli/utils/path-format.ts
8
8
  const toForwardSlashes = (filePath) => filePath.replaceAll("\\", "/");
@@ -335,5 +335,5 @@ const finalizeScope = async ({ requested, diffInfo, skipPrompts, isQuiet }) => {
335
335
  //#endregion
336
336
  export { isValidBlockingLevel as a, openWorkflowPullRequest as c, warnDeprecatedDiff as i, stageWorkflowFile as l, isScopeValue as n, pickBlockingLevel as o, resolveScope as r, resolveBlockingLevel as s, finalizeScope as t, toForwardSlashes as u };
337
337
 
338
- //# sourceMappingURL=resolve-scope-gLUuBxjI.js.map
339
- //# debugId=974ac7e1-acb8-511d-bda6-833e6bcb52a8
338
+ //# sourceMappingURL=resolve-scope-CNV3HRNo.js.map
339
+ //# debugId=5e6700ae-baad-5c5d-b8e6-f1eb0d308a9b
@@ -1,8 +1,8 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2335bf20-6bfa-5a05-8917-39cfda07dd9b")}catch(e){}}();
3
- import { Bt as getEquivalentRuleKeys, Gt as highlighter, Xt as isSameRuleKey, ht as buildRuleDocsUrl, nn as loadConfigWithSource, nr as COMPILER_CLEANUP_RULE_KEYS, t as recordCount, tr as COMPILER_CLEANUP_BUCKET, w as METRIC, xr as isPlainObject, xt as clearConfigCache, yn as validateConfigTypes } from "./record-metric-fdCvvcjz.js";
4
- import { L as cliLogger, n as findNearestPackageDirectory } from "./install-doctor-script-BlIhuJW6.js";
5
- import { t as readObjectFile } from "./read-object-file-NNLnIQKt.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2d41ea36-b3e5-5f90-9377-e23246f09a13")}catch(e){}}();
3
+ import { Bt as getEquivalentRuleKeys, Gt as highlighter, Xt as isSameRuleKey, ht as buildRuleDocsUrl, nn as loadConfigWithSource, nr as COMPILER_CLEANUP_RULE_KEYS, t as recordCount, tr as COMPILER_CLEANUP_BUCKET, w as METRIC, xr as isPlainObject, xt as clearConfigCache, yn as validateConfigTypes } from "./record-metric-CFPfyOEW.js";
4
+ import { L as cliLogger, n as findNearestPackageDirectory } from "./install-doctor-script-BZJlaCgz.js";
5
+ import { t as readObjectFile } from "./read-object-file-CIVH-Cg-.js";
6
6
  import * as path$1 from "node:path";
7
7
  import * as fs$1 from "node:fs";
8
8
  import { REACT_DOCTOR_RULES } from "oxlint-plugin-react-doctor/core";
@@ -577,5 +577,5 @@ const rulesUnignoreTagAction = async (tag, options) => {
577
577
  //#endregion
578
578
  export { rulesCategoryAction, rulesDisableAction, rulesEnableAction, rulesExplainAction, rulesIgnoreTagAction, rulesListAction, rulesSetAction, rulesUnignoreTagAction };
579
579
 
580
- //# sourceMappingURL=rules-B5VC89MR.js.map
581
- //# debugId=2335bf20-6bfa-5a05-8917-39cfda07dd9b
580
+ //# sourceMappingURL=rules-C1Nt63By.js.map
581
+ //# debugId=2d41ea36-b3e5-5f90-9377-e23246f09a13
@@ -1,13 +1,13 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="6dc0cf38-4376-5d91-aa4f-da5cf7776357")}catch(e){}}();
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cc255551-8999-5715-954f-24ed42928cbd")}catch(e){}}();
3
3
  import { i as __toESM, r as __require, t as __commonJSMin } from "./chunk-ChKA3wi6.js";
4
- import { B as isGitHookEnvironment, Gn as succeed, Gt as highlighter, Ht as hasPublishedFixRecipe, I as TUI_REPORT_COMPACT_MAX_ROWS, It as getBaselineDiffPlan, L as TUI_REPORT_DETAIL_WIDTH_FRACTION, Ln as runPromise, Lt as getChangedLineRanges, S as CI_TRUST_COMPANIES, Vn as void_, W as isCiEnvironment, _r as getCategoryImpact, bn as yieldToEventLoop, dn as resolveScanTarget, ht as buildRuleDocsUrl, ir as DIAGNOSTIC_CATEGORY_BUCKETS, it as Progress, n as recordDistribution, on as remainingDeadlineBudgetMs, ot as Reporter, qt as isPathInsideDirectory, rn as mapWithConcurrency, sr as GITHUB_ACTIONS_SETUP_URL, t as recordCount, vt as calculateScore, w as METRIC, zn as sync, zt as getDiffInfo } from "./record-metric-fdCvvcjz.js";
5
- import { n as registerActiveTuiRenderer, t as exitGracefully } from "./exit-gracefully-C-_jVMT3.js";
6
- import { L as cliLogger, d as stripAnsi, f as isUnicodeSupported, l as isFullWidth$1, n as findNearestPackageDirectory, p as chalk, u as isWide$1 } from "./install-doctor-script-BlIhuJW6.js";
7
- import { i as isReactDoctorWorkflowInstalled } from "./install-github-workflow-DbnsoR9k.js";
8
- import { r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-gLUuBxjI.js";
9
- import { A as resolveMergeBaseRef, B as buildNoScoreMessage, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, F as printFooter, G as formatFixRecipeLine, H as hasLintHardFailure, I as printDiagnosticsDump, K as formatLearnMoreLine, L as formatDiagnosticSite, M as pluralize, N as formatSkippedCheckLabel, O as createInvocationInspect, P as formatElapsedTime, R as hasIncompleteScoreAnalysis, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, U as buildRulePriorityMap, V as buildEmptyReportMessage, W as buildSortedRuleGroups, _ as resolveCliInspectOptions, a as projectManifestChanged, b as setUpGitHubActions, c as selectProjects, d as resolveProjectChangedLineRanges, f as resolveProjectDiffIncludePaths, g as resolveWorkspaceDeadCodeOwner, h as retryMissingProjectScores, l as buildCodeFrame, n as formatSkippedProjectsMessage, o as partitionProjectScanOutcomes, p as resolveProjectSourceFilePaths, r as validateIncludeUntrackedScope, s as discoverWorkspacePackages, t as shouldFailScanGate, u as resolveProjectScan, v as filterScansForSurface, w as launchCliAgent, x as detectLaunchableAgents, y as countUniqueScannedFiles, z as filterDiagnosticsByCategories } from "./should-fail-scan-gate-Dch9vbPz.js";
10
- import { a as recordGate, f as ONBOARDING_EVENT, n as openUrl, r as isGatePending } from "./report-workflow-result-B3YeoXsK.js";
4
+ import { B as isGitHookEnvironment, Gn as succeed, Gt as highlighter, Ht as hasPublishedFixRecipe, I as TUI_REPORT_COMPACT_MAX_ROWS, It as getBaselineDiffPlan, L as TUI_REPORT_DETAIL_WIDTH_FRACTION, Ln as runPromise, Lt as getChangedLineRanges, S as CI_TRUST_COMPANIES, Vn as void_, W as isCiEnvironment, _r as getCategoryImpact, bn as yieldToEventLoop, dn as resolveScanTarget, ht as buildRuleDocsUrl, ir as DIAGNOSTIC_CATEGORY_BUCKETS, it as Progress, n as recordDistribution, on as remainingDeadlineBudgetMs, ot as Reporter, qt as isPathInsideDirectory, rn as mapWithConcurrency, sr as GITHUB_ACTIONS_SETUP_URL, t as recordCount, vt as calculateScore, w as METRIC, zn as sync, zt as getDiffInfo } from "./record-metric-CFPfyOEW.js";
5
+ import { n as registerActiveTuiRenderer, t as exitGracefully } from "./exit-gracefully-dQBRJxyW.js";
6
+ import { L as cliLogger, d as stripAnsi, f as isUnicodeSupported, l as isFullWidth$1, n as findNearestPackageDirectory, p as chalk, u as isWide$1 } from "./install-doctor-script-BZJlaCgz.js";
7
+ import { i as isReactDoctorWorkflowInstalled } from "./install-github-workflow-DQIDvKig.js";
8
+ import { r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-CNV3HRNo.js";
9
+ import { A as resolveMergeBaseRef, B as buildNoScoreMessage, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, F as printFooter, G as formatFixRecipeLine, H as hasLintHardFailure, I as printDiagnosticsDump, K as formatLearnMoreLine, L as formatDiagnosticSite, M as pluralize, N as formatSkippedCheckLabel, O as createInvocationInspect, P as formatElapsedTime, R as hasIncompleteScoreAnalysis, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, U as buildRulePriorityMap, V as buildEmptyReportMessage, W as buildSortedRuleGroups, _ as resolveCliInspectOptions, a as projectManifestChanged, b as setUpGitHubActions, c as selectProjects, d as resolveProjectChangedLineRanges, f as resolveProjectDiffIncludePaths, g as resolveWorkspaceDeadCodeOwner, h as retryMissingProjectScores, l as buildCodeFrame, n as formatSkippedProjectsMessage, o as partitionProjectScanOutcomes, p as resolveProjectSourceFilePaths, r as validateIncludeUntrackedScope, s as discoverWorkspacePackages, t as shouldFailScanGate, u as resolveProjectScan, v as filterScansForSurface, w as launchCliAgent, x as detectLaunchableAgents, y as countUniqueScannedFiles, z as filterDiagnosticsByCategories } from "./should-fail-scan-gate-XdfNPXf9.js";
10
+ import { a as recordGate, f as ONBOARDING_EVENT, n as openUrl, r as isGatePending } from "./report-workflow-result-GxDOhexG.js";
11
11
  import { EventEmitter } from "node:events";
12
12
  import { execFileSync } from "node:child_process";
13
13
  import path from "node:path";
@@ -28363,5 +28363,5 @@ const runScanApp = async (input) => {
28363
28363
  //#endregion
28364
28364
  export { runScanApp };
28365
28365
 
28366
- //# sourceMappingURL=run-scan-app-Cl2mqLLB.js.map
28367
- //# debugId=6dc0cf38-4376-5d91-aa4f-da5cf7776357
28366
+ //# sourceMappingURL=run-scan-app-lYmDIiT4.js.map
28367
+ //# debugId=cc255551-8999-5715-954f-24ed42928cbd
@@ -1,9 +1,9 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="c0742eb3-ab6a-5c4f-8861-4ec0fb12fcd9")}catch(e){}}();
3
- import { dn as resolveScanTarget, t as recordCount, w as METRIC, z as isNonInteractiveEnvironment } from "./record-metric-fdCvvcjz.js";
4
- import { i as warnDeprecatedDiff } from "./resolve-scope-gLUuBxjI.js";
5
- import { _ as resolveCliInspectOptions, i as validateModeFlags } from "./should-fail-scan-gate-Dch9vbPz.js";
6
- import { n as warnDeprecatedFailOn, r as runProjectMigrations, t as inspectAction } from "./inspect-BfdplEq6.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="21a71b3c-82e6-55b4-b8b4-bff714ffdee2")}catch(e){}}();
3
+ import { dn as resolveScanTarget, t as recordCount, w as METRIC, z as isNonInteractiveEnvironment } from "./record-metric-CFPfyOEW.js";
4
+ import { i as warnDeprecatedDiff } from "./resolve-scope-CNV3HRNo.js";
5
+ import { _ as resolveCliInspectOptions, i as validateModeFlags } from "./should-fail-scan-gate-XdfNPXf9.js";
6
+ import { n as warnDeprecatedFailOn, r as runProjectMigrations, t as inspectAction } from "./inspect-CEYHtLuK.js";
7
7
  import path from "node:path";
8
8
  //#region src/cli/utils/should-use-tui.ts
9
9
  const shouldUseTui = (input) => {
@@ -34,7 +34,7 @@ const runScanCommand = async (input) => {
34
34
  warnDeprecatedFailOn(input.flags, scanTarget.userConfig);
35
35
  warnDeprecatedDiff(input.flags, scanTarget.userConfig);
36
36
  recordCount(METRIC.cliInvoked, 1, { command: input.invocationCommand });
37
- const { runScanApp } = await import("./run-scan-app-Cl2mqLLB.js");
37
+ const { runScanApp } = await import("./run-scan-app-lYmDIiT4.js");
38
38
  const { shouldFail } = await runScanApp({
39
39
  directory: input.directory,
40
40
  scanTarget,
@@ -49,5 +49,5 @@ const runScanCommand = async (input) => {
49
49
  //#endregion
50
50
  export { runScanCommand };
51
51
 
52
- //# sourceMappingURL=scan-7OBudBct.js.map
53
- //# debugId=c0742eb3-ab6a-5c4f-8861-4ec0fb12fcd9
52
+ //# sourceMappingURL=scan-D-Y1Qifl.js.map
53
+ //# debugId=21a71b3c-82e6-55b4-b8b4-bff714ffdee2
@@ -1,12 +1,12 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="19bff337-5a1f-5558-b6b7-bd4274f53f38")}catch(e){}}();
3
- import { $ as Maintainability, $t as listSourceFiles, An as makeSpan, At as filterDiagnosticsForSurface, Bn as try_, Ct as computeConfigFingerprint, Dn as decodeUnknownSync, Dt as createOxlintSpawnSlots, E as NANOSECONDS_PER_MILLISECOND, En as Diagnostic, Et as createNodeReadFileLinesSync, Fn as provideContext, G as isCiOrCodingAgentEnvironment, Gn as succeed, Gt as highlighter, H as ACTION_INPUT_ENVIRONMENT_VARIABLES, Ht as hasPublishedFixRecipe, In as provideService, J as Files, Jn as fail, Kt as isMonorepoRoot, Ln as runPromise, Mn as orElseSucceed, Mt as filterSourceFiles, Nn as promise, Pn as provide, Q as Linter, R as CliInputError, Rn as runSync, Rt as getDiagnosticRuleIdentity, Sn as error, St as collectSourceFileCountsByDirectory, Tn as warn, Tt as countOptInProjectRuleSelections, U as detectRunnerOs, Un as mergeAll, Vt as groupBy, W as isCiEnvironment, Wt as hashFileContents, Xn as ParentSpan, Y as Git, Yn as void_, Yt as isReactDoctorError, Z as LintPartialFailures, Zt as isScanComplete, _ as makeNoopConsole, _n as summarizeDiagnostics, _t as buildSkippedChecks, an as mergeReactDoctorConfigs, at as Project, bn as yieldToEventLoop, br as isFile, bt as classifyFileContext, c as setSentryProjectInfo, cn as resolveLintBatchOrdering, cr as GIT_SHOW_MAX_BUFFER_BYTES, ct as SidecarLintCacheEnabled, d as isJsonModeActive, dn as resolveScanTarget, dr as JSX_FILE_PATTERN, en as listSourceFilesCooperative, er as CI_URL, et as NodeResolver, fn as restoreLegacyThrow, fr as MILLISECONDS_PER_SECOND, g as VERSION, gn as shouldUseMaintainabilityLayer, gt as buildRuleSeverityControls, ht as buildRuleDocsUrl, in as materializeSourceTree, ir as DIAGNOSTIC_CATEGORY_BUCKETS, it as Progress, jn as map, jt as filterPathsOutsideDirectories, k as SCAN_RESULT_CACHE_FILENAME, kn as gen, kt as discoverSupportedSubprojects, l as getRunId, ln as resolveReactDoctorCacheDir, lr as HTML_FILE_PATTERN, mr as SHARE_BASE_URL, n as recordDistribution, nt as OxlintSpawnSlots, o as buildSentryScope, on as remainingDeadlineBudgetMs, or as ENTERPRISE_CONTACT_URL, ot as Reporter, pn as runInspect, pr as OXLINT_NODE_REQUIREMENT, pt as atomicWriteJson, q as Config, qt as isPathInsideDirectory, r as toSpanAttributes, rn as mapWithConcurrency, rt as PerFileLintCacheEnabled, s as buildSentryProjectContext, sn as resolveGithubActionsScoreMetadata, st as Score, t as recordCount, tn as listWorkspacePackages, tt as OxlintConcurrency, un as resolveScanConcurrency, ur as JSX_DUPLICATION_SOURCE_FILE_PATTERN, ut as SupplyChain, vr as isDirectory, vt as calculateScore, w as METRIC, wn as log, wt as computeDiagnosticDelta, x as BASELINE_FILES_TEMP_DIR_PREFIX, xn as Console, yt as canonicalizeUserRuleKey, z as isNonInteractiveEnvironment, zn as sync } from "./record-metric-fdCvvcjz.js";
4
- import { a as setActiveRunTrace, i as recordRunTraceId, o as getTelemetryContext } from "./unref-stdin-Cynhx9N1.js";
5
- import { n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-BNQmYjME.js";
6
- import { D as getPackageJsonPath, L as cliLogger, O as isRecord, P as runGit, a as installReactDoctorScriptStep, c as spinner, n as findNearestPackageDirectory, o as isSpinnerSilent, s as setSpinnerSilent } from "./install-doctor-script-BlIhuJW6.js";
7
- import { d as detectDefaultBranch, l as prompts, r as installReactDoctorWorkflow, u as isCommandAvailable } from "./install-github-workflow-DbnsoR9k.js";
8
- import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, o as pickBlockingLevel, u as toForwardSlashes } from "./resolve-scope-gLUuBxjI.js";
9
- import { h as detectAvailableAgents, t as reportWorkflowResult } from "./report-workflow-result-B3YeoXsK.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="49eb03b4-ad5f-5d68-8511-ef63da81d36d")}catch(e){}}();
3
+ import { $ as Maintainability, $t as listSourceFiles, An as makeSpan, At as filterDiagnosticsForSurface, Bn as try_, Ct as computeConfigFingerprint, Dn as decodeUnknownSync, Dt as createOxlintSpawnSlots, E as NANOSECONDS_PER_MILLISECOND, En as Diagnostic, Et as createNodeReadFileLinesSync, Fn as provideContext, G as isCiOrCodingAgentEnvironment, Gn as succeed, Gt as highlighter, H as ACTION_INPUT_ENVIRONMENT_VARIABLES, Ht as hasPublishedFixRecipe, In as provideService, J as Files, Jn as fail, Kt as isMonorepoRoot, Ln as runPromise, Mn as orElseSucceed, Mt as filterSourceFiles, Nn as promise, Pn as provide, Q as Linter, R as CliInputError, Rn as runSync, Rt as getDiagnosticRuleIdentity, Sn as error, St as collectSourceFileCountsByDirectory, Tn as warn, Tt as countOptInProjectRuleSelections, U as detectRunnerOs, Un as mergeAll, Vt as groupBy, W as isCiEnvironment, Wt as hashFileContents, Xn as ParentSpan, Y as Git, Yn as void_, Yt as isReactDoctorError, Z as LintPartialFailures, Zt as isScanComplete, _ as makeNoopConsole, _n as summarizeDiagnostics, _t as buildSkippedChecks, an as mergeReactDoctorConfigs, at as Project, bn as yieldToEventLoop, br as isFile, bt as classifyFileContext, c as setSentryProjectInfo, cn as resolveLintBatchOrdering, cr as GIT_SHOW_MAX_BUFFER_BYTES, ct as SidecarLintCacheEnabled, d as isJsonModeActive, dn as resolveScanTarget, dr as JSX_FILE_PATTERN, en as listSourceFilesCooperative, er as CI_URL, et as NodeResolver, fn as restoreLegacyThrow, fr as MILLISECONDS_PER_SECOND, g as VERSION, gn as shouldUseMaintainabilityLayer, gt as buildRuleSeverityControls, ht as buildRuleDocsUrl, in as materializeSourceTree, ir as DIAGNOSTIC_CATEGORY_BUCKETS, it as Progress, jn as map, jt as filterPathsOutsideDirectories, k as SCAN_RESULT_CACHE_FILENAME, kn as gen, kt as discoverSupportedSubprojects, l as getRunId, ln as resolveReactDoctorCacheDir, lr as HTML_FILE_PATTERN, mr as SHARE_BASE_URL, n as recordDistribution, nt as OxlintSpawnSlots, o as buildSentryScope, on as remainingDeadlineBudgetMs, or as ENTERPRISE_CONTACT_URL, ot as Reporter, pn as runInspect, pr as OXLINT_NODE_REQUIREMENT, pt as atomicWriteJson, q as Config, qt as isPathInsideDirectory, r as toSpanAttributes, rn as mapWithConcurrency, rt as PerFileLintCacheEnabled, s as buildSentryProjectContext, sn as resolveGithubActionsScoreMetadata, st as Score, t as recordCount, tn as listWorkspacePackages, tt as OxlintConcurrency, un as resolveScanConcurrency, ur as JSX_DUPLICATION_SOURCE_FILE_PATTERN, ut as SupplyChain, vr as isDirectory, vt as calculateScore, w as METRIC, wn as log, wt as computeDiagnosticDelta, x as BASELINE_FILES_TEMP_DIR_PREFIX, xn as Console, yt as canonicalizeUserRuleKey, z as isNonInteractiveEnvironment, zn as sync } from "./record-metric-CFPfyOEW.js";
4
+ import { a as setActiveRunTrace, i as recordRunTraceId, o as getTelemetryContext } from "./unref-stdin-CwYEtpri.js";
5
+ import { n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-CdnczCsb.js";
6
+ import { D as getPackageJsonPath, L as cliLogger, O as isRecord, P as runGit, a as installReactDoctorScriptStep, c as spinner, n as findNearestPackageDirectory, o as isSpinnerSilent, s as setSpinnerSilent } from "./install-doctor-script-BZJlaCgz.js";
7
+ import { d as detectDefaultBranch, l as prompts, r as installReactDoctorWorkflow, u as isCommandAvailable } from "./install-github-workflow-DQIDvKig.js";
8
+ import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, o as pickBlockingLevel, u as toForwardSlashes } from "./resolve-scope-CNV3HRNo.js";
9
+ import { h as detectAvailableAgents, t as reportWorkflowResult } from "./report-workflow-result-GxDOhexG.js";
10
10
  import { createRequire } from "node:module";
11
11
  import { spawn } from "node:child_process";
12
12
  import * as path$1 from "node:path";
@@ -3096,5 +3096,5 @@ const shouldFailScanGate = (input) => {
3096
3096
  //#endregion
3097
3097
  export { resolveMergeBaseRef as A, buildNoScoreMessage as B, copyToClipboard as C, deduplicateProjectScans as D, collectProjectSourceFileCounts as E, printFooter as F, formatFixRecipeLine as G, hasLintHardFailure as H, printDiagnosticsDump as I, formatLearnMoreLine as K, formatDiagnosticSite as L, pluralize as M, formatSkippedCheckLabel as N, createInvocationInspect as O, formatElapsedTime as P, hasIncompleteScoreAnalysis as R, CLI_AGENT_BINARIES as S, buildHandoffPayload as T, buildRulePriorityMap as U, buildEmptyReportMessage as V, buildSortedRuleGroups as W, resolveCliInspectOptions as _, projectManifestChanged as a, setUpGitHubActions as b, selectProjects as c, resolveProjectChangedLineRanges as d, resolveProjectDiffIncludePaths as f, resolveWorkspaceDeadCodeOwner as g, retryMissingProjectScores as h, validateModeFlags as i, printHeadlessReport as j, inspect as k, buildCodeFrame as l, resolveProjectRelativeDirectory as m, formatSkippedProjectsMessage as n, partitionProjectScanOutcomes as o, resolveProjectSourceFilePaths as p, validateIncludeUntrackedScope as r, discoverWorkspacePackages as s, shouldFailScanGate as t, resolveProjectScan as u, filterScansForSurface as v, launchCliAgent as w, detectLaunchableAgents as x, countUniqueScannedFiles as y, filterDiagnosticsByCategories as z };
3098
3098
 
3099
- //# sourceMappingURL=should-fail-scan-gate-Dch9vbPz.js.map
3100
- //# debugId=19bff337-5a1f-5558-b6b7-bd4274f53f38
3099
+ //# sourceMappingURL=should-fail-scan-gate-XdfNPXf9.js.map
3100
+ //# debugId=49eb03b4-ad5f-5d68-8511-ef63da81d36d
@@ -1,10 +1,10 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1835ead5-8913-5fe5-a0fa-4de3e400bee0")}catch(e){}}();
3
- import { z as isNonInteractiveEnvironment } from "./record-metric-fdCvvcjz.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="bddc3436-2d02-5749-b77f-2c6cab9f26fa")}catch(e){}}();
3
+ import { z as isNonInteractiveEnvironment } from "./record-metric-CFPfyOEW.js";
4
4
  //#region src/cli/utils/should-skip-prompts.ts
5
5
  const shouldSkipPrompts = (input = {}) => Boolean(input.yes) || Boolean(input.json) || isNonInteractiveEnvironment() || !process.stdin.isTTY;
6
6
  //#endregion
7
7
  export { shouldSkipPrompts as t };
8
8
 
9
- //# sourceMappingURL=should-skip-prompts-CyNdARgB.js.map
10
- //# debugId=1835ead5-8913-5fe5-a0fa-4de3e400bee0
9
+ //# sourceMappingURL=should-skip-prompts-DXyhnzjP.js.map
10
+ //# debugId=bddc3436-2d02-5749-b77f-2c6cab9f26fa
@@ -1,6 +1,6 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="9c17a65b-1eeb-5572-8f88-8abf23cb6ab2")}catch(e){}}();
3
- import { Hn as buildWithScope, Jt as isProjectDiscoveryError, Kn as close, Ln as runPromise, On as make, Qt as layerObservability, R as CliInputError, Rn as runSync, Sr as messageFromUnknown, Yn as void_, Yt as isReactDoctorError, g as VERSION, i as isTelemetryEnabled, qn as makeUnsafe, yr as isErrnoException } from "./record-metric-fdCvvcjz.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="108f5716-98ff-5383-8562-fb0e773f8470")}catch(e){}}();
3
+ import { Hn as buildWithScope, Jt as isProjectDiscoveryError, Kn as close, Ln as runPromise, On as make, Qt as layerObservability, R as CliInputError, Rn as runSync, Sr as messageFromUnknown, Yn as void_, Yt as isReactDoctorError, g as VERSION, i as isTelemetryEnabled, qn as makeUnsafe, yr as isErrnoException } from "./record-metric-CFPfyOEW.js";
4
4
  //#region src/cli/utils/is-environment-error.ts
5
5
  const ENVIRONMENT_ERROR_CODES = new Set([
6
6
  "EACCES",
@@ -217,5 +217,5 @@ const unrefStdin = () => {
217
217
  //#endregion
218
218
  export { setActiveRunTrace as a, isExpectedUserError as c, recordRunTraceId as i, formatEnvironmentError as l, getActiveRunTrace as n, getTelemetryContext as o, getLastRunTraceId as r, shutdownTelemetry as s, unrefStdin as t, isEnvironmentError as u };
219
219
 
220
- //# sourceMappingURL=unref-stdin-Cynhx9N1.js.map
221
- //# debugId=9c17a65b-1eeb-5572-8f88-8abf23cb6ab2
220
+ //# sourceMappingURL=unref-stdin-CwYEtpri.js.map
221
+ //# debugId=108f5716-98ff-5383-8562-fb0e773f8470
@@ -1,6 +1,6 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="2bbe833e-1463-50bb-8fd2-5c530e13369b")}catch(e){}}();
3
- import { g as VERSION, t as recordCount, w as METRIC } from "./record-metric-fdCvvcjz.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="1054ee88-20e7-5116-9a86-beac0e8cc51e")}catch(e){}}();
3
+ import { g as VERSION, t as recordCount, w as METRIC } from "./record-metric-CFPfyOEW.js";
4
4
  //#region src/cli/commands/version.ts
5
5
  /**
6
6
  * oclif-style version line. 12-factor CLI Apps (#3, "What version am I
@@ -17,5 +17,5 @@ const versionAction = () => {
17
17
  //#endregion
18
18
  export { versionAction };
19
19
 
20
- //# sourceMappingURL=version-axnZCkCZ.js.map
21
- //# debugId=2bbe833e-1463-50bb-8fd2-5c530e13369b
20
+ //# sourceMappingURL=version-tT7fsrFN.js.map
21
+ //# debugId=1054ee88-20e7-5116-9a86-beac0e8cc51e
@@ -1,6 +1,6 @@
1
1
 
2
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="45af1b21-9048-5ee3-85e1-c8ece604030c")}catch(e){}}();
3
- import { t as inspectAction } from "./inspect-BfdplEq6.js";
2
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e686b95d-a187-56db-863a-bc8218054b88")}catch(e){}}();
3
+ import { t as inspectAction } from "./inspect-CEYHtLuK.js";
4
4
  //#region src/cli/commands/why.ts
5
5
  /**
6
6
  * `why <file:line>` — explains why a rule fired (or why a suppression didn't
@@ -17,5 +17,5 @@ const whyAction = async (location, options) => {
17
17
  //#endregion
18
18
  export { whyAction };
19
19
 
20
- //# sourceMappingURL=why-Ducgj7Hu.js.map
21
- //# debugId=45af1b21-9048-5ee3-85e1-c8ece604030c
20
+ //# sourceMappingURL=why-4B0HPeQG.js.map
21
+ //# debugId=e686b95d-a187-56db-863a-bc8218054b88
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-doctor",
3
- "version": "0.9.12-dev.05ef989",
3
+ "version": "0.9.12-dev.28a1a9f",
4
4
  "description": "Your agent writes bad React. This catches it",
5
5
  "keywords": [
6
6
  "accessibility",
@@ -53,19 +53,20 @@
53
53
  "@astrojs/compiler": "^4.0.0",
54
54
  "@sentry/node": "^10.54.0",
55
55
  "agent-install": "0.0.5",
56
+ "bippy": "^0.6.1",
56
57
  "conf": "^15.1.0",
57
58
  "confbox": "^0.2.4",
58
59
  "eslint-plugin-react-hooks": "^7.1.1",
59
60
  "jiti": "^2.7.0",
60
61
  "magicast": "^0.5.3",
61
- "oxc-parser": "^0.143.0",
62
+ "oxc-parser": "^0.144.0",
62
63
  "oxc-resolver": "^11.24.2",
63
- "oxlint": ">=1.77.0 <1.78.0",
64
+ "oxlint": ">=1.78.0 <1.79.0",
64
65
  "prompts": "^2.4.2",
65
66
  "typescript": ">=5.0.4 <6",
66
67
  "yaml": "^2.9.0",
67
68
  "yoga-layout": "~3.2.1",
68
- "oxlint-plugin-react-doctor": "0.9.12-dev.05ef989"
69
+ "oxlint-plugin-react-doctor": "0.9.12-dev.28a1a9f"
69
70
  },
70
71
  "devDependencies": {
71
72
  "@types/babel__code-frame": "^7.27.0",