react-doctor 0.9.11-dev.f1899d2 → 0.9.12-dev.86198f1

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 (28) hide show
  1. package/dist/{build-section-divider-4ZztYtZV.js → build-section-divider-DHZDIOiT.js} +7 -7
  2. package/dist/{ci-B04VkLj2.js → ci-DNs73md0.js} +11 -11
  3. package/dist/cli.js +22 -22
  4. package/dist/{design-AAjcvExu.js → design-DJhMZpV0.js} +4 -4
  5. package/dist/{exit-gracefully-B7v9PIJk.js → exit-gracefully-CYTyitpL.js} +6 -6
  6. package/dist/index.d.ts +17 -19
  7. package/dist/index.js +29 -16
  8. package/dist/{inspect-CdQJI2XI.js → inspect-Di3W9fRk.js} +18 -18
  9. package/dist/{install-BRU4jf-Y.js → install-BM5_akdY.js} +8 -8
  10. package/dist/{install-doctor-script-Dn69YqKG.js → install-doctor-script-DONC221X.js} +4 -4
  11. package/dist/{install-github-workflow-BwELZAhu.js → install-github-workflow-Cn1g1qCj.js} +6 -6
  12. package/dist/{install-react-doctor-CcDiKPfC.js → install-react-doctor-D-5gMlFh.js} +8 -8
  13. package/dist/lsp.js +30 -10
  14. package/dist/{print-branded-header-_kkHIAUd.js → print-branded-header-BqOTK3ep.js} +4 -4
  15. package/dist/{read-object-file-Bsov5R1-.js → read-object-file-6XbVf1hj.js} +4 -4
  16. package/dist/{record-metric-CeygoJWT.js → record-metric-CsNC4O_Q.js} +41 -19
  17. package/dist/{report-error-uffmJocy.js → report-error-DkUx4ePX.js} +5 -5
  18. package/dist/{report-workflow-result-CMtcy7Eb.js → report-workflow-result-CnxQYm4L.js} +5 -5
  19. package/dist/{resolve-scope-CFro-KQO.js → resolve-scope-VYeciHMp.js} +6 -6
  20. package/dist/{rules-BkLea4GL.js → rules-BHuxNUWe.js} +6 -6
  21. package/dist/{run-scan-app-Befn2abh.js → run-scan-app-tfWkuR3n.js} +10 -10
  22. package/dist/{scan-C00HPxuL.js → scan-BB60TMXB.js} +8 -8
  23. package/dist/{should-fail-scan-gate-BEoC3SoQ.js → should-fail-scan-gate-83kHV2TB.js} +10 -10
  24. package/dist/{should-skip-prompts-De37OlfL.js → should-skip-prompts-B_13T5y9.js} +4 -4
  25. package/dist/{unref-stdin-DklpxlNQ.js → unref-stdin-BS_WPjIC.js} +4 -4
  26. package/dist/{version-CRfqT5pV.js → version-DEV3zEd5.js} +4 -4
  27. package/dist/{why-BTbl-alh.js → why-D0IleQEO.js} +4 -4
  28. package/package.json +6 -6
