react-doctor 0.9.7-dev.f27fd5d → 0.9.8-dev.7f028ea

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 (27) hide show
  1. package/dist/{build-section-divider-BIYE5xJ-.js → build-section-divider-DKzi1sn2.js} +7 -7
  2. package/dist/{ci-B5N3fcf7.js → ci-BKAwxTDf.js} +11 -11
  3. package/dist/cli.js +22 -22
  4. package/dist/{design-YSIEjvqY.js → design-ROS4n3k3.js} +4 -4
  5. package/dist/{exit-gracefully-BtEG5JVC.js → exit-gracefully-De1Nzy3z.js} +5 -5
  6. package/dist/index.js +3 -3
  7. package/dist/{inspect-D6s9mWr_.js → inspect-Z_e5RkQs.js} +15 -15
  8. package/dist/{install-BQ4Smrxj.js → install-BDS2ISd_.js} +8 -8
  9. package/dist/{install-doctor-script-CoPE8MvO.js → install-doctor-script-J-zvzVqR.js} +4 -4
  10. package/dist/{install-github-workflow-S8vkQtho.js → install-github-workflow-CAo3dNh1.js} +6 -6
  11. package/dist/{install-react-doctor-i7B5LN-e.js → install-react-doctor-C_5DWtTC.js} +8 -8
  12. package/dist/lsp.js +4 -4
  13. package/dist/{print-branded-header-BwwiC9lt.js → print-branded-header-UfYgFqhb.js} +4 -4
  14. package/dist/{read-object-file-WG4bNEA7.js → read-object-file-BDLV3R4X.js} +4 -4
  15. package/dist/{record-metric-BseP74fk.js → record-metric-BGxpNcR0.js} +5 -5
  16. package/dist/{report-error-BJP1Y11f.js → report-error-Wat6_MDs.js} +5 -5
  17. package/dist/{report-workflow-result-RjTlaDuS.js → report-workflow-result-CULZXneJ.js} +5 -5
  18. package/dist/{resolve-scope-DeQeaQa9.js → resolve-scope-BbndLz4E.js} +6 -6
  19. package/dist/{rules-De4NhyAD.js → rules-BSF6erEQ.js} +6 -6
  20. package/dist/{run-scan-app-DhH3Uvaz.js → run-scan-app-D1yyCXe2.js} +10 -10
  21. package/dist/{scan-DJhL4P2g.js → scan-BTYPKfS9.js} +8 -8
  22. package/dist/{should-fail-scan-gate-Di3zg4jS.js → should-fail-scan-gate-CgCFA8pU.js} +10 -10
  23. package/dist/{should-skip-prompts-CY85gVZR.js → should-skip-prompts-CZbr6sjQ.js} +4 -4
  24. package/dist/{unref-stdin-B2sQZIpm.js → unref-stdin-noiOzC5n.js} +4 -4
  25. package/dist/{version-D_2CzsEy.js → version-BAsYYPLc.js} +4 -4
  26. package/dist/{why-Cm5_5JmL.js → why-DZ9AgG5O.js} +4 -4
  27. package/package.json +6 -6
@@ -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]="157e831c-0ece-5604-b31c-e36770c59ea9")}catch(e){}}();
3
- import { D as SENTRY_FLUSH_TIMEOUT_MS, I as isDebugFlagEnabled, On as scrubSensitivePaths, U as CANONICAL_GITHUB_URL, X as DOCS_URL, en as highlighter, i as buildSentryScope, on as isPlainObject, yn as redactSensitiveText } from "./record-metric-BseP74fk.js";
4
- import { o as isExpectedUserError } from "./unref-stdin-B2sQZIpm.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]="bd01af5d-c94c-56b0-8823-3601ceecd3b3")}catch(e){}}();
3
+ import { D as SENTRY_FLUSH_TIMEOUT_MS, I as isDebugFlagEnabled, On as scrubSensitivePaths, U as CANONICAL_GITHUB_URL, X as DOCS_URL, en as highlighter, i as buildSentryScope, on as isPlainObject, yn as redactSensitiveText } from "./record-metric-BGxpNcR0.js";
4
+ import { o as isExpectedUserError } from "./unref-stdin-noiOzC5n.js";
5
5
  import * as Sentry from "@sentry/node";
6
6
  //#region src/cli/utils/is-env-flag-enabled.ts
7
7
  const isEnvFlagEnabled = (value) => value === "1" || value?.toLowerCase() === "true";
@@ -127,13 +127,13 @@ const isDevVersion = (version) => version === "0.0.0" || version.includes("-");
127
127
  * uploads source-map artifacts under, so stack frames symbolicate. Honors the
128
128
  * standard `SENTRY_RELEASE` override.
129
129
  */
130
- const resolveSentryRelease = () => process.env.SENTRY_RELEASE || `react-doctor@0.9.7-dev.f27fd5d`;
130
+ const resolveSentryRelease = () => process.env.SENTRY_RELEASE || `react-doctor@0.9.8-dev.7f028ea`;
131
131
  /**
132
132
  * Deployment environment shown in Sentry's environment filter. Defaults to
133
133
  * `production` for tagged releases and `development` for dev/unbuilt versions,
134
134
  * overridable via the standard `SENTRY_ENVIRONMENT` env var.
135
135
  */
136
- const resolveSentryEnvironment = () => process.env.SENTRY_ENVIRONMENT || (isDevVersion("0.9.7-dev.f27fd5d") ? "development" : "production");
136
+ const resolveSentryEnvironment = () => process.env.SENTRY_ENVIRONMENT || (isDevVersion("0.9.8-dev.7f028ea") ? "development" : "production");
137
137
  /**
138
138
  * Performance-tracing sample rate in `[0, 1]`. Reads `SENTRY_TRACES_SAMPLE_RATE`
139
139
  * (set to `0` to disable tracing) and falls back to
@@ -308,5 +308,5 @@ const buildSectionDivider = () => highlighter.dim(`${DIVIDER_INDENT}${"─".repe
308
308
  //#endregion
309
309
  export { initializeSentry as a, flushSentry as i, buildFooterLinkLines as n, isSentryTracingEnabled as o, activeScanAbortRegistry as r, buildSectionDivider as t };
310
310
 
311
- //# sourceMappingURL=build-section-divider-BIYE5xJ-.js.map
312
- //# debugId=157e831c-0ece-5604-b31c-e36770c59ea9
311
+ //# sourceMappingURL=build-section-divider-DKzi1sn2.js.map
312
+ //# debugId=bd01af5d-c94c-56b0-8823-3601ceecd3b3
@@ -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]="ab6062ac-0d72-514b-80a8-de8eba4e7ebc")}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]="e802241c-f757-5398-8c34-b81729226649")}catch(e){}}();
3
3
  import { n as __require, r as __toESM, t as __commonJSMin } from "./chunk-q7NCDQ7-.js";
4
- import { W as CI_URL, Yn as runSync, en as highlighter, et as GITHUB_ACTIONS_SETUP_URL, t as recordCount, y as METRIC } from "./record-metric-BseP74fk.js";
5
- import { o as isExpectedUserError } from "./unref-stdin-B2sQZIpm.js";
6
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BJP1Y11f.js";
7
- import { L as cliLogger, c as spinner, n as findNearestPackageDirectory } from "./install-doctor-script-CoPE8MvO.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-S8vkQtho.js";
9
- import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, n as isScopeValue } from "./resolve-scope-DeQeaQa9.js";
10
- import { t as shouldSkipPrompts } from "./should-skip-prompts-CY85gVZR.js";
11
- import { t as printBrandedHeader } from "./print-branded-header-BwwiC9lt.js";
4
+ import { W as CI_URL, Yn as runSync, en as highlighter, et as GITHUB_ACTIONS_SETUP_URL, t as recordCount, y as METRIC } from "./record-metric-BGxpNcR0.js";
5
+ import { o as isExpectedUserError } from "./unref-stdin-noiOzC5n.js";
6
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-Wat6_MDs.js";
7
+ import { L as cliLogger, c as spinner, n as findNearestPackageDirectory } from "./install-doctor-script-J-zvzVqR.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-CAo3dNh1.js";
9
+ import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, n as isScopeValue } from "./resolve-scope-BbndLz4E.js";
10
+ import { t as shouldSkipPrompts } from "./should-skip-prompts-CZbr6sjQ.js";
11
+ import { t as printBrandedHeader } from "./print-branded-header-UfYgFqhb.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-B5N3fcf7.js.map
7501
- //# debugId=ab6062ac-0d72-514b-80a8-de8eba4e7ebc
7500
+ //# sourceMappingURL=ci-BKAwxTDf.js.map
7501
+ //# debugId=e802241c-f757-5398-8c34-b81729226649
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]="d2821496-7d1e-5e21-b186-142795117cf0")}catch(e){}}();
3
3
  import { n as __require, r as __toESM, t as __commonJSMin } from "./chunk-q7NCDQ7-.js";
4
- import { I as isDebugFlagEnabled, N as CliInputError, U as CANONICAL_GITHUB_URL, W as CI_URL, en as highlighter, f as writeJsonErrorReport, kn as setColorEnabled, l as isJsonModeActive, m as VERSION } from "./record-metric-BseP74fk.js";
5
- import { a as initializeSentry, i as flushSentry } from "./build-section-divider-BIYE5xJ-.js";
6
- import { o as isExpectedUserError, r as getLastRunTraceId, t as unrefStdin } from "./unref-stdin-B2sQZIpm.js";
7
- import { t as exitGracefully } from "./exit-gracefully-BtEG5JVC.js";
8
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BJP1Y11f.js";
4
+ import { I as isDebugFlagEnabled, N as CliInputError, U as CANONICAL_GITHUB_URL, W as CI_URL, en as highlighter, f as writeJsonErrorReport, kn as setColorEnabled, l as isJsonModeActive, m as VERSION } from "./record-metric-BGxpNcR0.js";
5
+ import { a as initializeSentry, i as flushSentry } from "./build-section-divider-DKzi1sn2.js";
6
+ import { o as isExpectedUserError, r as getLastRunTraceId, t as unrefStdin } from "./unref-stdin-noiOzC5n.js";
7
+ import { t as exitGracefully } from "./exit-gracefully-De1Nzy3z.js";
8
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-Wat6_MDs.js";
9
9
  import { execFileSync } from "node:child_process";
10
10
  import * as Sentry from "@sentry/node";
11
11
  //#region ../../node_modules/.pnpm/commander@14.0.3/node_modules/commander/lib/error.js
@@ -3478,7 +3478,7 @@ ${highlighter.dim("Learn more:")}
3478
3478
  const collectCategoryOption = (value, previousValues) => [...previousValues ?? [], value];
3479
3479
  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").option("--dead-code", "enable dead-code analysis (default)").option("--no-dead-code", "skip dead-code analysis (unused files / exports / dependencies, circular imports)").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);
3480
3480
  program.action(async (directory = ".", flags) => {
3481
- const { runScanCommand } = await import("./scan-DJhL4P2g.js");
3481
+ const { runScanCommand } = await import("./scan-BTYPKfS9.js");
3482
3482
  return runScanCommand({
3483
3483
  directory,
3484
3484
  flags,
@@ -3486,72 +3486,72 @@ program.action(async (directory = ".", flags) => {
3486
3486
  });
3487
3487
  });
3488
3488
  program.command("design [directory]").description("Run only the focused UI design diagnostics").addHelpText("after", renderDesignHelpEpilog).action(async (directory, _options, command) => {
3489
- const { designAction } = await import("./design-YSIEjvqY.js");
3489
+ const { designAction } = await import("./design-ROS4n3k3.js");
3490
3490
  return designAction(directory ?? ".", command.optsWithGlobals());
3491
3491
  });
3492
3492
  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) => {
3493
- const { whyAction } = await import("./why-Cm5_5JmL.js");
3493
+ const { whyAction } = await import("./why-DZ9AgG5O.js");
3494
3494
  return whyAction(location, options);
3495
3495
  });
3496
3496
  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 native non-blocking 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) => {
3497
- const { installAction } = await import("./install-BQ4Smrxj.js");
3497
+ const { installAction } = await import("./install-BDS2ISd_.js");
3498
3498
  return installAction(options, command);
3499
3499
  });
3500
3500
  const providerOption = ["--provider <name>", "ci provider: github-actions or gitlab-ci (auto-detected by default)"];
3501
3501
  const prOption = ["--pr", "open a pull request with the change instead of writing it to the working tree"];
3502
3502
  const ci = program.command("ci").description("Set up, upgrade, and configure React Doctor in your CI");
3503
3503
  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) => {
3504
- const { ciInstallAction } = await import("./ci-B5N3fcf7.js");
3504
+ const { ciInstallAction } = await import("./ci-BKAwxTDf.js");
3505
3505
  return ciInstallAction(command.optsWithGlobals());
3506
3506
  });
3507
3507
  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) => {
3508
- const { ciConfigAction } = await import("./ci-B5N3fcf7.js");
3508
+ const { ciConfigAction } = await import("./ci-BKAwxTDf.js");
3509
3509
  return ciConfigAction(command.optsWithGlobals());
3510
3510
  });
3511
3511
  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) => {
3512
- const { ciUpgradeAction } = await import("./ci-B5N3fcf7.js");
3512
+ const { ciUpgradeAction } = await import("./ci-BKAwxTDf.js");
3513
3513
  return ciUpgradeAction(command.optsWithGlobals());
3514
3514
  });
3515
3515
  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 () => {
3516
- const { versionAction } = await import("./version-D_2CzsEy.js");
3516
+ const { versionAction } = await import("./version-BAsYYPLc.js");
3517
3517
  return versionAction();
3518
3518
  });
3519
3519
  const rules = program.command("rules").description("List, explain, and configure which React Doctor rules run");
3520
3520
  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) => {
3521
- const { rulesListAction } = await import("./rules-De4NhyAD.js");
3521
+ const { rulesListAction } = await import("./rules-BSF6erEQ.js");
3522
3522
  return rulesListAction(command.optsWithGlobals());
3523
3523
  });
3524
3524
  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) => {
3525
- const { rulesExplainAction } = await import("./rules-De4NhyAD.js");
3525
+ const { rulesExplainAction } = await import("./rules-BSF6erEQ.js");
3526
3526
  return rulesExplainAction(rule, command.optsWithGlobals());
3527
3527
  });
3528
3528
  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) => {
3529
- const { rulesSetAction } = await import("./rules-De4NhyAD.js");
3529
+ const { rulesSetAction } = await import("./rules-BSF6erEQ.js");
3530
3530
  return rulesSetAction(rule, severity, command.optsWithGlobals());
3531
3531
  });
3532
3532
  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) => {
3533
- const { rulesEnableAction } = await import("./rules-De4NhyAD.js");
3533
+ const { rulesEnableAction } = await import("./rules-BSF6erEQ.js");
3534
3534
  return rulesEnableAction(rule, command.optsWithGlobals());
3535
3535
  });
3536
3536
  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) => {
3537
- const { rulesDisableAction } = await import("./rules-De4NhyAD.js");
3537
+ const { rulesDisableAction } = await import("./rules-BSF6erEQ.js");
3538
3538
  return rulesDisableAction(rule, command.optsWithGlobals());
3539
3539
  });
3540
3540
  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) => {
3541
- const { rulesCategoryAction } = await import("./rules-De4NhyAD.js");
3541
+ const { rulesCategoryAction } = await import("./rules-BSF6erEQ.js");
3542
3542
  return rulesCategoryAction(category, severity, command.optsWithGlobals());
3543
3543
  });
3544
3544
  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) => {
3545
- const { rulesIgnoreTagAction } = await import("./rules-De4NhyAD.js");
3545
+ const { rulesIgnoreTagAction } = await import("./rules-BSF6erEQ.js");
3546
3546
  return rulesIgnoreTagAction(tag, command.optsWithGlobals());
3547
3547
  });
3548
3548
  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) => {
3549
- const { rulesUnignoreTagAction } = await import("./rules-De4NhyAD.js");
3549
+ const { rulesUnignoreTagAction } = await import("./rules-BSF6erEQ.js");
3550
3550
  return rulesUnignoreTagAction(tag, command.optsWithGlobals());
3551
3551
  });
3552
3552
  program.command("experimental-lsp", { hidden: false }).description("[experimental] run the React Doctor language server over stdio (for editors)").allowUnknownOption().action(() => {});
3553
3553
  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)").option("--no-dead-code", "skip dead-code analysis").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) => {
3554
- const { runScanCommand } = await import("./scan-DJhL4P2g.js");
3554
+ const { runScanCommand } = await import("./scan-BTYPKfS9.js");
3555
3555
  return runScanCommand({
3556
3556
  directory,
3557
3557
  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]="4acb36fc-5297-5117-b458-2d59bb267e5f")}catch(e){}}();
3
- import { t as inspectAction } from "./inspect-D6s9mWr_.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]="ee77abde-0d99-5eb7-8a52-1f1d548ce394")}catch(e){}}();
3
+ import { t as inspectAction } from "./inspect-Z_e5RkQs.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-YSIEjvqY.js.map
14
- //# debugId=4acb36fc-5297-5117-b458-2d59bb267e5f
13
+ //# sourceMappingURL=design-ROS4n3k3.js.map
14
+ //# debugId=ee77abde-0d99-5eb7-8a52-1f1d548ce394
@@ -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]="3a726be7-0f3f-5da5-bf68-6427c17e7fc3")}catch(e){}}();
3
- import { f as writeJsonErrorReport, l as isJsonModeActive } from "./record-metric-BseP74fk.js";
4
- import { i as flushSentry, n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-BIYE5xJ-.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]="1d96d207-45a1-541e-bc4d-c4aaf61c7400")}catch(e){}}();
3
+ import { f as writeJsonErrorReport, l as isJsonModeActive } from "./record-metric-BGxpNcR0.js";
4
+ import { i as flushSentry, n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-DKzi1sn2.js";
5
5
  //#region src/cli/utils/active-tui-renderer.ts
6
6
  let activeTuiRenderer = null;
7
7
  const registerActiveTuiRenderer = (renderer) => {
@@ -43,5 +43,5 @@ const exitGracefully = () => {
43
43
  //#endregion
44
44
  export { registerActiveTuiRenderer as n, exitGracefully as t };
45
45
 
46
- //# sourceMappingURL=exit-gracefully-BtEG5JVC.js.map
47
- //# debugId=3a726be7-0f3f-5da5-bf68-6427c17e7fc3
46
+ //# sourceMappingURL=exit-gracefully-De1Nzy3z.js.map
47
+ //# debugId=1d96d207-45a1-541e-bc4d-c4aaf61c7400
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]="55082314-8d6c-5c8a-b2b1-7b2c800ebe3b")}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]="1bb39004-44bb-5b36-a5bf-d415838af263")}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 { ALL_REACT_DOCTOR_RULE_KEYS, CROSS_FILE_DEPENDENCY_COLLECTORS, CROSS_FILE_RULE_IDS, FRAMEWORK_SPECIFIC_RULE_KEYS, FRAMEWORK_TOKENS, MOTION_LIBRARY_PACKAGES, REACT_COMPILER_RULES, REACT_DOCTOR_RULES, REACT_DOCTOR_RULE_REGISTRY, REACT_DOCTOR_SCAN_RULES, classifySecurityScanFile, collectCrossFileDependencyProbes, resetManifestCaches, shouldReadSecurityScanContent } from "oxlint-plugin-react-doctor/core";
@@ -63958,7 +63958,7 @@ const SOCKET_FREE_USER_AGENT = "react-doctor-supply-chain";
63958
63958
  const FILE_LINT_CACHE_FILENAME = "file-lint-cache.json";
63959
63959
  const FILE_LINT_CACHE_MAX_FILE_COUNT = 5e4;
63960
63960
  const SIDECAR_LINT_CACHE_FILENAME = "sidecar-lint-cache.json";
63961
- const CORE_PACKAGE_VERSION = "0.9.7";
63961
+ const CORE_PACKAGE_VERSION = "0.9.8";
63962
63962
  const DEAD_CODE_CACHE_FILENAME = "dead-code-cache.json";
63963
63963
  const DEAD_CODE_SUMMARY_CACHE_FILENAME = "dead-code-summaries.json";
63964
63964
  const SUPPLY_CHAIN_PLUGIN = "socket";
@@ -77635,4 +77635,4 @@ const toJsonReport = (result, options) => buildJsonReport({
77635
77635
  export { AmbiguousProjectError, NoReactDependencyError, NotADirectoryError, PackageJsonNotFoundError, ProjectNotFoundError, ReactDoctorError, buildJsonReport, buildJsonReportError, clearCaches, defineConfig, diagnose, filterSourceFiles, getDiffInfo, hasReactRuntime, isProjectDiscoveryError, isReactDoctorError, summarizeDiagnostics, toJsonReport };
77636
77636
 
77637
77637
  //# sourceMappingURL=index.js.map
77638
- //# debugId=55082314-8d6c-5c8a-b2b1-7b2c800ebe3b
77638
+ //# debugId=1bb39004-44bb-5b36-a5bf-d415838af263
@@ -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]="05c7ebb4-8ce5-5819-b564-7347b18f25ea")}catch(e){}}();
3
- import { A as STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES, B as isCiOrCodingAgentEnvironment, Hn as gen, I as isDebugFlagEnabled, It as detectAiTrainingEnvironment, Jn as runPromise, Jt as getDiffInfo, Kn as provide$1, Kt as getChangedLineRanges, Lt as discoverReactSubprojects, Mn as toRelativePath, N as CliInputError, Qt as hasReactRuntime, St as StagedFiles, Tn as resolveScanTarget, Tt as buildJsonReport, U as CANONICAL_GITHUB_URL, V as isCodingAgentEnvironment, Vt as findLegacyConfig, Wt as getBaselineDiffPlan, an as isPathInsideDirectory, bn as remainingDeadlineBudgetMs, c as enableJsonMode, d as setJsonReportMode, en as highlighter, f as writeJsonErrorReport, hn as mapWithConcurrency, k as STAGED_FILES_TEMP_DIR_PREFIX, m as VERSION, n as recordDistribution, nn as isErrnoException, nt as Git, on as isPlainObject, p as writeJsonReport, pn as listWorkspacePackages, t as recordCount, tr as provide, u as setJsonReportDirectory, vn as messageFromUnknown, y as METRIC, yt as STAGED_FILES_PROJECT_CONFIG_FILENAMES } from "./record-metric-BseP74fk.js";
4
- import { i as flushSentry } from "./build-section-divider-BIYE5xJ-.js";
5
- import { o as isExpectedUserError } from "./unref-stdin-B2sQZIpm.js";
6
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BJP1Y11f.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-CoPE8MvO.js";
8
- import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, i as isReactDoctorWorkflowInstalled, l as prompts, s as upgradeWorkflowActionToV2 } from "./install-github-workflow-S8vkQtho.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-DeQeaQa9.js";
10
- import { t as shouldSkipPrompts } from "./should-skip-prompts-CY85gVZR.js";
11
- import { A as resolveMergeBaseRef, B as buildEmptyReportMessage, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, F as printDiagnosticsDump, O as createInvocationInspect, R as filterDiagnosticsByCategories, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, _ 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 } from "./should-fail-scan-gate-Di3zg4jS.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-RjTlaDuS.js";
13
- import { a as askUpgradeActionVersion, c as recordCiPromptDecision, i as installReactDoctorAgentHooks, l as hasHandledActionUpgrade, o as askAddToGitHubActions, r as findAgentsWithLegacyShellHooks, s as hasHandledCiPrompt, t as getSkillSourceDirectory, u as recordActionUpgradeDecision } from "./install-react-doctor-i7B5LN-e.js";
14
- import { t as readObjectFile } from "./read-object-file-WG4bNEA7.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]="0567ce41-4a3d-5220-9609-7ec2ee490a60")}catch(e){}}();
3
+ import { A as STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES, B as isCiOrCodingAgentEnvironment, Hn as gen, I as isDebugFlagEnabled, It as detectAiTrainingEnvironment, Jn as runPromise, Jt as getDiffInfo, Kn as provide$1, Kt as getChangedLineRanges, Lt as discoverReactSubprojects, Mn as toRelativePath, N as CliInputError, Qt as hasReactRuntime, St as StagedFiles, Tn as resolveScanTarget, Tt as buildJsonReport, U as CANONICAL_GITHUB_URL, V as isCodingAgentEnvironment, Vt as findLegacyConfig, Wt as getBaselineDiffPlan, an as isPathInsideDirectory, bn as remainingDeadlineBudgetMs, c as enableJsonMode, d as setJsonReportMode, en as highlighter, f as writeJsonErrorReport, hn as mapWithConcurrency, k as STAGED_FILES_TEMP_DIR_PREFIX, m as VERSION, n as recordDistribution, nn as isErrnoException, nt as Git, on as isPlainObject, p as writeJsonReport, pn as listWorkspacePackages, t as recordCount, tr as provide, u as setJsonReportDirectory, vn as messageFromUnknown, y as METRIC, yt as STAGED_FILES_PROJECT_CONFIG_FILENAMES } from "./record-metric-BGxpNcR0.js";
4
+ import { i as flushSentry } from "./build-section-divider-DKzi1sn2.js";
5
+ import { o as isExpectedUserError } from "./unref-stdin-noiOzC5n.js";
6
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-Wat6_MDs.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-J-zvzVqR.js";
8
+ import { a as readReactDoctorWorkflow, c as workflowUsesV1Action, i as isReactDoctorWorkflowInstalled, l as prompts, s as upgradeWorkflowActionToV2 } from "./install-github-workflow-CAo3dNh1.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-BbndLz4E.js";
10
+ import { t as shouldSkipPrompts } from "./should-skip-prompts-CZbr6sjQ.js";
11
+ import { A as resolveMergeBaseRef, B as buildEmptyReportMessage, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, F as printDiagnosticsDump, O as createInvocationInspect, R as filterDiagnosticsByCategories, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, _ 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 } from "./should-fail-scan-gate-CgCFA8pU.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-CULZXneJ.js";
13
+ import { a as askUpgradeActionVersion, c as recordCiPromptDecision, i as installReactDoctorAgentHooks, l as hasHandledActionUpgrade, o as askAddToGitHubActions, r as findAgentsWithLegacyShellHooks, s as hasHandledCiPrompt, t as getSkillSourceDirectory, u as recordActionUpgradeDecision } from "./install-react-doctor-C_5DWtTC.js";
14
+ import { t as readObjectFile } from "./read-object-file-BDLV3R4X.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";
@@ -1439,5 +1439,5 @@ const inspectAction = async (directory, flags, invocationCommand = "inspect") =>
1439
1439
  //#endregion
1440
1440
  export { warnDeprecatedFailOn as n, runProjectMigrations as r, inspectAction as t };
1441
1441
 
1442
- //# sourceMappingURL=inspect-D6s9mWr_.js.map
1443
- //# debugId=05c7ebb4-8ce5-5819-b564-7347b18f25ea
1442
+ //# sourceMappingURL=inspect-Z_e5RkQs.js.map
1443
+ //# debugId=0567ce41-4a3d-5220-9609-7ec2ee490a60
@@ -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]="59263960-e85e-56db-9f6e-67ce53547a37")}catch(e){}}();
3
- import { Yn as runSync, t as recordCount, y as METRIC } from "./record-metric-BseP74fk.js";
4
- import { o as isExpectedUserError } from "./unref-stdin-B2sQZIpm.js";
5
- import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-BJP1Y11f.js";
6
- import { t as printBrandedHeader } from "./print-branded-header-BwwiC9lt.js";
7
- import { n as runInstallReactDoctor } from "./install-react-doctor-i7B5LN-e.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]="0cdb1e4c-a080-5b1b-a6bb-6d0b10cda16a")}catch(e){}}();
3
+ import { Yn as runSync, t as recordCount, y as METRIC } from "./record-metric-BGxpNcR0.js";
4
+ import { o as isExpectedUserError } from "./unref-stdin-noiOzC5n.js";
5
+ import { n as handleError, r as handleUserError, t as reportErrorToSentry } from "./report-error-Wat6_MDs.js";
6
+ import { t as printBrandedHeader } from "./print-branded-header-UfYgFqhb.js";
7
+ import { n as runInstallReactDoctor } from "./install-react-doctor-C_5DWtTC.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-BQ4Smrxj.js.map
32
- //# debugId=59263960-e85e-56db-9f6e-67ce53547a37
31
+ //# sourceMappingURL=install-BDS2ISd_.js.map
32
+ //# debugId=0cdb1e4c-a080-5b1b-a6bb-6d0b10cda16a
@@ -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]="da64ce55-6202-57c8-86d2-50c5bc7985da")}catch(e){}}();
3
- import { C as RUN_GIT_MAX_BUFFER_BYTES, In as error$1, Ln as info$1, P as isNonInteractiveEnvironment, Rn as log, Yn as runSync, en as highlighter, zn as warn } from "./record-metric-BseP74fk.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]="8e8a8984-9999-5109-b2bd-6383c2a28c71")}catch(e){}}();
3
+ import { C as RUN_GIT_MAX_BUFFER_BYTES, In as error$1, Ln as info$1, P as isNonInteractiveEnvironment, Rn as log, Yn as runSync, en as highlighter, zn as warn } from "./record-metric-BGxpNcR0.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-CoPE8MvO.js.map
3251
- //# debugId=da64ce55-6202-57c8-86d2-50c5bc7985da
3250
+ //# sourceMappingURL=install-doctor-script-J-zvzVqR.js.map
3251
+ //# debugId=8e8a8984-9999-5109-b2bd-6383c2a28c71
@@ -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]="0a7238b0-d163-5c08-a259-fcfbaa710ceb")}catch(e){}}();
3
- import { v as GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS } from "./record-metric-BseP74fk.js";
4
- import { t as unrefStdin } from "./unref-stdin-B2sQZIpm.js";
5
- import { L as cliLogger } from "./install-doctor-script-CoPE8MvO.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]="8dda956d-b729-501f-8b7e-d1adf6d22f05")}catch(e){}}();
3
+ import { v as GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS } from "./record-metric-BGxpNcR0.js";
4
+ import { t as unrefStdin } from "./unref-stdin-noiOzC5n.js";
5
+ import { L as cliLogger } from "./install-doctor-script-J-zvzVqR.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-S8vkQtho.js.map
267
- //# debugId=0a7238b0-d163-5c08-a259-fcfbaa710ceb
266
+ //# sourceMappingURL=install-github-workflow-CAo3dNh1.js.map
267
+ //# debugId=8dda956d-b729-501f-8b7e-d1adf6d22f05
@@ -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]="016f8a4f-60eb-5fe8-9f7f-dc5a4ca59b4c")}catch(e){}}();
3
- import { N as CliInputError, _ as CI_TRUST_COMPANIES, en as highlighter, et as GITHUB_ACTIONS_SETUP_URL, nn as isErrnoException, t as recordCount, vt as SKILL_NAME, y as METRIC } from "./record-metric-BseP74fk.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-CoPE8MvO.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-S8vkQtho.js";
6
- import { t as shouldSkipPrompts } from "./should-skip-prompts-CY85gVZR.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-RjTlaDuS.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]="2aec14a9-5112-5419-b6a1-fdb06bb5539e")}catch(e){}}();
3
+ import { N as CliInputError, _ as CI_TRUST_COMPANIES, en as highlighter, et as GITHUB_ACTIONS_SETUP_URL, nn as isErrnoException, t as recordCount, vt as SKILL_NAME, y as METRIC } from "./record-metric-BGxpNcR0.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-J-zvzVqR.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-CAo3dNh1.js";
6
+ import { t as shouldSkipPrompts } from "./should-skip-prompts-CZbr6sjQ.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-CULZXneJ.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";
@@ -1150,5 +1150,5 @@ const runInstallReactDoctor = async (options = {}) => {
1150
1150
  //#endregion
1151
1151
  export { askUpgradeActionVersion as a, recordCiPromptDecision as c, installReactDoctorAgentHooks as i, hasHandledActionUpgrade as l, runInstallReactDoctor as n, askAddToGitHubActions as o, findAgentsWithLegacyShellHooks as r, hasHandledCiPrompt as s, getSkillSourceDirectory as t, recordActionUpgradeDecision as u };
1152
1152
 
1153
- //# sourceMappingURL=install-react-doctor-i7B5LN-e.js.map
1154
- //# debugId=016f8a4f-60eb-5fe8-9f7f-dc5a4ca59b4c
1153
+ //# sourceMappingURL=install-react-doctor-C_5DWtTC.js.map
1154
+ //# debugId=2aec14a9-5112-5419-b6a1-fdb06bb5539e
package/dist/lsp.js CHANGED
@@ -64007,7 +64007,7 @@ const SOCKET_FREE_USER_AGENT = "react-doctor-supply-chain";
64007
64007
  const FILE_LINT_CACHE_FILENAME = "file-lint-cache.json";
64008
64008
  const FILE_LINT_CACHE_MAX_FILE_COUNT = 5e4;
64009
64009
  const SIDECAR_LINT_CACHE_FILENAME = "sidecar-lint-cache.json";
64010
- const CORE_PACKAGE_VERSION = "0.9.7";
64010
+ const CORE_PACKAGE_VERSION = "0.9.8";
64011
64011
  const DEAD_CODE_CACHE_FILENAME = "dead-code-cache.json";
64012
64012
  const DEAD_CODE_SUMMARY_CACHE_FILENAME = "dead-code-summaries.json";
64013
64013
  const SUPPLY_CHAIN_PLUGIN = "socket";
@@ -77250,7 +77250,7 @@ const computeConfigFingerprint = (projectDirectory, version) => {
77250
77250
  /** Display name used in client-facing messages and progress titles. */