@@ -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]="bc1af7a6-5ddd-5744-ab7c-1c8f31652627")}catch(e){}}();
3
- import { R as CliInputError, S as CI_TRUST_COMPANIES, cn as highlighter, ot as GITHUB_ACTIONS_SETUP_URL, t as recordCount, un as isErrnoException, w as METRIC, wt as SKILL_NAME } from "./record-metric-CeygoJWT.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-Dn69YqKG.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-BwELZAhu.js";
6
- import { t as shouldSkipPrompts } from "./should-skip-prompts-De37OlfL.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-CMtcy7Eb.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]="31127f42-dab7-5af1-ab80-ad23a6c78093")}catch(e){}}();
3
+ import { R as CliInputError, S as CI_TRUST_COMPANIES, cn as highlighter, ot as GITHUB_ACTIONS_SETUP_URL, t as recordCount, un as isErrnoException, w as METRIC, wt as SKILL_NAME } from "./record-metric-CsNC4O_Q.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-DONC221X.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-Cn1g1qCj.js";
6
+ import { t as shouldSkipPrompts } from "./should-skip-prompts-B_13T5y9.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-CnxQYm4L.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-CcDiKPfC.js.map
1154
- //# debugId=bc1af7a6-5ddd-5744-ab7c-1c8f31652627
1153
+ //# sourceMappingURL=install-react-doctor-D-5gMlFh.js.map
1154
+ //# debugId=31127f42-dab7-5af1-ab80-ad23a6c78093
package/dist/lsp.js CHANGED
@@ -21257,11 +21257,11 @@ var JsonReportV1 = class extends Class("JsonReportV1")({
21257
21257
  */
21258
21258
  baselineDegraded: optional(Boolean$1),
21259
21259
  /**
21260
- * Whether any scanned project resolved a React-compatible runtime (React
21261
- * or Preact). `false` means every React-runtime rule family was gated off,
21262
- * so an empty `diagnostics` array is vacuous — NOT the same as a clean
21263
- * React scan. Consumers gating on the report (CI, verifiers, hooks) should
21264
- * treat `reactDetected === false` as "wrong scan target", not "all clear".
21260
+ * Whether any scanned project resolved a React-compatible runtime directly
21261
+ * or through a React-backed framework. `false` means every React-runtime
21262
+ * rule family was gated off, not that the scan target was unsupported:
21263
+ * other detected framework and library rule families still run, as do
21264
+ * framework-neutral rules on any analyzable project.
21265
21265
  * Absent when nothing was scanned (`projects` is empty), on error reports,
21266
21266
  * and on reports from older CLI versions.
21267
21267
  */
@@ -65113,7 +65113,7 @@ const SOCKET_FREE_USER_AGENT = "react-doctor-supply-chain";
65113
65113
  const FILE_LINT_CACHE_FILENAME = "file-lint-cache.json";
65114
65114
  const FILE_LINT_CACHE_MAX_FILE_COUNT = 5e4;
65115
65115
  const SIDECAR_LINT_CACHE_FILENAME = "sidecar-lint-cache.json";
65116
- const CORE_PACKAGE_VERSION = "0.9.11";
65116
+ const CORE_PACKAGE_VERSION = "0.9.12";
65117
65117
  const DEAD_CODE_CACHE_FILENAME = "dead-code-cache.json";
65118
65118
  const DEAD_CODE_SUMMARY_CACHE_FILENAME = "dead-code-summaries.json";
65119
65119
  const SUPPLY_CHAIN_PLUGIN = "socket";
@@ -72094,6 +72094,21 @@ function* collectSecurityScanFiles(rootDirectory, excludedDirectories = /* @__PU
72094
72094
  }
72095
72095
  }
72096
72096
  }
72097
+ const REACT_COMPATIBLE_FRAMEWORKS = new Set([
72098
+ "nextjs",
72099
+ "tanstack-start",
72100
+ "cra",
72101
+ "remix",
72102
+ "gatsby",
72103
+ "expo",
72104
+ "react-native",
72105
+ "preact"
72106
+ ]);
72107
+ /**
72108
+ * Whether project discovery resolved a React-compatible runtime directly or
72109
+ * through a framework whose runtime is necessarily React-compatible.
72110
+ */
72111
+ const hasReactRuntime = (project) => project.reactVersion !== null || project.preactVersion !== null || REACT_COMPATIBLE_FRAMEWORKS.has(project.framework);
72097
72112
  const CLIENT_ONLY_FRAMEWORKS = new Set([
72098
72113
  "vite",
72099
72114
  "cra",
@@ -72115,7 +72130,7 @@ const addVersionCapabilityLadder = (capabilities, name, detectedVersion, earlies
72115
72130
  const buildCapabilities = (project) => {
72116
72131
  const capabilities = /* @__PURE__ */ new Set();
72117
72132
  capabilities.add(project.framework);
72118
- if (project.reactVersion !== null || project.preactVersion !== null) capabilities.add("react");
72133
+ if (hasReactRuntime(project)) capabilities.add("react");
72119
72134
  if (project.framework === "expo" || project.framework === "react-native" || project.hasReactNativeWorkspace) capabilities.add("react-native");
72120
72135
  if (project.expoVersion !== null) {
72121
72136
  capabilities.add("expo");
@@ -74402,6 +74417,9 @@ const createOxlintConfig = ({ pluginPath, project, customRulesOnly = false, exte
74402
74417
  if (reactHooksJsPlugin) jsPlugins.push(reactHooksJsPlugin.entry);
74403
74418
  const capabilities = getCapabilities(project);
74404
74419
  const settingsRootDirectory = resolveSettingsRootDirectory(project.rootDirectory);
74420
+ const noMultiCompOverride = resolveRuleSeverityOverride({ ruleKey: "react-doctor/no-multi-comp" }, severityControls);
74421
+ const multiComponentFileOverride = resolveRuleSeverityOverride({ ruleKey: "react-doctor/no-multi-component-file" }, severityControls);
74422
+ const shouldUseExplicitNoMultiCompPolicy = noMultiCompOverride !== void 0 && multiComponentFileOverride === void 0;
74405
74423
  const enabledReactDoctorRules = {};
74406
74424
  for (const registryEntry of REACT_DOCTOR_RULES) {
74407
74425
  const rule = REACT_DOCTOR_RULE_REGISTRY[registryEntry.id];
@@ -74410,6 +74428,7 @@ const createOxlintConfig = ({ pluginPath, project, customRulesOnly = false, exte
74410
74428
  if (ruleSelection === "sidecar" && !CROSS_FILE_RULE_IDS.has(registryEntry.id)) continue;
74411
74429
  if (ruleSelection === "sidecar" && sidecarRuleIdFilter !== void 0 && !sidecarRuleIdFilter.has(registryEntry.id)) continue;
74412
74430
  if (rule.isScanRule) continue;
74431
+ if (registryEntry.id === "no-multi-component-file" && shouldUseExplicitNoMultiCompPolicy) continue;
74413
74432
  if (customRulesOnly && registryEntry.originallyExternal) continue;
74414
74433
  if (rule.framework !== "global" && !rule.requires) continue;
74415
74434
  if (!shouldEnableRule(rule.requires, rule.tags, capabilities, ignoredTags, rule.disabledWhen, includedTags)) continue;
@@ -74446,6 +74465,7 @@ const createOxlintConfig = ({ pluginPath, project, customRulesOnly = false, exte
74446
74465
  plugins: [],
74447
74466
  jsPlugins: [...jsPlugins, pluginPath],
74448
74467
  settings: { "react-doctor": {
74468
+ portedRuleMode: "curated",
74449
74469
  framework: project.framework,
74450
74470
  rootDirectory: settingsRootDirectory,
74451
74471
  capabilities: [...capabilities].sort(),
@@ -78588,7 +78608,7 @@ const computeConfigFingerprint = (projectDirectory, version) => {
78588
78608
  /** Display name used in client-facing messages and progress titles. */
78589
78609
  const SERVER_DISPLAY_NAME = "React Doctor";
78590
78610
  /** Server version reported in `serverInfo`; injected at build, `dev` from source. */
78591
- const SERVER_VERSION = "0.9.11";
78611
+ const SERVER_VERSION = "0.9.12";
78592
78612
  /** `Diagnostic.source` shown next to every published diagnostic. */
78593
78613
  const DIAGNOSTIC_SOURCE = "react-doctor";
78594
78614
  /**
@@ -81121,5 +81141,5 @@ const startLanguageServer = () => {
81121
81141
  };
81122
81142
  //#endregion
81123
81143
  export { startLanguageServer };
81124
- !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]="bd5f8dc9-561f-5a40-af38-c9399a4ab2d4")}catch(e){}}();
81125
- //# debugId=bd5f8dc9-561f-5a40-af38-c9399a4ab2d4
81144
+ !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]="d47cadfc-699f-5bd2-926e-fa241e8cb6b9")}catch(e){}}();
81145
+ //# debugId=d47cadfc-699f-5bd2-926e-fa241e8cb6b9
@@ -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]="5ddc596c-36d6-58ee-893d-76f758f126fc")}catch(e){}}();
3
- import { Gn as log, Xn as gen, cn as highlighter, g as VERSION } from "./record-metric-CeygoJWT.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]="4785c3b4-c5db-58f8-bc51-cebcbb11bc42")}catch(e){}}();
3
+ import { Gn as log, Xn as gen, cn as highlighter, g as VERSION } from "./record-metric-CsNC4O_Q.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-_kkHIAUd.js.map
22
- //# debugId=5ddc596c-36d6-58ee-893d-76f758f126fc
21
+ //# sourceMappingURL=print-branded-header-BqOTK3ep.js.map
22
+ //# debugId=4785c3b4-c5db-58f8-bc51-cebcbb11bc42
@@ -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]="2db9e74d-4882-5a40-9562-d2fdab65177c")}catch(e){}}();
3
- import { mn as isPlainObject } from "./record-metric-CeygoJWT.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]="fd15ee3c-9643-5ba9-8e6e-fbdb8cd1f286")}catch(e){}}();
3
+ import { mn as isPlainObject } from "./record-metric-CsNC4O_Q.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-Bsov5R1-.js.map
24
- //# debugId=2db9e74d-4882-5a40-9562-d2fdab65177c
23
+ //# sourceMappingURL=read-object-file-6XbVf1hj.js.map
24
+ //# debugId=fd15ee3c-9643-5ba9-8e6e-fbdb8cd1f286
@@ -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]="3dc5c201-94db-514e-8ef3-4c6e0f1c1d85")}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]="ef710e22-c39b-5afa-9794-75594b6db533")}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";
@@ -21259,11 +21259,11 @@ var JsonReportV1 = class extends Class("JsonReportV1")({
21259
21259
  */
21260
21260
  baselineDegraded: optional(Boolean$1),
21261
21261
  /**
21262
- * Whether any scanned project resolved a React-compatible runtime (React
21263
- * or Preact). `false` means every React-runtime rule family was gated off,
21264
- * so an empty `diagnostics` array is vacuous — NOT the same as a clean
21265
- * React scan. Consumers gating on the report (CI, verifiers, hooks) should
21266
- * treat `reactDetected === false` as "wrong scan target", not "all clear".
21262
+ * Whether any scanned project resolved a React-compatible runtime directly
21263
+ * or through a React-backed framework. `false` means every React-runtime
21264
+ * rule family was gated off, not that the scan target was unsupported:
21265
+ * other detected framework and library rule families still run, as do
21266
+ * framework-neutral rules on any analyzable project.
21267
21267
  * Absent when nothing was scanned (`projects` is empty), on error reports,
21268
21268
  * and on reports from older CLI versions.
21269
21269
  */
@@ -65198,7 +65198,7 @@ const SOCKET_FREE_USER_AGENT = "react-doctor-supply-chain";
65198
65198
  const FILE_LINT_CACHE_FILENAME = "file-lint-cache.json";
65199
65199
  const FILE_LINT_CACHE_MAX_FILE_COUNT = 5e4;
65200
65200
  const SIDECAR_LINT_CACHE_FILENAME = "sidecar-lint-cache.json";
65201
- const CORE_PACKAGE_VERSION = "0.9.11";
65201
+ const CORE_PACKAGE_VERSION = "0.9.12";
65202
65202
  const DEAD_CODE_CACHE_FILENAME = "dead-code-cache.json";
65203
65203
  const DEAD_CODE_SUMMARY_CACHE_FILENAME = "dead-code-summaries.json";
65204
65204
  const SUPPLY_CHAIN_PLUGIN = "socket";
@@ -72271,6 +72271,21 @@ function* collectSecurityScanFiles(rootDirectory, excludedDirectories = /* @__PU
72271
72271
  }
72272
72272
  }
72273
72273
  }
72274
+ const REACT_COMPATIBLE_FRAMEWORKS = new Set([
72275
+ "nextjs",
72276
+ "tanstack-start",
72277
+ "cra",
72278
+ "remix",
72279
+ "gatsby",
72280
+ "expo",
72281
+ "react-native",
72282
+ "preact"
72283
+ ]);
72284
+ /**
72285
+ * Whether project discovery resolved a React-compatible runtime directly or
72286
+ * through a framework whose runtime is necessarily React-compatible.
72287
+ */
72288
+ const hasReactRuntime = (project) => project.reactVersion !== null || project.preactVersion !== null || REACT_COMPATIBLE_FRAMEWORKS.has(project.framework);
72274
72289
  const CLIENT_ONLY_FRAMEWORKS = new Set([
72275
72290
  "vite",
72276
72291
  "cra",
@@ -72292,7 +72307,7 @@ const addVersionCapabilityLadder = (capabilities, name, detectedVersion, earlies
72292
72307
  const buildCapabilities = (project) => {
72293
72308
  const capabilities = /* @__PURE__ */ new Set();
72294
72309
  capabilities.add(project.framework);
72295
- if (project.reactVersion !== null || project.preactVersion !== null) capabilities.add("react");
72310
+ if (hasReactRuntime(project)) capabilities.add("react");
72296
72311
  if (project.framework === "expo" || project.framework === "react-native" || project.hasReactNativeWorkspace) capabilities.add("react-native");
72297
72312
  if (project.expoVersion !== null) {
72298
72313
  capabilities.add("expo");
@@ -74595,6 +74610,9 @@ const createOxlintConfig = ({ pluginPath, project, customRulesOnly = false, exte
74595
74610
  if (reactHooksJsPlugin) jsPlugins.push(reactHooksJsPlugin.entry);
74596
74611
  const capabilities = getCapabilities(project);
74597
74612
  const settingsRootDirectory = resolveSettingsRootDirectory(project.rootDirectory);
74613
+ const noMultiCompOverride = resolveRuleSeverityOverride({ ruleKey: "react-doctor/no-multi-comp" }, severityControls);
74614
+ const multiComponentFileOverride = resolveRuleSeverityOverride({ ruleKey: "react-doctor/no-multi-component-file" }, severityControls);
74615
+ const shouldUseExplicitNoMultiCompPolicy = noMultiCompOverride !== void 0 && multiComponentFileOverride === void 0;
74598
74616
  const enabledReactDoctorRules = {};
74599
74617
  for (const registryEntry of REACT_DOCTOR_RULES) {
74600
74618
  const rule = REACT_DOCTOR_RULE_REGISTRY[registryEntry.id];
@@ -74603,6 +74621,7 @@ const createOxlintConfig = ({ pluginPath, project, customRulesOnly = false, exte
74603
74621
  if (ruleSelection === "sidecar" && !CROSS_FILE_RULE_IDS.has(registryEntry.id)) continue;
74604
74622
  if (ruleSelection === "sidecar" && sidecarRuleIdFilter !== void 0 && !sidecarRuleIdFilter.has(registryEntry.id)) continue;
74605
74623
  if (rule.isScanRule) continue;
74624
+ if (registryEntry.id === "no-multi-component-file" && shouldUseExplicitNoMultiCompPolicy) continue;
74606
74625
  if (customRulesOnly && registryEntry.originallyExternal) continue;
74607
74626
  if (rule.framework !== "global" && !rule.requires) continue;
74608
74627
  if (!shouldEnableRule(rule.requires, rule.tags, capabilities, ignoredTags, rule.disabledWhen, includedTags)) continue;
@@ -74639,6 +74658,7 @@ const createOxlintConfig = ({ pluginPath, project, customRulesOnly = false, exte
74639
74658
  plugins: [],
74640
74659
  jsPlugins: [...jsPlugins, pluginPath],
74641
74660
  settings: { "react-doctor": {
74661
+ portedRuleMode: "curated",
74642
74662
  framework: project.framework,
74643
74663
  rootDirectory: settingsRootDirectory,
74644
74664
  capabilities: [...capabilities].sort(),
@@ -78749,13 +78769,6 @@ const summarizeDiagnostics = (diagnostics, worstScore = null, worstScoreLabel =
78749
78769
  scoreLabel: worstScoreLabel
78750
78770
  };
78751
78771
  };
78752
- /**
78753
- * Whether project discovery resolved a React-compatible runtime (React or
78754
- * Preact, which ships the same hooks + JSX model). This is the same
78755
- * predicate that grants the `react` capability, so `false` means every
78756
- * React-runtime rule family was gated off for the project.
78757
- */
78758
- const hasReactRuntime = (project) => project.reactVersion !== null || project.preactVersion !== null;
78759
78772
  const isScanComplete = (input) => input.analyzedFileCount !== void 0 && input.scannedFileCount !== void 0 && input.skippedCheckCount === 0 && input.skippedCheckReasonCount === 0 && input.analyzedFileCount === input.scannedFileCount;
78760
78773
  const toJsonDiff = (diff) => {
78761
78774
  if (!diff) return null;
@@ -79130,6 +79143,15 @@ const groupBy = (items, keyFn) => {
79130
79143
  * a 404. Gate the directive on this predicate.
79131
79144
  */
79132
79145
  const hasPublishedFixRecipe = (diagnostic) => diagnostic.plugin === "react-doctor" && Object.hasOwn(REACT_DOCTOR_RULE_REGISTRY, diagnostic.rule);
79146
+ const AMBIENT_PROJECT_CAPABILITIES = new Set([
79147
+ "unknown",
79148
+ "typescript",
79149
+ "pre-es2023"
79150
+ ]);
79151
+ const hasSupportedFrameworkOrLibrary = (project) => {
79152
+ for (const capability of buildCapabilities(project)) if (!AMBIENT_PROJECT_CAPABILITIES.has(capability)) return true;
79153
+ return false;
79154
+ };
79133
79155
  const stringValues = (values) => Array.isArray(values) ? values.filter((value) => typeof value === "string") : [];
79134
79156
  const unionValues = (baseValues, overrideValues) => [...new Set([...stringValues(baseValues), ...stringValues(overrideValues)])];
79135
79157
  const mergeIgnores = (baseIgnore, overrideIgnore) => {
@@ -79526,7 +79548,7 @@ const makeNoopConsole = () => ({
79526
79548
  });
79527
79549
  //#endregion
79528
79550
  //#region src/cli/utils/version.ts
79529
- const VERSION = "0.9.11-dev.f1899d2";
79551
+ const VERSION = "0.9.12-dev.86198f1";
79530
79552
  //#endregion
79531
79553
  //#region src/cli/utils/json-mode.ts
79532
79554
  let context = null;
@@ -79851,7 +79873,7 @@ const recordDistribution = (name, value, options = {}) => {
79851
79873
  } catch {}
79852
79874
  };
79853
79875
  //#endregion
79854
- export { CONFIG_SCHEMA_URL as $, orElseSucceed as $n, getCategoryImpact as $t, SCAN_RESULT_CACHE_MAX_HASHED_FILE_SIZE_BYTES as A, resolveReactDoctorCacheDir as An, anonymizeInPlace as At, isGitHookEnvironment as B, validateConfigTypes as Bn, computeConfigFingerprint as Bt, GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS as C, mapWithConcurrency as Cn, SHARE_BASE_URL as Ct, REACT_DOCTOR_CONFIG_PROJECT_NAME as D, remainingDeadlineBudgetMs as Dn, SidecarLintCacheEnabled as Dt, NANOSECONDS_PER_MILLISECOND as E, messageFromUnknown as En, Score as Et, STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES as F, scrubSensitivePaths as Fn, buildSkippedChecks as Ft, isCiOrCodingAgentEnvironment as G, log as Gn, discoverReactSubprojects as Gt, ACTION_INPUT_ENVIRONMENT_VARIABLES as H, Console as Hn, createNodeReadFileLinesSync as Ht, TUI_REPORT_COMPACT_MAX_ROWS as I, setColorEnabled as In, calculateScore as It, CANONICAL_DISCORD_URL as J, decodeUnknownSync as Jn, filterSourceFiles as Jt, isCodingAgentEnvironment as K, warn$1 as Kn, filterDiagnosticsForSurface as Kt, TUI_REPORT_DETAIL_WIDTH_FRACTION as L, summarizeDiagnostics as Ln, canonicalizeUserRuleKey as Lt, SENTRY_FLUSH_TIMEOUT_MS as M, resolveScanTarget as Mn, atomicWriteJson as Mt, SENTRY_RELEASE_PREFIX as N, restoreLegacyThrow as Nn, buildJsonReport as Nt, RUN_GIT_MAX_BUFFER_BYTES as O, resolveGithubActionsScoreMetadata as On, StagedFiles as Ot, STAGED_FILES_TEMP_DIR_PREFIX as P, runInspect as Pn, buildRuleDocsUrl as Pt, COMPILER_CLEANUP_RULE_KEYS as Q, map$3 as Qn, getBaselineDiffPlan as Qt, CliInputError as R, toCanonicalPath as Rn, clearConfigCache as Rt, CI_TRUST_COMPANIES as S, loadConfigWithSource as Sn, Reporter as St, MINIMUM_VTE_VERSION_FOR_HYPERLINKS as T, mergeReactDoctorConfigs as Tn, STAGED_FILES_PROJECT_CONFIG_FILENAMES as Tt, detectRunnerOs as U, error as Un, createOxlintSpawnSlots as Ut, isDebugFlagEnabled as V, yieldToEventLoop as Vn, computeDiagnosticDelta as Vt, isCiEnvironment as W, info as Wn, detectAiTrainingEnvironment as Wt, CI_URL as X, gen as Xn, formatErrorChain as Xt, CANONICAL_GITHUB_URL as Y, make$30 as Yn, findLegacyConfig as Yt, COMPILER_CLEANUP_BUCKET as Z, makeSpan$1 as Zn, formatReactDoctorError as Zt, makeNoopConsole as _, isSameRuleKey as _n, ParentSpan as _r, OxlintConcurrency as _t, isEnvFlagEnabled as a, hasPublishedFixRecipe as an, runSync as ar, Files as at, AXIOM_TRACES_DATASET as b, listSourceFiles as bn, Progress as bt, setSentryProjectInfo as c, highlighter as cn, void_ as cr, Git as ct, isJsonModeActive as d, isFile as dn, provide$2 as dr, LEGACY_CONFIG_FILENAME as dt, getChangedLineRanges as en, promise as er, Config as et, setJsonReportDirectory as f, isMonorepoRoot as fn, succeed$3 as fr, LintPartialFailures as ft, VERSION as g, isReactDoctorError as gn, void_$1 as gr, OXLINT_NODE_REQUIREMENT as gt, writeJsonReport as h, isProjectDiscoveryError as hn, fail$5 as hr, NodeResolver as ht, isTelemetryEnabled as i, groupBy as in, runPromise as ir, ENTERPRISE_CONTACT_URL as it, SENTRY_DSN as j, resolveScanConcurrency as jn, anonymizeText as jt, SCAN_RESULT_CACHE_FILENAME as k, resolveLintBatchOrdering as kn, SupplyChain as kt, getRunId as l, isDirectory as ln, buildWithScope as lr, HTML_FILE_PATTERN as lt, writeJsonErrorReport as m, isPlainObject as mn, makeUnsafe$5 as mr, MILLISECONDS_PER_SECOND as mt, recordDistribution as n, getDiffInfo as nn, provideContext as nr, DOCS_URL as nt, buildSentryScope as o, hasReactRuntime as on, sync as or, GITHUB_ACTIONS_SETUP_URL as ot, setJsonReportMode as p, isPathInsideDirectory as pn, close as pr, Linter as pt, AXIOM_DEFAULT_DOMAIN as q, Diagnostic as qn, filterPathsOutsideDirectories as qt, toSpanAttributes as r, getEquivalentRuleKeys as rn, provideService$2 as rr, DeadCode as rt, buildSentryProjectContext as s, hashFileContents as sn, try_ as sr, GIT_SHOW_MAX_BUFFER_BYTES as st, recordCount as t, getDiagnosticRuleIdentity as tn, provide as tr, DIAGNOSTIC_CATEGORY_BUCKETS as tt, enableJsonMode as u, isErrnoException as un, mergeAll$1 as ur, JSX_FILE_PATTERN as ut, AXIOM_INGEST_TOKEN as v, isScanComplete as vn, OxlintSpawnSlots as vt, METRIC as w, materializeSourceTree as wn, SKILL_NAME as wt, BASELINE_FILES_TEMP_DIR_PREFIX as x, listWorkspacePackages as xn, Project as xt, AXIOM_METRICS_DATASET as y, layerObservability as yn, PerFileLintCacheEnabled as yt, isNonInteractiveEnvironment as z, toRelativePath as zn, collectSourceFileCountsByDirectory as zt };
79876
+ export { CONFIG_SCHEMA_URL as $, orElseSucceed as $n, getCategoryImpact as $t, SCAN_RESULT_CACHE_MAX_HASHED_FILE_SIZE_BYTES as A, resolveReactDoctorCacheDir as An, anonymizeInPlace as At, isGitHookEnvironment as B, validateConfigTypes as Bn, computeConfigFingerprint as Bt, GH_DEFAULT_BRANCH_PROBE_TIMEOUT_MS as C, mapWithConcurrency as Cn, SHARE_BASE_URL as Ct, REACT_DOCTOR_CONFIG_PROJECT_NAME as D, remainingDeadlineBudgetMs as Dn, SidecarLintCacheEnabled as Dt, NANOSECONDS_PER_MILLISECOND as E, messageFromUnknown as En, Score as Et, STAGED_SNAPSHOT_ADDITIONAL_CONFIG_FILENAMES as F, scrubSensitivePaths as Fn, buildSkippedChecks as Ft, isCiOrCodingAgentEnvironment as G, log as Gn, discoverReactSubprojects as Gt, ACTION_INPUT_ENVIRONMENT_VARIABLES as H, Console as Hn, createNodeReadFileLinesSync as Ht, TUI_REPORT_COMPACT_MAX_ROWS as I, setColorEnabled as In, calculateScore as It, CANONICAL_DISCORD_URL as J, decodeUnknownSync as Jn, filterSourceFiles as Jt, isCodingAgentEnvironment as K, warn$1 as Kn, filterDiagnosticsForSurface as Kt, TUI_REPORT_DETAIL_WIDTH_FRACTION as L, summarizeDiagnostics as Ln, canonicalizeUserRuleKey as Lt, SENTRY_FLUSH_TIMEOUT_MS as M, resolveScanTarget as Mn, atomicWriteJson as Mt, SENTRY_RELEASE_PREFIX as N, restoreLegacyThrow as Nn, buildJsonReport as Nt, RUN_GIT_MAX_BUFFER_BYTES as O, resolveGithubActionsScoreMetadata as On, StagedFiles as Ot, STAGED_FILES_TEMP_DIR_PREFIX as P, runInspect as Pn, buildRuleDocsUrl as Pt, COMPILER_CLEANUP_RULE_KEYS as Q, map$3 as Qn, getBaselineDiffPlan as Qt, CliInputError as R, toCanonicalPath as Rn, clearConfigCache as Rt, CI_TRUST_COMPANIES as S, loadConfigWithSource as Sn, Reporter as St, MINIMUM_VTE_VERSION_FOR_HYPERLINKS as T, mergeReactDoctorConfigs as Tn, STAGED_FILES_PROJECT_CONFIG_FILENAMES as Tt, detectRunnerOs as U, error as Un, createOxlintSpawnSlots as Ut, isDebugFlagEnabled as V, yieldToEventLoop as Vn, computeDiagnosticDelta as Vt, isCiEnvironment as W, info as Wn, detectAiTrainingEnvironment as Wt, CI_URL as X, gen as Xn, formatErrorChain as Xt, CANONICAL_GITHUB_URL as Y, make$30 as Yn, findLegacyConfig as Yt, COMPILER_CLEANUP_BUCKET as Z, makeSpan$1 as Zn, formatReactDoctorError as Zt, makeNoopConsole as _, isSameRuleKey as _n, ParentSpan as _r, OxlintConcurrency as _t, isEnvFlagEnabled as a, hasPublishedFixRecipe as an, runSync as ar, Files as at, AXIOM_TRACES_DATASET as b, listSourceFiles as bn, Progress as bt, setSentryProjectInfo as c, highlighter as cn, void_ as cr, Git as ct, isJsonModeActive as d, isFile as dn, provide$2 as dr, LEGACY_CONFIG_FILENAME as dt, getChangedLineRanges as en, promise as er, Config as et, setJsonReportDirectory as f, isMonorepoRoot as fn, succeed$3 as fr, LintPartialFailures as ft, VERSION as g, isReactDoctorError as gn, void_$1 as gr, OXLINT_NODE_REQUIREMENT as gt, writeJsonReport as h, isProjectDiscoveryError as hn, fail$5 as hr, NodeResolver as ht, isTelemetryEnabled as i, groupBy as in, runPromise as ir, ENTERPRISE_CONTACT_URL as it, SENTRY_DSN as j, resolveScanConcurrency as jn, anonymizeText as jt, SCAN_RESULT_CACHE_FILENAME as k, resolveLintBatchOrdering as kn, SupplyChain as kt, getRunId as l, isDirectory as ln, buildWithScope as lr, HTML_FILE_PATTERN as lt, writeJsonErrorReport as m, isPlainObject as mn, makeUnsafe$5 as mr, MILLISECONDS_PER_SECOND as mt, recordDistribution as n, getDiffInfo as nn, provideContext as nr, DOCS_URL as nt, buildSentryScope as o, hasSupportedFrameworkOrLibrary as on, sync as or, GITHUB_ACTIONS_SETUP_URL as ot, setJsonReportMode as p, isPathInsideDirectory as pn, close as pr, Linter as pt, AXIOM_DEFAULT_DOMAIN as q, Diagnostic as qn, filterPathsOutsideDirectories as qt, toSpanAttributes as r, getEquivalentRuleKeys as rn, provideService$2 as rr, DeadCode as rt, buildSentryProjectContext as s, hashFileContents as sn, try_ as sr, GIT_SHOW_MAX_BUFFER_BYTES as st, recordCount as t, getDiagnosticRuleIdentity as tn, provide as tr, DIAGNOSTIC_CATEGORY_BUCKETS as tt, enableJsonMode as u, isErrnoException as un, mergeAll$1 as ur, JSX_FILE_PATTERN as ut, AXIOM_INGEST_TOKEN as v, isScanComplete as vn, OxlintSpawnSlots as vt, METRIC as w, materializeSourceTree as wn, SKILL_NAME as wt, BASELINE_FILES_TEMP_DIR_PREFIX as x, listWorkspacePackages as xn, Project as xt, AXIOM_METRICS_DATASET as y, layerObservability as yn, PerFileLintCacheEnabled as yt, isNonInteractiveEnvironment as z, toRelativePath as zn, collectSourceFileCountsByDirectory as zt };
79855
79877
 
79856
- //# sourceMappingURL=record-metric-CeygoJWT.js.map
79857
- //# debugId=3dc5c201-94db-514e-8ef3-4c6e0f1c1d85
79878
+ //# sourceMappingURL=record-metric-CsNC4O_Q.js.map
79879
+ //# debugId=ef710e22-c39b-5afa-9794-75594b6db533
@@ -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]="02879fb1-d1d5-59d7-b8a5-f92603a2d425")}catch(e){}}();
3
- import { J as CANONICAL_DISCORD_URL, M as SENTRY_FLUSH_TIMEOUT_MS, Un as error, Xn as gen, Xt as formatErrorChain, Y as CANONICAL_GITHUB_URL, Zt as formatReactDoctorError, ar as runSync, cn as highlighter, g as VERSION, gn as isReactDoctorError, l as getRunId, o as buildSentryScope, t as recordCount, un as isErrnoException, w as METRIC } from "./record-metric-CeygoJWT.js";
4
- import { c as isExpectedUserError, i as recordRunTraceId, l as formatEnvironmentError, n as getActiveRunTrace, s as shutdownTelemetry, u as isEnvironmentError } from "./unref-stdin-DklpxlNQ.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]="31d69c78-c1b0-59e1-a7f4-c0833d444d73")}catch(e){}}();
3
+ import { J as CANONICAL_DISCORD_URL, M as SENTRY_FLUSH_TIMEOUT_MS, Un as error, Xn as gen, Xt as formatErrorChain, Y as CANONICAL_GITHUB_URL, Zt as formatReactDoctorError, ar as runSync, cn as highlighter, g as VERSION, gn as isReactDoctorError, l as getRunId, o as buildSentryScope, t as recordCount, un as isErrnoException, w as METRIC } from "./record-metric-CsNC4O_Q.js";
4
+ import { c as isExpectedUserError, i as recordRunTraceId, l as formatEnvironmentError, n as getActiveRunTrace, s as shutdownTelemetry, u as isEnvironmentError } from "./unref-stdin-BS_WPjIC.js";
5
5
  import * as Sentry from "@sentry/node";
6
6
  //#region src/cli/utils/handle-error.ts
7
7
  const OTLP_ENDPOINT_ENVIRONMENT_VARIABLE = "REACT_DOCTOR_OTLP_ENDPOINT";
@@ -160,5 +160,5 @@ const reportErrorToSentry = async (error) => {
160
160
  //#endregion
161
161
  export { handleError as n, handleUserError as r, reportErrorToSentry as t };
162
162
 
163
- //# sourceMappingURL=report-error-uffmJocy.js.map
164
- //# debugId=02879fb1-d1d5-59d7-b8a5-f92603a2d425
163
+ //# sourceMappingURL=report-error-DkUx4ePX.js.map
164
+ //# debugId=31d69c78-c1b0-59e1-a7f4-c0833d444d73
@@ -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]="d2605508-c36d-506a-b29d-b78a2034be1c")}catch(e){}}();
3
- import { D as REACT_DOCTOR_CONFIG_PROJECT_NAME, t as recordCount, w as METRIC } from "./record-metric-CeygoJWT.js";
4
- import { u as isCommandAvailable } from "./install-github-workflow-BwELZAhu.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]="b96f487f-1e95-5995-90ac-b329b6cadbbb")}catch(e){}}();
3
+ import { D as REACT_DOCTOR_CONFIG_PROJECT_NAME, t as recordCount, w as METRIC } from "./record-metric-CsNC4O_Q.js";
4
+ import { u as isCommandAvailable } from "./install-github-workflow-Cn1g1qCj.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-CMtcy7Eb.js.map
279
- //# debugId=d2605508-c36d-506a-b29d-b78a2034be1c
278
+ //# sourceMappingURL=report-workflow-result-CnxQYm4L.js.map
279
+ //# debugId=b96f487f-1e95-5995-90ac-b329b6cadbbb
@@ -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]="ea3de9d5-87e7-51be-9179-ab32166a5066")}catch(e){}}();
3
- import { Jt as filterSourceFiles, Rn as toCanonicalPath, pn as isPathInsideDirectory } from "./record-metric-CeygoJWT.js";
4
- import { L as cliLogger } from "./install-doctor-script-Dn69YqKG.js";
5
- import { d as detectDefaultBranch, f as runCommand, l as prompts, u as isCommandAvailable } from "./install-github-workflow-BwELZAhu.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]="417987a6-3f6c-548f-8e23-6ed450cb6b21")}catch(e){}}();
3
+ import { Jt as filterSourceFiles, Rn as toCanonicalPath, pn as isPathInsideDirectory } from "./record-metric-CsNC4O_Q.js";
4
+ import { L as cliLogger } from "./install-doctor-script-DONC221X.js";
5
+ import { d as detectDefaultBranch, f as runCommand, l as prompts, u as isCommandAvailable } from "./install-github-workflow-Cn1g1qCj.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-CFro-KQO.js.map
339
- //# debugId=ea3de9d5-87e7-51be-9179-ab32166a5066
338
+ //# sourceMappingURL=resolve-scope-VYeciHMp.js.map
339
+ //# debugId=417987a6-3f6c-548f-8e23-6ed450cb6b21
@@ -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]="9987c4c5-e381-5919-8b60-ccf7a8b09c54")}catch(e){}}();
3
- import { Bn as validateConfigTypes, Pt as buildRuleDocsUrl, Q as COMPILER_CLEANUP_RULE_KEYS, Rt as clearConfigCache, Sn as loadConfigWithSource, Z as COMPILER_CLEANUP_BUCKET, _n as isSameRuleKey, cn as highlighter, mn as isPlainObject, rn as getEquivalentRuleKeys, t as recordCount, w as METRIC } from "./record-metric-CeygoJWT.js";
4
- import { L as cliLogger, n as findNearestPackageDirectory } from "./install-doctor-script-Dn69YqKG.js";
5
- import { t as readObjectFile } from "./read-object-file-Bsov5R1-.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]="9a036fa4-c26e-5403-bdb3-a6a6b97696ba")}catch(e){}}();
3
+ import { Bn as validateConfigTypes, Pt as buildRuleDocsUrl, Q as COMPILER_CLEANUP_RULE_KEYS, Rt as clearConfigCache, Sn as loadConfigWithSource, Z as COMPILER_CLEANUP_BUCKET, _n as isSameRuleKey, cn as highlighter, mn as isPlainObject, rn as getEquivalentRuleKeys, t as recordCount, w as METRIC } from "./record-metric-CsNC4O_Q.js";
4
+ import { L as cliLogger, n as findNearestPackageDirectory } from "./install-doctor-script-DONC221X.js";
5
+ import { t as readObjectFile } from "./read-object-file-6XbVf1hj.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-BkLea4GL.js.map
581
- //# debugId=9987c4c5-e381-5919-8b60-ccf7a8b09c54
580
+ //# sourceMappingURL=rules-BHuxNUWe.js.map
581
+ //# debugId=9a036fa4-c26e-5403-bdb3-a6a6b97696ba
@@ -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]="41883acc-2ecb-56f4-8d6b-e039dec8c554")}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]="aa606180-36d7-53c3-91e7-3039202e76a4")}catch(e){}}();
3
3
  import { n as __require, r as __toESM, t as __commonJSMin } from "./chunk-q7NCDQ7-.js";
4
- import { $t as getCategoryImpact, B as isGitHookEnvironment, Cn as mapWithConcurrency, Dn as remainingDeadlineBudgetMs, I as TUI_REPORT_COMPACT_MAX_ROWS, It as calculateScore, L as TUI_REPORT_DETAIL_WIDTH_FRACTION, Mn as resolveScanTarget, Pt as buildRuleDocsUrl, Qt as getBaselineDiffPlan, S as CI_TRUST_COMPANIES, St as Reporter, Vn as yieldToEventLoop, W as isCiEnvironment, an as hasPublishedFixRecipe, bt as Progress, cn as highlighter, cr as void_, en as getChangedLineRanges, fr as succeed, ir as runPromise, n as recordDistribution, nn as getDiffInfo, or as sync, ot as GITHUB_ACTIONS_SETUP_URL, pn as isPathInsideDirectory, t as recordCount, tt as DIAGNOSTIC_CATEGORY_BUCKETS, w as METRIC } from "./record-metric-CeygoJWT.js";
5
- import { n as registerActiveTuiRenderer, t as exitGracefully } from "./exit-gracefully-B7v9PIJk.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-Dn69YqKG.js";
7
- import { i as isReactDoctorWorkflowInstalled } from "./install-github-workflow-BwELZAhu.js";
8
- import { r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-CFro-KQO.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-BEoC3SoQ.js";
10
- import { a as recordGate, f as ONBOARDING_EVENT, n as openUrl, r as isGatePending } from "./report-workflow-result-CMtcy7Eb.js";
4
+ import { $t as getCategoryImpact, B as isGitHookEnvironment, Cn as mapWithConcurrency, Dn as remainingDeadlineBudgetMs, I as TUI_REPORT_COMPACT_MAX_ROWS, It as calculateScore, L as TUI_REPORT_DETAIL_WIDTH_FRACTION, Mn as resolveScanTarget, Pt as buildRuleDocsUrl, Qt as getBaselineDiffPlan, S as CI_TRUST_COMPANIES, St as Reporter, Vn as yieldToEventLoop, W as isCiEnvironment, an as hasPublishedFixRecipe, bt as Progress, cn as highlighter, cr as void_, en as getChangedLineRanges, fr as succeed, ir as runPromise, n as recordDistribution, nn as getDiffInfo, or as sync, ot as GITHUB_ACTIONS_SETUP_URL, pn as isPathInsideDirectory, t as recordCount, tt as DIAGNOSTIC_CATEGORY_BUCKETS, w as METRIC } from "./record-metric-CsNC4O_Q.js";
5
+ import { n as registerActiveTuiRenderer, t as exitGracefully } from "./exit-gracefully-CYTyitpL.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-DONC221X.js";
7
+ import { i as isReactDoctorWorkflowInstalled } from "./install-github-workflow-Cn1g1qCj.js";
8
+ import { r as resolveScope, s as resolveBlockingLevel, t as finalizeScope, u as toForwardSlashes } from "./resolve-scope-VYeciHMp.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-83kHV2TB.js";
10
+ import { a as recordGate, f as ONBOARDING_EVENT, n as openUrl, r as isGatePending } from "./report-workflow-result-CnxQYm4L.js";
11
11
  import { EventEmitter } from "node:events";
12
12
  import { execFileSync } from "node:child_process";
13
13
  import path from "node:path";
@@ -28347,5 +28347,5 @@ const runScanApp = async (input) => {
28347
28347
  //#endregion
28348
28348
  export { runScanApp };
28349
28349
 
28350
- //# sourceMappingURL=run-scan-app-Befn2abh.js.map
28351
- //# debugId=41883acc-2ecb-56f4-8d6b-e039dec8c554
28350
+ //# sourceMappingURL=run-scan-app-tfWkuR3n.js.map
28351
+ //# debugId=aa606180-36d7-53c3-91e7-3039202e76a4
@@ -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]="377a8419-d8cb-5042-8543-867972a83585")}catch(e){}}();
3
- import { Mn as resolveScanTarget, t as recordCount, w as METRIC, z as isNonInteractiveEnvironment } from "./record-metric-CeygoJWT.js";
4
- import { i as warnDeprecatedDiff } from "./resolve-scope-CFro-KQO.js";
5
- import { _ as resolveCliInspectOptions, i as validateModeFlags } from "./should-fail-scan-gate-BEoC3SoQ.js";
6
- import { n as warnDeprecatedFailOn, r as runProjectMigrations, t as inspectAction } from "./inspect-CdQJI2XI.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]="fdd4c73f-d9c1-55d9-9ab2-755cebbc4e3a")}catch(e){}}();
3
+ import { Mn as resolveScanTarget, t as recordCount, w as METRIC, z as isNonInteractiveEnvironment } from "./record-metric-CsNC4O_Q.js";
4
+ import { i as warnDeprecatedDiff } from "./resolve-scope-VYeciHMp.js";
5
+ import { _ as resolveCliInspectOptions, i as validateModeFlags } from "./should-fail-scan-gate-83kHV2TB.js";
6
+ import { n as warnDeprecatedFailOn, r as runProjectMigrations, t as inspectAction } from "./inspect-Di3W9fRk.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-Befn2abh.js");
37
+ const { runScanApp } = await import("./run-scan-app-tfWkuR3n.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-C00HPxuL.js.map
53
- //# debugId=377a8419-d8cb-5042-8543-867972a83585
52
+ //# sourceMappingURL=scan-BB60TMXB.js.map
53
+ //# debugId=fdd4c73f-d9c1-55d9-9ab2-755cebbc4e3a
@@ -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]="f7f13734-adec-55f3-953d-caa4c00f9b28")}catch(e){}}();
3
- import { $n as orElseSucceed, An as resolveReactDoctorCacheDir, Bt as computeConfigFingerprint, Cn as mapWithConcurrency, Ct as SHARE_BASE_URL, Dt as SidecarLintCacheEnabled, E as NANOSECONDS_PER_MILLISECOND, Et as Score, Ft as buildSkippedChecks, G as isCiOrCodingAgentEnvironment, Gn as log, Gt as discoverReactSubprojects, H as ACTION_INPUT_ENVIRONMENT_VARIABLES, Hn as Console, Ht as createNodeReadFileLinesSync, It as calculateScore, Jn as decodeUnknownSync, Jt as filterSourceFiles, Kn as warn, Kt as filterDiagnosticsForSurface, Ln as summarizeDiagnostics, Lt as canonicalizeUserRuleKey, Mn as resolveScanTarget, Mt as atomicWriteJson, Nn as restoreLegacyThrow, On as resolveGithubActionsScoreMetadata, Pn as runInspect, Pt as buildRuleDocsUrl, Qn as map, R as CliInputError, St as Reporter, Tn as mergeReactDoctorConfigs, U as detectRunnerOs, Un as error, Ut as createOxlintSpawnSlots, Vn as yieldToEventLoop, Vt as computeDiagnosticDelta, W as isCiEnvironment, X as CI_URL, Xn as gen, Zn as makeSpan, _ as makeNoopConsole, _r as ParentSpan, _t as OxlintConcurrency, an as hasPublishedFixRecipe, ar as runSync, at as Files, bn as listSourceFiles, bt as Progress, c as setSentryProjectInfo, cn as highlighter, ct as Git, d as isJsonModeActive, dn as isFile, er as promise, et as Config, fn as isMonorepoRoot, fr as succeed, ft as LintPartialFailures, g as VERSION, gn as isReactDoctorError, gr as void_, gt as OXLINT_NODE_REQUIREMENT, hr as fail, ht as NodeResolver, in as groupBy, ir as runPromise, it as ENTERPRISE_CONTACT_URL, jn as resolveScanConcurrency, k as SCAN_RESULT_CACHE_FILENAME, kn as resolveLintBatchOrdering, kt as SupplyChain, l as getRunId, ln as isDirectory, lt as HTML_FILE_PATTERN, mt as MILLISECONDS_PER_SECOND, n as recordDistribution, nr as provideContext, o as buildSentryScope, or as sync, pt as Linter, qn as Diagnostic, qt as filterPathsOutsideDirectories, r as toSpanAttributes, rr as provideService, rt as DeadCode, s as buildSentryProjectContext, sn as hashFileContents, sr as try_, st as GIT_SHOW_MAX_BUFFER_BYTES, t as recordCount, tn as getDiagnosticRuleIdentity, tr as provide, tt as DIAGNOSTIC_CATEGORY_BUCKETS, ur as mergeAll, ut as JSX_FILE_PATTERN, vn as isScanComplete, vt as OxlintSpawnSlots, w as METRIC, wn as materializeSourceTree, x as BASELINE_FILES_TEMP_DIR_PREFIX, xn as listWorkspacePackages, xt as Project, yt as PerFileLintCacheEnabled, z as isNonInteractiveEnvironment, zt as collectSourceFileCountsByDirectory } from "./record-metric-CeygoJWT.js";
4
- import { a as setActiveRunTrace, i as recordRunTraceId, o as getTelemetryContext } from "./unref-stdin-DklpxlNQ.js";
5
- import { n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-4ZztYtZV.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-Dn69YqKG.js";
7
- import { d as detectDefaultBranch, l as prompts, r as installReactDoctorWorkflow, u as isCommandAvailable } from "./install-github-workflow-BwELZAhu.js";
8
- import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, o as pickBlockingLevel, u as toForwardSlashes } from "./resolve-scope-CFro-KQO.js";
9
- import { h as detectAvailableAgents, t as reportWorkflowResult } from "./report-workflow-result-CMtcy7Eb.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]="00b37aa1-f3de-5abb-a6ec-3a69eb8328fb")}catch(e){}}();
3
+ import { $n as orElseSucceed, An as resolveReactDoctorCacheDir, Bt as computeConfigFingerprint, Cn as mapWithConcurrency, Ct as SHARE_BASE_URL, Dt as SidecarLintCacheEnabled, E as NANOSECONDS_PER_MILLISECOND, Et as Score, Ft as buildSkippedChecks, G as isCiOrCodingAgentEnvironment, Gn as log, Gt as discoverReactSubprojects, H as ACTION_INPUT_ENVIRONMENT_VARIABLES, Hn as Console, Ht as createNodeReadFileLinesSync, It as calculateScore, Jn as decodeUnknownSync, Jt as filterSourceFiles, Kn as warn, Kt as filterDiagnosticsForSurface, Ln as summarizeDiagnostics, Lt as canonicalizeUserRuleKey, Mn as resolveScanTarget, Mt as atomicWriteJson, Nn as restoreLegacyThrow, On as resolveGithubActionsScoreMetadata, Pn as runInspect, Pt as buildRuleDocsUrl, Qn as map, R as CliInputError, St as Reporter, Tn as mergeReactDoctorConfigs, U as detectRunnerOs, Un as error, Ut as createOxlintSpawnSlots, Vn as yieldToEventLoop, Vt as computeDiagnosticDelta, W as isCiEnvironment, X as CI_URL, Xn as gen, Zn as makeSpan, _ as makeNoopConsole, _r as ParentSpan, _t as OxlintConcurrency, an as hasPublishedFixRecipe, ar as runSync, at as Files, bn as listSourceFiles, bt as Progress, c as setSentryProjectInfo, cn as highlighter, ct as Git, d as isJsonModeActive, dn as isFile, er as promise, et as Config, fn as isMonorepoRoot, fr as succeed, ft as LintPartialFailures, g as VERSION, gn as isReactDoctorError, gr as void_, gt as OXLINT_NODE_REQUIREMENT, hr as fail, ht as NodeResolver, in as groupBy, ir as runPromise, it as ENTERPRISE_CONTACT_URL, jn as resolveScanConcurrency, k as SCAN_RESULT_CACHE_FILENAME, kn as resolveLintBatchOrdering, kt as SupplyChain, l as getRunId, ln as isDirectory, lt as HTML_FILE_PATTERN, mt as MILLISECONDS_PER_SECOND, n as recordDistribution, nr as provideContext, o as buildSentryScope, or as sync, pt as Linter, qn as Diagnostic, qt as filterPathsOutsideDirectories, r as toSpanAttributes, rr as provideService, rt as DeadCode, s as buildSentryProjectContext, sn as hashFileContents, sr as try_, st as GIT_SHOW_MAX_BUFFER_BYTES, t as recordCount, tn as getDiagnosticRuleIdentity, tr as provide, tt as DIAGNOSTIC_CATEGORY_BUCKETS, ur as mergeAll, ut as JSX_FILE_PATTERN, vn as isScanComplete, vt as OxlintSpawnSlots, w as METRIC, wn as materializeSourceTree, x as BASELINE_FILES_TEMP_DIR_PREFIX, xn as listWorkspacePackages, xt as Project, yt as PerFileLintCacheEnabled, z as isNonInteractiveEnvironment, zt as collectSourceFileCountsByDirectory } from "./record-metric-CsNC4O_Q.js";
4
+ import { a as setActiveRunTrace, i as recordRunTraceId, o as getTelemetryContext } from "./unref-stdin-BS_WPjIC.js";
5
+ import { n as buildFooterLinkLines, r as activeScanAbortRegistry, t as buildSectionDivider } from "./build-section-divider-DHZDIOiT.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-DONC221X.js";
7
+ import { d as detectDefaultBranch, l as prompts, r as installReactDoctorWorkflow, u as isCommandAvailable } from "./install-github-workflow-Cn1g1qCj.js";
8
+ import { a as isValidBlockingLevel, c as openWorkflowPullRequest, l as stageWorkflowFile, o as pickBlockingLevel, u as toForwardSlashes } from "./resolve-scope-VYeciHMp.js";
9
+ import { h as detectAvailableAgents, t as reportWorkflowResult } from "./report-workflow-result-CnxQYm4L.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";
@@ -3028,5 +3028,5 @@ const shouldFailScanGate = (input) => {
3028
3028
  //#endregion
3029
3029
  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 };
3030
3030
 
3031
- //# sourceMappingURL=should-fail-scan-gate-BEoC3SoQ.js.map
3032
- //# debugId=f7f13734-adec-55f3-953d-caa4c00f9b28
3031
+ //# sourceMappingURL=should-fail-scan-gate-83kHV2TB.js.map
3032
+ //# debugId=00b37aa1-f3de-5abb-a6ec-3a69eb8328fb
@@ -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]="6c5caf85-a05b-5e6e-93c2-2a1cbc505a42")}catch(e){}}();
3
- import { z as isNonInteractiveEnvironment } from "./record-metric-CeygoJWT.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]="f5138d72-50b0-5bec-be98-26590b489dfa")}catch(e){}}();
3
+ import { z as isNonInteractiveEnvironment } from "./record-metric-CsNC4O_Q.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-De37OlfL.js.map
10
- //# debugId=6c5caf85-a05b-5e6e-93c2-2a1cbc505a42
9
+ //# sourceMappingURL=should-skip-prompts-B_13T5y9.js.map
10
+ //# debugId=f5138d72-50b0-5bec-be98-26590b489dfa
@@ -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]="ac6b3308-25c4-5c04-9d6a-cf365c6f83f0")}catch(e){}}();
3
- import { En as messageFromUnknown, R as CliInputError, Yn as make, ar as runSync, g as VERSION, gn as isReactDoctorError, gr as void_, hn as isProjectDiscoveryError, i as isTelemetryEnabled, ir as runPromise, lr as buildWithScope, mr as makeUnsafe, pr as close, un as isErrnoException, yn as layerObservability } from "./record-metric-CeygoJWT.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]="43628d08-0e8b-56bd-94dc-39ef39b71969")}catch(e){}}();
3
+ import { En as messageFromUnknown, R as CliInputError, Yn as make, ar as runSync, g as VERSION, gn as isReactDoctorError, gr as void_, hn as isProjectDiscoveryError, i as isTelemetryEnabled, ir as runPromise, lr as buildWithScope, mr as makeUnsafe, pr as close, un as isErrnoException, yn as layerObservability } from "./record-metric-CsNC4O_Q.js";
4
4
  //#region src/cli/utils/is-environment-error.ts