77251
77251
  const SERVER_DISPLAY_NAME = "React Doctor";
77252
77252
  /** Server version reported in `serverInfo`; injected at build, `dev` from source. */
77253
- const SERVER_VERSION = "0.9.7";
77253
+ const SERVER_VERSION = "0.9.8";
77254
77254
  /** `Diagnostic.source` shown next to every published diagnostic. */
77255
77255
  const DIAGNOSTIC_SOURCE = "react-doctor";
77256
77256
  /**
@@ -79315,5 +79315,5 @@ const startLanguageServer = () => {
79315
79315
  };
79316
79316
  //#endregion
79317
79317
  export { startLanguageServer };
79318
- !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]="2adf086a-6881-595d-b91a-576b9fb447aa")}catch(e){}}();
79319
- //# debugId=2adf086a-6881-595d-b91a-576b9fb447aa
79318
+ !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]="66f70bea-ca50-5567-9362-6f615f7ef096")}catch(e){}}();
79319
+ //# debugId=66f70bea-ca50-5567-9362-6f615f7ef096
@@ -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]="3a1ade67-52d6-59de-8eeb-0b8f9a9a0874")}catch(e){}}();
3
- import { Hn as gen, Rn as log, en as highlighter, m as VERSION } from "./record-metric-BseP74fk.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]="0af74d4a-732c-5b00-85ed-463ac1189430")}catch(e){}}();
3
+ import { Hn as gen, Rn as log, en as highlighter, m as VERSION } from "./record-metric-BGxpNcR0.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-BwwiC9lt.js.map
22
- //# debugId=3a1ade67-52d6-59de-8eeb-0b8f9a9a0874
21
+ //# sourceMappingURL=print-branded-header-UfYgFqhb.js.map
22
+ //# debugId=0af74d4a-732c-5b00-85ed-463ac1189430
@@ -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]="aba8ac3d-524e-52e3-af6c-2e1b430218e6")}catch(e){}}();
3
- import { on as isPlainObject } from "./record-metric-BseP74fk.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]="64576b78-22bf-5694-ab22-21405d96643d")}catch(e){}}();
3
+ import { on as isPlainObject } from "./record-metric-BGxpNcR0.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-WG4bNEA7.js.map
24
- //# debugId=aba8ac3d-524e-52e3-af6c-2e1b430218e6
23
+ //# sourceMappingURL=read-object-file-BDLV3R4X.js.map
24
+ //# debugId=64576b78-22bf-5694-ab22-21405d96643d
@@ -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]="42740228-6eb7-5504-bc85-c1fea9fe2a4c")}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]="e7eb2707-d5cd-5b9e-a5c3-0da36e11689f")}catch(e){}}();
3
3
  import { n as __require, r as __toESM$1, t as __commonJSMin$1 } from "./chunk-q7NCDQ7-.js";
4
4
  import { createRequire } from "node:module";
5
5
  import * as NodeChildProcess from "node:child_process";
@@ -64121,7 +64121,7 @@ const SOCKET_FREE_USER_AGENT = "react-doctor-supply-chain";
64121
64121
  const FILE_LINT_CACHE_FILENAME = "file-lint-cache.json";
64122
64122
  const FILE_LINT_CACHE_MAX_FILE_COUNT = 5e4;
64123
64123
  const SIDECAR_LINT_CACHE_FILENAME = "sidecar-lint-cache.json";
64124
- const CORE_PACKAGE_VERSION = "0.9.7";
64124
+ const CORE_PACKAGE_VERSION = "0.9.8";
64125
64125
  const DEAD_CODE_CACHE_FILENAME = "dead-code-cache.json";
64126
64126
  const DEAD_CODE_SUMMARY_CACHE_FILENAME = "dead-code-summaries.json";
64127
64127
  const SUPPLY_CHAIN_PLUGIN = "socket";
@@ -78182,7 +78182,7 @@ const makeNoopConsole = () => ({
78182
78182
  });
78183
78183
  //#endregion
78184
78184
  //#region src/cli/utils/version.ts
78185
- const VERSION = "0.9.7-dev.f27fd5d";
78185
+ const VERSION = "0.9.8-dev.7f028ea";
78186
78186
  //#endregion
78187
78187
  //#region src/cli/utils/json-mode.ts
78188
78188
  let context = null;
@@ -78471,5 +78471,5 @@ const recordDistribution = (name, value, options = {}) => {
78471
78471
  //#endregion
78472
78472
  export { Files as $, withTracer as $n, hashFileContents as $t, STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES as A, summarizeDiagnostics as An, clearConfigCache as At, isCiOrCodingAgentEnvironment as B, Diagnostic as Bn, filterSourceFiles as Bt, RUN_GIT_MAX_BUFFER_BYTES as C, resolveReactDoctorCacheDir as Cn, SupplyChain as Ct, SENTRY_FLUSH_TIMEOUT_MS as D, runInspect as Dn, buildSkippedChecks as Dt, SENTRY_DSN as E, restoreLegacyThrow as En, buildRuleDocsUrl as Et, isGitHookEnvironment as F, Console as Fn, createOxlintSpawnSlots as Ft, COMPILER_CLEANUP_BUCKET as G, promise as Gn, getCategoryImpact as Gt, CANONICAL_DISCORD_URL as H, gen as Hn, formatErrorChain as Ht, isDebugFlagEnabled as I, error as In, detectAiTrainingEnvironment as It, Config as J, runPromise as Jn, getDiffInfo as Jt, COMPILER_CLEANUP_RULE_KEYS as K, provide as Kn, getChangedLineRanges as Kt, ACTION_INPUT_ENVIRONMENT_VARIABLES as L, info as Ln, discoverReactSubprojects as Lt, TUI_REPORT_DETAIL_WIDTH_FRACTION as M, toRelativePath as Mn, computeConfigFingerprint as Mt, CliInputError as N, validateConfigTypes as Nn, computeDiagnosticDelta as Nt, SENTRY_RELEASE_PREFIX as O, scrubSensitivePaths as On, calculateScore as Ot, isNonInteractiveEnvironment as P, yieldToEventLoop as Pn, createNodeReadFileLinesSync as Pt, ENTERPRISE_CONTACT_URL as Q, void_ as Qn, hasReactRuntime as Qt, detectRunnerOs as R, log as Rn, filterDiagnosticsForSurface as Rt, REACT_DOCTOR_CONFIG_PROJECT_NAME as S, resolveLintBatchOrdering as Sn, StagedFiles as St, SCAN_RESULT_CACHE_MAX_HASHED_FILE_SIZE_BYTES as T, resolveScanTarget as Tn, buildJsonReport as Tt, CANONICAL_GITHUB_URL as U, map$3 as Un, formatReactDoctorError as Ut, isCodingAgentEnvironment as V, decodeUnknownSync as Vn, findLegacyConfig as Vt, CI_URL as W, orElseSucceed as Wn, getBaselineDiffPlan as Wt, DOCS_URL as X, sync as Xn, groupBy as Xt, DIAGNOSTIC_CATEGORY_BUCKETS as Y, runSync as Yn, getEquivalentRuleKeys as Yt, DeadCode as Z, try_ as Zn, hasPublishedFixRecipe as Zt, CI_TRUST_COMPANIES as _, mergeReactDoctorConfigs as _n, SHARE_BASE_URL as _t, buildSentryProjectContext as a, isPathInsideDirectory as an, externalSpan as ar, LEGACY_CONFIG_FILENAME as at, MINIMUM_VTE_VERSION_FOR_HYPERLINKS as b, remainingDeadlineBudgetMs as bn, Score as bt, enableJsonMode as c, isReactDoctorError as cn, MILLISECONDS_PER_SECOND as ct, setJsonReportMode as d, layerOtlp as dn, OxlintConcurrency as dt, highlighter as en, mergeAll$1 as er, GITHUB_ACTIONS_SETUP_URL as et, writeJsonErrorReport as f, listSourceFiles as fn, OxlintSpawnSlots as ft, BASELINE_FILES_TEMP_DIR_PREFIX as g, materializeSourceTree as gn, Reporter as gt, makeNoopConsole as h, mapWithConcurrency as hn, Project as ht, buildSentryScope as i, isMonorepoRoot as in, ParentSpan as ir, JSX_FILE_PATTERN as it, TUI_REPORT_COMPACT_MAX_ROWS as j, toCanonicalPath as jn, collectSourceFileCountsByDirectory as jt, STAGED_FILES_TEMP_DIR_PREFIX as k, setColorEnabled as kn, canonicalizeUserRuleKey as kt, isJsonModeActive as l, isSameRuleKey as ln, NodeResolver as lt, VERSION as m, loadConfigWithSource as mn, Progress as mt, recordDistribution as n, isErrnoException as nn, succeed$3 as nr, Git as nt, setSentryProjectInfo as o, isPlainObject as on, make$33 as or, LintPartialFailures as ot, writeJsonReport as p, listWorkspacePackages as pn, PerFileLintCacheEnabled as pt, CONFIG_SCHEMA_URL as q, provideService$2 as qn, getDiagnosticRuleIdentity as qt, toSpanAttributes as r, isFile as rn, isSuccess as rr, HTML_FILE_PATTERN as rt, getRunId as s, isProjectDiscoveryError as sn, isSome as sr, Linter as st, recordCount as t, isDirectory as tn, provide$2 as tr, GIT_SHOW_MAX_BUFFER_BYTES as tt, setJsonReportDirectory as u, isScanComplete as un, OXLINT_NODE_REQUIREMENT as ut, GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS as v, messageFromUnknown as vn, SKILL_NAME as vt, SCAN_RESULT_CACHE_FILENAME as w, resolveScanConcurrency as wn, atomicWriteJson as wt, NANOSECONDS_PER_SECOND as x, resolveGithubActionsScoreMetadata as xn, SidecarLintCacheEnabled as xt, METRIC as y, redactSensitiveText as yn, STAGED_FILES_PROJECT_CONFIG_FILENAMES as yt, isCiEnvironment as z, warn$1 as zn, filterPathsOutsideDirectories as zt };
78473
78473
 
78474
- //# sourceMappingURL=record-metric-BseP74fk.js.map
78475
- //# debugId=42740228-6eb7-5504-bc85-c1fea9fe2a4c
78474
+ //# sourceMappingURL=record-metric-BGxpNcR0.js.map
78475
+ //# debugId=e7eb2707-d5cd-5b9e-a5c3-0da36e11689f
@@ -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]="124b7de6-433a-5d4a-94a7-ed145df22295")}catch(e){}}();
3
- import { D as SENTRY_FLUSH_TIMEOUT_MS, H as CANONICAL_DISCORD_URL, Hn as gen, Ht as formatErrorChain, In as error, U as CANONICAL_GITHUB_URL, Ut as formatReactDoctorError, Yn as runSync, cn as isReactDoctorError, en as highlighter, i as buildSentryScope, m as VERSION, nn as isErrnoException, t as recordCount, y as METRIC } from "./record-metric-BseP74fk.js";
4
- import { c as isEnvironmentError, i as recordRunTraceId, n as getActiveRunTrace, o as isExpectedUserError, s as formatEnvironmentError } from "./unref-stdin-B2sQZIpm.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]="98355477-37ef-5b82-8b69-b28370c58639")}catch(e){}}();
3
+ import { D as SENTRY_FLUSH_TIMEOUT_MS, H as CANONICAL_DISCORD_URL, Hn as gen, Ht as formatErrorChain, In as error, U as CANONICAL_GITHUB_URL, Ut as formatReactDoctorError, Yn as runSync, cn as isReactDoctorError, en as highlighter, i as buildSentryScope, m as VERSION, nn as isErrnoException, t as recordCount, y as METRIC } from "./record-metric-BGxpNcR0.js";
4
+ import { c as isEnvironmentError, i as recordRunTraceId, n as getActiveRunTrace, o as isExpectedUserError, s as formatEnvironmentError } from "./unref-stdin-noiOzC5n.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";
@@ -154,5 +154,5 @@ const reportErrorToSentry = async (error) => {
154
154
  //#endregion
155
155
  export { handleError as n, handleUserError as r, reportErrorToSentry as t };
156
156
 
157
- //# sourceMappingURL=report-error-BJP1Y11f.js.map
158
- //# debugId=124b7de6-433a-5d4a-94a7-ed145df22295
157
+ //# sourceMappingURL=report-error-Wat6_MDs.js.map
158
+ //# debugId=98355477-37ef-5b82-8b69-b28370c58639
@@ -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]="5d741ef3-c70b-59d8-8bc4-1036d4770f50")}catch(e){}}();
3
- import { S as REACT_DOCTOR_CONFIG_PROJECT_NAME, t as recordCount, y as METRIC } from "./record-metric-BseP74fk.js";
4
- import { u as isCommandAvailable } from "./install-github-workflow-S8vkQtho.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]="2c4a070e-23f8-5a31-a4af-18688e5c19c0")}catch(e){}}();
3
+ import { S as REACT_DOCTOR_CONFIG_PROJECT_NAME, t as recordCount, y as METRIC } from "./record-metric-BGxpNcR0.js";
4
+ import { u as isCommandAvailable } from "./install-github-workflow-CAo3dNh1.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-RjTlaDuS.js.map
279
- //# debugId=5d741ef3-c70b-59d8-8bc4-1036d4770f50
278
+ //# sourceMappingURL=report-workflow-result-CULZXneJ.js.map
279
+ //# debugId=2c4a070e-23f8-5a31-a4af-18688e5c19c0
@@ -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]="947bb4b7-75a4-5cd5-81c7-870cd653c2f4")}catch(e){}}();
3
- import { Bt as filterSourceFiles, an as isPathInsideDirectory, jn as toCanonicalPath } from "./record-metric-BseP74fk.js";
4
- import { L as cliLogger } from "./install-doctor-script-CoPE8MvO.js";
5
- import { d as detectDefaultBranch, f as runCommand, l as prompts, u as isCommandAvailable } from "./install-github-workflow-S8vkQtho.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]="4eeba5d0-95fa-57b3-a274-145765e8fa74")}catch(e){}}();
3
+ import { Bt as filterSourceFiles, an as isPathInsideDirectory, jn as toCanonicalPath } from "./record-metric-BGxpNcR0.js";
4
+ import { L as cliLogger } from "./install-doctor-script-J-zvzVqR.js";
5
+ import { d as detectDefaultBranch, f as runCommand, l as prompts, u as isCommandAvailable } from "./install-github-workflow-CAo3dNh1.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-DeQeaQa9.js.map
339
- //# debugId=947bb4b7-75a4-5cd5-81c7-870cd653c2f4
338
+ //# sourceMappingURL=resolve-scope-BbndLz4E.js.map
339
+ //# debugId=4eeba5d0-95fa-57b3-a274-145765e8fa74
@@ -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]="6e3d3ac2-d5ff-5ab7-9588-da2384a93cdb")}catch(e){}}();
3
- import { At as clearConfigCache, Et as buildRuleDocsUrl, G as COMPILER_CLEANUP_BUCKET, K as COMPILER_CLEANUP_RULE_KEYS, Nn as validateConfigTypes, Yt as getEquivalentRuleKeys, en as highlighter, ln as isSameRuleKey, mn as loadConfigWithSource, on as isPlainObject, t as recordCount, y as METRIC } from "./record-metric-BseP74fk.js";
4
- import { L as cliLogger, n as findNearestPackageDirectory } from "./install-doctor-script-CoPE8MvO.js";
5
- import { t as readObjectFile } from "./read-object-file-WG4bNEA7.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]="75b47b0a-c241-5227-936a-b866927b2c69")}catch(e){}}();
3
+ import { At as clearConfigCache, Et as buildRuleDocsUrl, G as COMPILER_CLEANUP_BUCKET, K as COMPILER_CLEANUP_RULE_KEYS, Nn as validateConfigTypes, Yt as getEquivalentRuleKeys, en as highlighter, ln as isSameRuleKey, mn as loadConfigWithSource, on as isPlainObject, t as recordCount, y as METRIC } from "./record-metric-BGxpNcR0.js";
4
+ import { L as cliLogger, n as findNearestPackageDirectory } from "./install-doctor-script-J-zvzVqR.js";
5
+ import { t as readObjectFile } from "./read-object-file-BDLV3R4X.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-De4NhyAD.js.map
581
- //# debugId=6e3d3ac2-d5ff-5ab7-9588-da2384a93cdb
580
+ //# sourceMappingURL=rules-BSF6erEQ.js.map
581
+ //# debugId=75b47b0a-c241-5227-936a-b866927b2c69
@@ -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]="9a37b35f-e3b2-56a0-97a0-d925c7e914bb")}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]="1bc49abf-cd34-52d5-b86f-8966b48429ea")}catch(e){}}();
3
3
  import { n as __require, r as __toESM, t as __commonJSMin } from "./chunk-q7NCDQ7-.js";
4
- import { Et as buildRuleDocsUrl, F as isGitHookEnvironment, Gt as getCategoryImpact, Jn as runPromise, Jt as getDiffInfo, Kt as getChangedLineRanges, M as TUI_REPORT_DETAIL_WIDTH_FRACTION, Ot as calculateScore, Pn as yieldToEventLoop, Qn as void_, Tn as resolveScanTarget, Wt as getBaselineDiffPlan, Xn as sync, Y as DIAGNOSTIC_CATEGORY_BUCKETS, Zt as hasPublishedFixRecipe, _ as CI_TRUST_COMPANIES, an as isPathInsideDirectory, bn as remainingDeadlineBudgetMs, en as highlighter, et as GITHUB_ACTIONS_SETUP_URL, gt as Reporter, hn as mapWithConcurrency, j as TUI_REPORT_COMPACT_MAX_ROWS, mt as Progress, n as recordDistribution, nr as succeed, t as recordCount, y as METRIC, z as isCiEnvironment } from "./record-metric-BseP74fk.js";
5
- import { n as registerActiveTuiRenderer, t as exitGracefully } from "./exit-gracefully-BtEG5JVC.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-CoPE8MvO.js";
7
- import { i as isReactDoctorWorkflowInstalled } from "./install-github-workflow-S8vkQtho.js";
8
- import { r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-DeQeaQa9.js";
9
- import { A as resolveMergeBaseRef, B as buildEmptyReportMessage, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, F as printDiagnosticsDump, G as formatLearnMoreLine, H as buildRulePriorityMap, I as formatDiagnosticSite, L as hasIncompleteScoreAnalysis, M as pluralize, N as formatElapsedTime, O as createInvocationInspect, P as printFooter, R as filterDiagnosticsByCategories, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, U as buildSortedRuleGroups, V as hasLintHardFailure, W as formatFixRecipeLine, _ 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 buildNoScoreMessage } from "./should-fail-scan-gate-Di3zg4jS.js";
10
- import { a as recordGate, f as ONBOARDING_EVENT, n as openUrl, r as isGatePending } from "./report-workflow-result-RjTlaDuS.js";
4
+ import { Et as buildRuleDocsUrl, F as isGitHookEnvironment, Gt as getCategoryImpact, Jn as runPromise, Jt as getDiffInfo, Kt as getChangedLineRanges, M as TUI_REPORT_DETAIL_WIDTH_FRACTION, Ot as calculateScore, Pn as yieldToEventLoop, Qn as void_, Tn as resolveScanTarget, Wt as getBaselineDiffPlan, Xn as sync, Y as DIAGNOSTIC_CATEGORY_BUCKETS, Zt as hasPublishedFixRecipe, _ as CI_TRUST_COMPANIES, an as isPathInsideDirectory, bn as remainingDeadlineBudgetMs, en as highlighter, et as GITHUB_ACTIONS_SETUP_URL, gt as Reporter, hn as mapWithConcurrency, j as TUI_REPORT_COMPACT_MAX_ROWS, mt as Progress, n as recordDistribution, nr as succeed, t as recordCount, y as METRIC, z as isCiEnvironment } from "./record-metric-BGxpNcR0.js";
5
+ import { n as registerActiveTuiRenderer, t as exitGracefully } from "./exit-gracefully-De1Nzy3z.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-J-zvzVqR.js";
7
+ import { i as isReactDoctorWorkflowInstalled } from "./install-github-workflow-CAo3dNh1.js";
8
+ import { r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-BbndLz4E.js";
9
+ import { A as resolveMergeBaseRef, B as buildEmptyReportMessage, C as copyToClipboard, D as deduplicateProjectScans, E as collectProjectSourceFileCounts, F as printDiagnosticsDump, G as formatLearnMoreLine, H as buildRulePriorityMap, I as formatDiagnosticSite, L as hasIncompleteScoreAnalysis, M as pluralize, N as formatElapsedTime, O as createInvocationInspect, P as printFooter, R as filterDiagnosticsByCategories, S as CLI_AGENT_BINARIES, T as buildHandoffPayload, U as buildSortedRuleGroups, V as hasLintHardFailure, W as formatFixRecipeLine, _ 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 buildNoScoreMessage } from "./should-fail-scan-gate-CgCFA8pU.js";
10
+ import { a as recordGate, f as ONBOARDING_EVENT, n as openUrl, r as isGatePending } from "./report-workflow-result-CULZXneJ.js";
11
11
  import { EventEmitter } from "node:events";
12
12
  import { execFileSync } from "node:child_process";
13
13
  import path from "node:path";
@@ -28314,5 +28314,5 @@ const runScanApp = async (input) => {
28314
28314
  //#endregion
28315
28315
  export { runScanApp };
28316
28316
 
28317
- //# sourceMappingURL=run-scan-app-DhH3Uvaz.js.map
28318
- //# debugId=9a37b35f-e3b2-56a0-97a0-d925c7e914bb
28317
+ //# sourceMappingURL=run-scan-app-D1yyCXe2.js.map
28318
+ //# debugId=1bc49abf-cd34-52d5-b86f-8966b48429ea
@@ -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]="8ac612e5-dd5d-5fa2-ac83-8920542c8498")}catch(e){}}();
3
- import { P as isNonInteractiveEnvironment, Tn as resolveScanTarget, t as recordCount, y as METRIC } from "./record-metric-BseP74fk.js";
4
- import { i as warnDeprecatedDiff } from "./resolve-scope-DeQeaQa9.js";
5
- import { _ as resolveCliInspectOptions, i as validateModeFlags } from "./should-fail-scan-gate-Di3zg4jS.js";
6
- import { n as warnDeprecatedFailOn, r as runProjectMigrations, t as inspectAction } from "./inspect-D6s9mWr_.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]="5a9389e2-9f1a-5aff-adc7-10c8ccf57e57")}catch(e){}}();
3
+ import { P as isNonInteractiveEnvironment, Tn as resolveScanTarget, t as recordCount, y as METRIC } from "./record-metric-BGxpNcR0.js";
4
+ import { i as warnDeprecatedDiff } from "./resolve-scope-BbndLz4E.js";
5
+ import { _ as resolveCliInspectOptions, i as validateModeFlags } from "./should-fail-scan-gate-CgCFA8pU.js";
6
+ import { n as warnDeprecatedFailOn, r as runProjectMigrations, t as inspectAction } from "./inspect-Z_e5RkQs.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-DhH3Uvaz.js");
37
+ const { runScanApp } = await import("./run-scan-app-D1yyCXe2.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-DJhL4P2g.js.map
53
- //# debugId=8ac612e5-dd5d-5fa2-ac83-8920542c8498
52
+ //# sourceMappingURL=scan-BTYPKfS9.js.map
53
+ //# debugId=5a9389e2-9f1a-5aff-adc7-10c8ccf57e57
@@ -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]="339bb847-7e4f-593a-a79a-e78da0ea7df4")}catch(e){}}();
3
- import { $ as Files, $n as withTracer, $t as hashFileContents, An as summarizeDiagnostics, B as isCiOrCodingAgentEnvironment, Bn as Diagnostic, Bt as filterSourceFiles, Cn as resolveReactDoctorCacheDir, Ct as SupplyChain, Dn as runInspect, Dt as buildSkippedChecks, En as restoreLegacyThrow, Et as buildRuleDocsUrl, Fn as Console, Ft as createOxlintSpawnSlots, Gn as promise, Hn as gen, In as error, J as Config, Jn as runPromise, Kn as provide, L as ACTION_INPUT_ENVIRONMENT_VARIABLES, Lt as discoverReactSubprojects, Mt as computeConfigFingerprint, N as CliInputError, Nt as computeDiagnosticDelta, Ot as calculateScore, P as isNonInteractiveEnvironment, Pn as yieldToEventLoop, Pt as createNodeReadFileLinesSync, Q as ENTERPRISE_CONTACT_URL, R as detectRunnerOs, Rn as log, Rt as filterDiagnosticsForSurface, Sn as resolveLintBatchOrdering, Tn as resolveScanTarget, Un as map, Vn as decodeUnknownSync, W as CI_URL, Wn as orElseSucceed, Xn as sync, Xt as groupBy, Y as DIAGNOSTIC_CATEGORY_BUCKETS, Yn as runSync, Z as DeadCode, Zn as try_, Zt as hasPublishedFixRecipe, _n as mergeReactDoctorConfigs, _t as SHARE_BASE_URL, a as buildSentryProjectContext, ar as externalSpan, bt as Score, cn as isReactDoctorError, ct as MILLISECONDS_PER_SECOND, dn as layerOtlp, dt as OxlintConcurrency, en as highlighter, er as mergeAll, fn as listSourceFiles, ft as OxlintSpawnSlots, g as BASELINE_FILES_TEMP_DIR_PREFIX, gn as materializeSourceTree, gt as Reporter, h as makeNoopConsole, hn as mapWithConcurrency, ht as Project, i as buildSentryScope, in as isMonorepoRoot, ir as ParentSpan, it as JSX_FILE_PATTERN, jt as collectSourceFileCountsByDirectory, kt as canonicalizeUserRuleKey, l as isJsonModeActive, lt as NodeResolver, m as VERSION, mt as Progress, n as recordDistribution, nr as succeed, nt as Git, o as setSentryProjectInfo, or as make, ot as LintPartialFailures, pn as listWorkspacePackages, pt as PerFileLintCacheEnabled, qn as provideService, qt as getDiagnosticRuleIdentity, r as toSpanAttributes, rn as isFile, rr as isSuccess, rt as HTML_FILE_PATTERN, s as getRunId, sr as isSome, st as Linter, t as recordCount, tn as isDirectory, tt as GIT_SHOW_MAX_BUFFER_BYTES, un as isScanComplete, ut as OXLINT_NODE_REQUIREMENT, w as SCAN_RESULT_CACHE_FILENAME, wn as resolveScanConcurrency, wt as atomicWriteJson, x as NANOSECONDS_PER_SECOND, xn as resolveGithubActionsScoreMetadata, xt as SidecarLintCacheEnabled, y as METRIC, z as isCiEnvironment, zn as warn, zt as filterPathsOutsideDirectories } from "./record-metric-BseP74fk.js";
4
- import { n as buildFooterLinkLines, o as isSentryTracingEnabled, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-BIYE5xJ-.js";
5
- import { a as setActiveRunTrace, i as recordRunTraceId } from "./unref-stdin-B2sQZIpm.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-CoPE8MvO.js";
7
- import { d as detectDefaultBranch, l as prompts, r as installReactDoctorWorkflow, u as isCommandAvailable } from "./install-github-workflow-S8vkQtho.js";
8
- import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, o as pickBlockingLevel, u as toForwardSlashes } from "./resolve-scope-DeQeaQa9.js";
9
- import { h as detectAvailableAgents, t as reportWorkflowResult } from "./report-workflow-result-RjTlaDuS.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]="c982c732-d445-54d6-abb2-bcabd2aa15f7")}catch(e){}}();
3
+ import { $ as Files, $n as withTracer, $t as hashFileContents, An as summarizeDiagnostics, B as isCiOrCodingAgentEnvironment, Bn as Diagnostic, Bt as filterSourceFiles, Cn as resolveReactDoctorCacheDir, Ct as SupplyChain, Dn as runInspect, Dt as buildSkippedChecks, En as restoreLegacyThrow, Et as buildRuleDocsUrl, Fn as Console, Ft as createOxlintSpawnSlots, Gn as promise, Hn as gen, In as error, J as Config, Jn as runPromise, Kn as provide, L as ACTION_INPUT_ENVIRONMENT_VARIABLES, Lt as discoverReactSubprojects, Mt as computeConfigFingerprint, N as CliInputError, Nt as computeDiagnosticDelta, Ot as calculateScore, P as isNonInteractiveEnvironment, Pn as yieldToEventLoop, Pt as createNodeReadFileLinesSync, Q as ENTERPRISE_CONTACT_URL, R as detectRunnerOs, Rn as log, Rt as filterDiagnosticsForSurface, Sn as resolveLintBatchOrdering, Tn as resolveScanTarget, Un as map, Vn as decodeUnknownSync, W as CI_URL, Wn as orElseSucceed, Xn as sync, Xt as groupBy, Y as DIAGNOSTIC_CATEGORY_BUCKETS, Yn as runSync, Z as DeadCode, Zn as try_, Zt as hasPublishedFixRecipe, _n as mergeReactDoctorConfigs, _t as SHARE_BASE_URL, a as buildSentryProjectContext, ar as externalSpan, bt as Score, cn as isReactDoctorError, ct as MILLISECONDS_PER_SECOND, dn as layerOtlp, dt as OxlintConcurrency, en as highlighter, er as mergeAll, fn as listSourceFiles, ft as OxlintSpawnSlots, g as BASELINE_FILES_TEMP_DIR_PREFIX, gn as materializeSourceTree, gt as Reporter, h as makeNoopConsole, hn as mapWithConcurrency, ht as Project, i as buildSentryScope, in as isMonorepoRoot, ir as ParentSpan, it as JSX_FILE_PATTERN, jt as collectSourceFileCountsByDirectory, kt as canonicalizeUserRuleKey, l as isJsonModeActive, lt as NodeResolver, m as VERSION, mt as Progress, n as recordDistribution, nr as succeed, nt as Git, o as setSentryProjectInfo, or as make, ot as LintPartialFailures, pn as listWorkspacePackages, pt as PerFileLintCacheEnabled, qn as provideService, qt as getDiagnosticRuleIdentity, r as toSpanAttributes, rn as isFile, rr as isSuccess, rt as HTML_FILE_PATTERN, s as getRunId, sr as isSome, st as Linter, t as recordCount, tn as isDirectory, tt as GIT_SHOW_MAX_BUFFER_BYTES, un as isScanComplete, ut as OXLINT_NODE_REQUIREMENT, w as SCAN_RESULT_CACHE_FILENAME, wn as resolveScanConcurrency, wt as atomicWriteJson, x as NANOSECONDS_PER_SECOND, xn as resolveGithubActionsScoreMetadata, xt as SidecarLintCacheEnabled, y as METRIC, z as isCiEnvironment, zn as warn, zt as filterPathsOutsideDirectories } from "./record-metric-BGxpNcR0.js";
4
+ import { n as buildFooterLinkLines, o as isSentryTracingEnabled, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-DKzi1sn2.js";
5
+ import { a as setActiveRunTrace, i as recordRunTraceId } from "./unref-stdin-noiOzC5n.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-J-zvzVqR.js";
7
+ import { d as detectDefaultBranch, l as prompts, r as installReactDoctorWorkflow, u as isCommandAvailable } from "./install-github-workflow-CAo3dNh1.js";
8
+ import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, o as pickBlockingLevel, u as toForwardSlashes } from "./resolve-scope-BbndLz4E.js";
9
+ import { h as detectAvailableAgents, t as reportWorkflowResult } from "./report-workflow-result-CULZXneJ.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";
@@ -3071,5 +3071,5 @@ const shouldFailScanGate = (input) => {
3071
3071
  //#endregion
3072
3072
  export { resolveMergeBaseRef as A, buildEmptyReportMessage as B, copyToClipboard as C, deduplicateProjectScans as D, collectProjectSourceFileCounts as E, printDiagnosticsDump as F, formatLearnMoreLine as G, buildRulePriorityMap as H, formatDiagnosticSite as I, hasIncompleteScoreAnalysis as L, pluralize as M, formatElapsedTime as N, createInvocationInspect as O, printFooter as P, filterDiagnosticsByCategories as R, CLI_AGENT_BINARIES as S, buildHandoffPayload as T, buildSortedRuleGroups as U, hasLintHardFailure as V, formatFixRecipeLine 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, buildNoScoreMessage as z };
3073
3073
 
3074
- //# sourceMappingURL=should-fail-scan-gate-Di3zg4jS.js.map
3075
- //# debugId=339bb847-7e4f-593a-a79a-e78da0ea7df4
3074
+ //# sourceMappingURL=should-fail-scan-gate-CgCFA8pU.js.map
3075
+ //# debugId=c982c732-d445-54d6-abb2-bcabd2aa15f7
@@ -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]="dd490af3-c339-59f8-b791-15fc74ec593d")}catch(e){}}();
3
- import { P as isNonInteractiveEnvironment } from "./record-metric-BseP74fk.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]="8e3145ab-1304-5b38-9dcc-2e92c796c969")}catch(e){}}();
3
+ import { P as isNonInteractiveEnvironment } from "./record-metric-BGxpNcR0.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-CY85gVZR.js.map
10
- //# debugId=dd490af3-c339-59f8-b791-15fc74ec593d
9
+ //# sourceMappingURL=should-skip-prompts-CZbr6sjQ.js.map
10
+ //# debugId=8e3145ab-1304-5b38-9dcc-2e92c796c969
@@ -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]="460e88ff-1dc8-5f9f-8e8f-0e3abe5735de")}catch(e){}}();
3
- import { N as CliInputError, cn as isReactDoctorError, nn as isErrnoException, sn as isProjectDiscoveryError, vn as messageFromUnknown } from "./record-metric-BseP74fk.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]="09cc165c-e420-509d-b76c-4760731fde2e")}catch(e){}}();
3
+ import { N as CliInputError, cn as isReactDoctorError, nn as isErrnoException, sn as isProjectDiscoveryError, vn as messageFromUnknown } from "./record-metric-BGxpNcR0.js";
4
4
  //#region src/cli/utils/is-environment-error.ts
5
5
  const ENVIRONMENT_ERROR_CODES = new Set([
6
6
  "EACCES",
@@ -116,5 +116,5 @@ const unrefStdin = () => {
116
116
  //#endregion
117
117
  export { setActiveRunTrace as a, isEnvironmentError as c, recordRunTraceId as i, getActiveRunTrace as n, isExpectedUserError as o, getLastRunTraceId as r, formatEnvironmentError as s, unrefStdin as t };
118
118
 
119
- //# sourceMappingURL=unref-stdin-B2sQZIpm.js.map
120
- //# debugId=460e88ff-1dc8-5f9f-8e8f-0e3abe5735de
119
+ //# sourceMappingURL=unref-stdin-noiOzC5n.js.map
120
+ //# debugId=09cc165c-e420-509d-b76c-4760731fde2e
@@ -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]="ddc46502-ac2f-56b8-95e3-f89e4c098922")}catch(e){}}();
3
- import { m as VERSION, t as recordCount, y as METRIC } from "./record-metric-BseP74fk.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]="f953e387-2fd0-5af3-ad63-04865562915a")}catch(e){}}();
3
+ import { m as VERSION, t as recordCount, y as METRIC } from "./record-metric-BGxpNcR0.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-D_2CzsEy.js.map
21
- //# debugId=ddc46502-ac2f-56b8-95e3-f89e4c098922
20
+ //# sourceMappingURL=version-BAsYYPLc.js.map
21
+ //# debugId=f953e387-2fd0-5af3-ad63-04865562915a
@@ -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]="3603ca1d-63dc-53d5-9f47-1bf19f261563")}catch(e){}}();
3
- import { t as inspectAction } from "./inspect-D6s9mWr_.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]="b988943c-b287-5c83-81a8-e6f2a7242a66")}catch(e){}}();
3
+ import { t as inspectAction } from "./inspect-Z_e5RkQs.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-Cm5_5JmL.js.map
21
- //# debugId=3603ca1d-63dc-53d5-9f47-1bf19f261563
20
+ //# sourceMappingURL=why-DZ9AgG5O.js.map
21
+ //# debugId=b988943c-b287-5c83-81a8-e6f2a7242a66
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-doctor",
3
- "version": "0.9.7-dev.f27fd5d",
3
+ "version": "0.9.8-dev.7f028ea",
4
4
  "description": "Your agent writes bad React. This catches it",
5
5
  "keywords": [
6
6
  "accessibility",
@@ -69,8 +69,8 @@
69
69
  "vscode-uri": "^3.1.0",
70
70
  "yaml": "^2.9.0",
71
71
  "yoga-layout": "~3.2.1",
72
- "oxlint-plugin-react-doctor": "0.9.7-dev.f27fd5d",
73
- "deslop-js": "0.9.7"
72
+ "deslop-js": "0.9.8",
73
+ "oxlint-plugin-react-doctor": "0.9.8-dev.7f028ea"
74
74
  },
75
75
  "devDependencies": {
76
76
  "@types/babel__code-frame": "^7.27.0",
@@ -83,9 +83,9 @@
83
83
  "ora": "^9.4.0",
84
84
  "react": "19.2.5",
85
85
  "react-devtools-core": "^7.0.1",
86
- "@react-doctor/core": "0.9.7",
87
- "@react-doctor/language-server": "0.9.7",
88
- "@react-doctor/api": "0.9.7"
86
+ "@react-doctor/api": "0.9.8",
87
+ "@react-doctor/core": "0.9.8",
88
+ "@react-doctor/language-server": "0.9.8"
89
89
  },
90
90
  "engines": {
91
91
  "node": "^20.19.0 || >=22.13.0"