5
5
  const ENVIRONMENT_ERROR_CODES = new Set([
6
6
  "EACCES",
@@ -223,5 +223,5 @@ const unrefStdin = () => {
223
223
  //#endregion
224
224
  export { setActiveRunTrace as a, isExpectedUserError as c, recordRunTraceId as i, formatEnvironmentError as l, getActiveRunTrace as n, getTelemetryContext as o, getLastRunTraceId as r, shutdownTelemetry as s, unrefStdin as t, isEnvironmentError as u };
225
225
 
226
- //# sourceMappingURL=unref-stdin-DklpxlNQ.js.map
227
- //# debugId=ac6b3308-25c4-5c04-9d6a-cf365c6f83f0
226
+ //# sourceMappingURL=unref-stdin-BS_WPjIC.js.map
227
+ //# debugId=43628d08-0e8b-56bd-94dc-39ef39b71969
@@ -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]="bdca8076-6874-5f29-ade7-e7e157acb745")}catch(e){}}();
3
- import { g as VERSION, t as recordCount, w as METRIC } from "./record-metric-CeygoJWT.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]="5a364851-2ec8-57e8-8625-ace017569c63")}catch(e){}}();
3
+ import { g as VERSION, t as recordCount, w as METRIC } from "./record-metric-CsNC4O_Q.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-CRfqT5pV.js.map
21
- //# debugId=bdca8076-6874-5f29-ade7-e7e157acb745
20
+ //# sourceMappingURL=version-DEV3zEd5.js.map
21
+ //# debugId=5a364851-2ec8-57e8-8625-ace017569c63