pi-lens 4.4.1 → 4.4.3

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 (140) hide show
  1. package/CHANGELOG.md +88 -0
  2. package/config/dependency-cruiser-eager-allowlist.json +3 -1
  3. package/dist/{chunk-BJF25SUG.js → chunk-23WOO7TX.js} +11 -10
  4. package/dist/{chunk-WATC3IQR.js → chunk-2B73ZPOK.js} +3 -3
  5. package/dist/{chunk-N2IRDBZI.js → chunk-2BBLFX75.js} +101 -11
  6. package/dist/{chunk-TA5L5KWQ.js → chunk-2CD5RS6M.js} +2 -2
  7. package/dist/{chunk-3TTPKMEF.js → chunk-2VUQMUMT.js} +38 -37
  8. package/dist/{chunk-5JHXUETW.js → chunk-3EFKIGZN.js} +3 -3
  9. package/dist/chunk-3JNKMP3B.js +17 -0
  10. package/dist/{chunk-6P54TMWL.js → chunk-3VPVG5SU.js} +6 -6
  11. package/dist/{chunk-ZETYB3XG.js → chunk-3W7IEVVL.js} +44 -28
  12. package/dist/chunk-3YN6V5TV.js +85 -0
  13. package/dist/chunk-466Z26MG.js +30 -0
  14. package/dist/{chunk-PCHDGUKT.js → chunk-4UNXBNE2.js} +12 -11
  15. package/dist/{chunk-J7WJZ6W7.js → chunk-4W4VLAPJ.js} +12 -11
  16. package/dist/{chunk-F5VLZHUW.js → chunk-52FUZI6K.js} +4 -2
  17. package/dist/{chunk-H5EV3VMF.js → chunk-5NGR67U5.js} +2 -2
  18. package/dist/{chunk-CBD2B5CP.js → chunk-5UCAH366.js} +21 -20
  19. package/dist/{chunk-BHWHXMQ2.js → chunk-67WMNWEE.js} +9 -8
  20. package/dist/{chunk-USHG4DLH.js → chunk-6C7JWPCP.js} +7 -7
  21. package/dist/{chunk-VPWKF3GN.js → chunk-6GFRNVYR.js} +11 -10
  22. package/dist/{chunk-3JL6IFD7.js → chunk-6SDEP3AJ.js} +9 -8
  23. package/dist/{chunk-NJF2X5XF.js → chunk-6STA6Z7I.js} +19 -17
  24. package/dist/{chunk-KJCWXUUS.js → chunk-724UL2TJ.js} +6 -4
  25. package/dist/{chunk-MQA2YBAH.js → chunk-76MWC2K6.js} +3 -3
  26. package/dist/{chunk-YLN4K6WD.js → chunk-77M37OKR.js} +10 -8
  27. package/dist/{chunk-XHSCVSOL.js → chunk-7DYBLXYA.js} +3 -3
  28. package/dist/{chunk-OC7LYAU5.js → chunk-AB3YYG6N.js} +24 -10
  29. package/dist/{chunk-LD7WFTRX.js → chunk-ACXEQZOU.js} +16 -16
  30. package/dist/{chunk-VSMJK3ZJ.js → chunk-AOHZU2BM.js} +1 -1
  31. package/dist/{chunk-T4QZ6FEH.js → chunk-AW7R2GWG.js} +65 -8
  32. package/dist/{chunk-GAYGGICG.js → chunk-BKE7E7TC.js} +10 -9
  33. package/dist/{chunk-EUT3B22Y.js → chunk-BRGDSBJE.js} +13 -12
  34. package/dist/{chunk-T54VJRAD.js → chunk-C34ZXZ7O.js} +55 -11
  35. package/dist/{chunk-UGSMCQ4D.js → chunk-CHOW74WE.js} +1 -1
  36. package/dist/{chunk-H2W2AXD3.js → chunk-CMMHNUZ2.js} +66 -58
  37. package/dist/chunk-CSHFH5IN.js +17 -0
  38. package/dist/chunk-EC47DWFA.js +56 -0
  39. package/dist/{chunk-KJN4IOEJ.js → chunk-EJIUXPBX.js} +1 -1
  40. package/dist/{chunk-IQZXOZ7S.js → chunk-EU63SDCG.js} +720 -334
  41. package/dist/{chunk-LNOMA3MP.js → chunk-FCSOVF55.js} +107 -3
  42. package/dist/{chunk-CFYISHUW.js → chunk-FLKWCIZH.js} +8 -5
  43. package/dist/{chunk-OYTMZXRF.js → chunk-FMSO6RDZ.js} +16 -14
  44. package/dist/{chunk-IUKPRZER.js → chunk-GAEGEPOC.js} +2 -2
  45. package/dist/{chunk-6XX5HCLK.js → chunk-GBPP5P7X.js} +4 -4
  46. package/dist/{chunk-TQFBZVCG.js → chunk-GXW6K4YJ.js} +1 -1
  47. package/dist/{chunk-ZZUFZUQZ.js → chunk-H6MF6EVN.js} +331 -107
  48. package/dist/{chunk-3JSEWUWI.js → chunk-IBGIOBEE.js} +3 -3
  49. package/dist/chunk-IZSHAIJ7.js +26 -0
  50. package/dist/{chunk-7ELY2CSM.js → chunk-JAU72XNY.js} +16 -14
  51. package/dist/chunk-JMYYOTQG.js +77 -0
  52. package/dist/{chunk-ELVWJYRV.js → chunk-JSQFTSC6.js} +12 -11
  53. package/dist/{chunk-J6DFZDFA.js → chunk-KBG47GHP.js} +4 -4
  54. package/dist/chunk-KDERNTCQ.js +28 -0
  55. package/dist/chunk-KSX3TXSZ.js +69 -0
  56. package/dist/{chunk-XGUL4SLQ.js → chunk-L3BLXZG7.js} +2 -2
  57. package/dist/chunk-LOP6GRPH.js +31 -0
  58. package/dist/{chunk-MTDRLSI7.js → chunk-M6HSLBWY.js} +1064 -986
  59. package/dist/chunk-MQLUAEOC.js +162 -0
  60. package/dist/{chunk-3MRXIJ6I.js → chunk-MRXKYPCS.js} +2 -2
  61. package/dist/{chunk-D65GOCJB.js → chunk-MXGY6KPT.js} +19 -16
  62. package/dist/{chunk-G3RLJYA2.js → chunk-N2H3ZPZY.js} +47 -1
  63. package/dist/{chunk-HREZQCT3.js → chunk-N3X6Q4YT.js} +3 -3
  64. package/dist/{chunk-HSIRMK2D.js → chunk-OCAGUNBC.js} +15 -15
  65. package/dist/{chunk-ZOEYVXSV.js → chunk-OXXKQCSV.js} +6 -6
  66. package/dist/{chunk-S6AMWKPC.js → chunk-P7266HLM.js} +2 -2
  67. package/dist/{chunk-64LU2OVH.js → chunk-PHDMFAKM.js} +12 -2
  68. package/dist/{chunk-IMSQR4WO.js → chunk-PNQDPDRC.js} +1 -1
  69. package/dist/{chunk-IUR76K6A.js → chunk-Q7DUK4LX.js} +5 -5
  70. package/dist/{chunk-CULQYFLU.js → chunk-QGQ5CCCG.js} +2 -2
  71. package/dist/{chunk-UEAHAMEI.js → chunk-QHJ6DQ2R.js} +11 -11
  72. package/dist/{chunk-BNKLYOOO.js → chunk-QILIYSJF.js} +1 -1
  73. package/dist/{chunk-VYKKMYVT.js → chunk-QOBUHWHX.js} +11 -6
  74. package/dist/{chunk-3PNFWVHT.js → chunk-QQNQ7SJW.js} +2 -75
  75. package/dist/{chunk-7M4T5N3V.js → chunk-R3PCY3YS.js} +14 -13
  76. package/dist/{chunk-MGIWSROG.js → chunk-RPLINGVB.js} +7 -7
  77. package/dist/{chunk-CMU4RMJB.js → chunk-RWWYJ623.js} +10 -1
  78. package/dist/{chunk-3FERWMCH.js → chunk-RXCOMYPY.js} +27 -26
  79. package/dist/{chunk-7BX5DWSA.js → chunk-SAEFPSB6.js} +11 -11
  80. package/dist/{chunk-N7YNJE5R.js → chunk-SQ4TVJBR.js} +10 -10
  81. package/dist/{chunk-DMS52BEP.js → chunk-SS36ZX4J.js} +9 -7
  82. package/dist/{chunk-JONGANYH.js → chunk-T6CPIZNT.js} +32 -30
  83. package/dist/{chunk-6UYA642J.js → chunk-TYM6OUIT.js} +13 -12
  84. package/dist/{chunk-ALQRYH6O.js → chunk-UXGETRP4.js} +13 -12
  85. package/dist/{chunk-FGALODG3.js → chunk-UZ3TUTRV.js} +1 -1
  86. package/dist/{chunk-J3FZR3YY.js → chunk-VCHXCQFG.js} +3 -3
  87. package/dist/{chunk-3P4PF2BX.js → chunk-VCO24T4L.js} +34 -22
  88. package/dist/{chunk-O7HZX7CA.js → chunk-VRZP76YM.js} +1 -1
  89. package/dist/{chunk-VZHJS6DR.js → chunk-VSSBEUFT.js} +16 -15
  90. package/dist/{chunk-U52SAGRM.js → chunk-VWCXW2E7.js} +1 -1
  91. package/dist/{chunk-WW5BLB74.js → chunk-WOA4LN2R.js} +2 -2
  92. package/dist/{chunk-ZMOMPX2Z.js → chunk-WU567RSC.js} +11 -10
  93. package/dist/{chunk-N77WFUL7.js → chunk-XAGLWMJ4.js} +23 -22
  94. package/dist/{chunk-WSEWKCXU.js → chunk-XCJN5IJU.js} +4 -4
  95. package/dist/{chunk-IR6XFA5P.js → chunk-XIJZVPD5.js} +16 -14
  96. package/dist/{chunk-OYOB3ZFG.js → chunk-XMSXXAHW.js} +2 -2
  97. package/dist/{chunk-34OCDWOS.js → chunk-XTMJ7XDT.js} +1 -1
  98. package/dist/{chunk-Z6BB4JLQ.js → chunk-XVF2VVXP.js} +5 -3
  99. package/dist/{chunk-AFZYMAIV.js → chunk-YIUAVF7E.js} +37 -35
  100. package/dist/{chunk-NFXP47RV.js → chunk-YSZNHOBY.js} +85 -31
  101. package/dist/{chunk-V5MEBST3.js → chunk-YYOIQFRS.js} +21 -21
  102. package/dist/chunk-Z527N6YQ.js +28 -0
  103. package/dist/{chunk-D6YF5HKX.js → chunk-ZANLILYD.js} +22 -2
  104. package/dist/{chunk-2UMYMRI3.js → chunk-ZGDGW2V3.js} +2 -2
  105. package/dist/{chunk-6B5I6ICN.js → chunk-ZHFZWTZV.js} +12 -11
  106. package/dist/{chunk-OEX24ECI.js → chunk-ZWFS3OEF.js} +51 -41
  107. package/dist/{chunk-AXKPQ6ZI.js → chunk-ZXYDQ3TZ.js} +5 -5
  108. package/dist/index.js +73783 -71033
  109. package/dist/mcp/analyze-cli.js +18 -8
  110. package/dist/mcp/cli.js +48 -37
  111. package/dist/mcp/server.js +568 -397
  112. package/dist/mcp/worker.js +67 -55
  113. package/dist/probes/installer.js +20 -19
  114. package/docs/astplayground.md +1 -1
  115. package/docs/configuration.md +29 -0
  116. package/docs/dependencies.md +3 -0
  117. package/docs/features.md +2 -2
  118. package/docs/globalconfig.md +2 -0
  119. package/docs/language-coverage.md +2 -1
  120. package/docs/lsp-capability-matrix.md +29 -7
  121. package/docs/lsp-idle-eviction.md +38 -47
  122. package/docs/pi-lens-fixer.md +4 -0
  123. package/docs/pi-lens-merge-policy.md +17 -4
  124. package/docs/pi-lens-retro.md +2 -1
  125. package/docs/pi-lens-reviewer.md +18 -0
  126. package/docs/pi-lens-subagent.md +7 -0
  127. package/docs/real-harness.md +17 -0
  128. package/docs/schema/pi-lens-config-v1.json +37 -2
  129. package/docs/servercapabilities.md +15 -4
  130. package/docs/settings.md +2 -1
  131. package/package.json +1 -1
  132. package/dist/chunk-2FQ62SPM.js +0 -83
  133. package/dist/chunk-7AXO3ZDF.js +0 -30
  134. package/dist/chunk-KMGPUKFD.js +0 -25
  135. package/dist/chunk-OZJINN4O.js +0 -84
  136. package/dist/chunk-RJFED73B.js +0 -79
  137. package/dist/chunk-RTQNRM5X.js +0 -27
  138. package/dist/chunk-VGEVL5EQ.js +0 -29
  139. package/dist/chunk-WPE5FPGR.js +0 -54
  140. package/dist/chunk-Z7QQA2KT.js +0 -27
@@ -3,10 +3,20 @@ import {
3
3
  extractTomlTableSection,
4
4
  hasTomlTable,
5
5
  parseTomlStringArray
6
- } from "./chunk-S6AMWKPC.js";
6
+ } from "./chunk-P7266HLM.js";
7
7
  import {
8
+ getProjectTrustState
9
+ } from "./chunk-ZANLILYD.js";
10
+ import {
11
+ incrementDegradationCount,
8
12
  recordDegradationOnce
9
- } from "./chunk-7ELY2CSM.js";
13
+ } from "./chunk-JAU72XNY.js";
14
+ import {
15
+ logExtension
16
+ } from "./chunk-XTMJ7XDT.js";
17
+ import {
18
+ logLatency
19
+ } from "./chunk-QQNQ7SJW.js";
10
20
  import {
11
21
  UV_WORKSPACE_EXCLUDE_DIALECT,
12
22
  UV_WORKSPACE_MEMBERS_DIALECT,
@@ -14,7 +24,79 @@ import {
14
24
  matchesWorkspaceMemberPattern,
15
25
  toPosix,
16
26
  walkUpDirs
17
- } from "./chunk-G3RLJYA2.js";
27
+ } from "./chunk-N2H3ZPZY.js";
28
+
29
+ // dist/clients/bounded-telemetry.js
30
+ var MAX_TRACKED_TURN_CAPS = 64;
31
+ var turnCounts = /* @__PURE__ */ new Map();
32
+ var latestCountedTurnIndex;
33
+ var retiredThroughTurnIndex = Number.NEGATIVE_INFINITY;
34
+ function admitBounded(phase, identity, options = {}) {
35
+ try {
36
+ let isRisingEdge = true;
37
+ if (options.ledgerKind !== void 0) {
38
+ isRisingEdge = incrementDegradationCount({
39
+ kind: options.ledgerKind,
40
+ subject: identity,
41
+ reason: options.reason ?? phase
42
+ });
43
+ }
44
+ if (options.risingEdgePer !== void 0 && !isRisingEdge)
45
+ return false;
46
+ return admitAgainstTurnCap(phase, options.capPerTurn);
47
+ } catch {
48
+ return true;
49
+ }
50
+ }
51
+ function emitBounded(phase, identity, payload, options = {}) {
52
+ try {
53
+ if (!admitBounded(phase, identity, options))
54
+ return false;
55
+ logLatency({
56
+ ...payload,
57
+ type: payload.type ?? "phase",
58
+ phase,
59
+ // `filePath` is what existing latency.log queries filter on, so a site
60
+ // may keep a coarser one; `metadata.identity` below always carries the
61
+ // full discriminating identity. Aggregation that loses WHICH subject
62
+ // is stuck is the failure AGENTS.md names.
63
+ filePath: payload.filePath ?? identity,
64
+ metadata: { ...payload.metadata, identity }
65
+ });
66
+ return true;
67
+ } catch {
68
+ return false;
69
+ }
70
+ }
71
+ function admitAgainstTurnCap(phase, cap) {
72
+ if (cap === void 0)
73
+ return true;
74
+ if (cap.turnIndex <= retiredThroughTurnIndex)
75
+ return false;
76
+ let counts = turnCounts.get(cap.turnIndex);
77
+ if (!counts) {
78
+ if (turnCounts.size >= MAX_TRACKED_TURN_CAPS) {
79
+ const oldestTrackedTurn = Math.min(...turnCounts.keys());
80
+ if (cap.turnIndex < oldestTrackedTurn)
81
+ return false;
82
+ turnCounts.delete(oldestTrackedTurn);
83
+ retiredThroughTurnIndex = Math.max(retiredThroughTurnIndex, oldestTrackedTurn);
84
+ }
85
+ counts = /* @__PURE__ */ new Map();
86
+ turnCounts.set(cap.turnIndex, counts);
87
+ }
88
+ latestCountedTurnIndex = Math.max(latestCountedTurnIndex ?? cap.turnIndex, cap.turnIndex);
89
+ const used = counts.get(phase) ?? 0;
90
+ if (used >= cap.limit)
91
+ return false;
92
+ counts.set(phase, used + 1);
93
+ return true;
94
+ }
95
+ function resetBoundedTelemetry() {
96
+ turnCounts = /* @__PURE__ */ new Map();
97
+ latestCountedTurnIndex = void 0;
98
+ retiredThroughTurnIndex = Number.NEGATIVE_INFINITY;
99
+ }
18
100
 
19
101
  // dist/clients/python-environment.js
20
102
  import { access, readFile } from "node:fs/promises";
@@ -68,6 +150,11 @@ function isUvWorkspaceMember(workspace, projectRoot) {
68
150
  }));
69
151
  return !workspace.exclude.some(matches(UV_WORKSPACE_EXCLUDE_DIALECT)) && workspace.members.some(matches(UV_WORKSPACE_MEMBERS_DIALECT));
70
152
  }
153
+ var PROJECT_SOURCED_PYTHON_SOURCES = /* @__PURE__ */ new Set([
154
+ "project-dot-venv",
155
+ "project-venv",
156
+ "uv-workspace"
157
+ ]);
71
158
  var AMBIENT_ENVIRONMENT_VARIABLES = {
72
159
  "uv-project-environment": "UV_PROJECT_ENVIRONMENT",
73
160
  "virtual-env": "VIRTUAL_ENV",
@@ -115,6 +202,21 @@ async function detectPythonEnvironment(projectRoot, homeDir = os.homedir(), opti
115
202
  continue;
116
203
  if (!allowAmbient && candidate.source in AMBIENT_ENVIRONMENT_VARIABLES && !isWithinProjectRoot(candidate.root))
117
204
  continue;
205
+ if (PROJECT_SOURCED_PYTHON_SOURCES.has(candidate.source) && getProjectTrustState() !== "trusted") {
206
+ if (recordDegradationOnce({
207
+ kind: "trust-refusal",
208
+ subject: `python-environment:${candidate.root}`,
209
+ reason: `project Python environment refused: pi project trust is ${getProjectTrustState()}`
210
+ })) {
211
+ logExtension({
212
+ subsystem: "project-trust",
213
+ level: "warn",
214
+ message: "project Python environment refused: mark the project trusted in pi or upgrade pi",
215
+ metadata: { source: candidate.source }
216
+ });
217
+ }
218
+ continue;
219
+ }
118
220
  const binDir = path.join(candidate.root, process.platform === "win32" ? "Scripts" : "bin");
119
221
  const pythonPath = path.join(binDir, process.platform === "win32" ? "python.exe" : "python");
120
222
  try {
@@ -161,6 +263,8 @@ function pythonEnvironmentToolCandidates(environment, command) {
161
263
  }
162
264
 
163
265
  export {
266
+ emitBounded,
267
+ resetBoundedTelemetry,
164
268
  hasAmbientPythonEnvironment,
165
269
  detectPythonEnvironment,
166
270
  detectPythonVenv,
@@ -4,6 +4,7 @@ import {
4
4
  DOTNET_CSHARP_ROOT_MARKERS,
5
5
  DOTNET_FSHARP_ROOT_MARKERS,
6
6
  KIND_EXTENSIONS,
7
+ LEAN_ROOT_MARKERS,
7
8
  NON_CODE_KINDS,
8
9
  SPECIAL_FILENAMES,
9
10
  TERRAGRUNT_FILENAMES,
@@ -16,17 +17,19 @@ import {
16
17
  isHelmYamlTemplatePath,
17
18
  isJstsFactFile,
18
19
  isReadableSourceFile
19
- } from "./chunk-64LU2OVH.js";
20
- import "./chunk-Z6BB4JLQ.js";
21
- import "./chunk-3PNFWVHT.js";
22
- import "./chunk-VSMJK3ZJ.js";
23
- import "./chunk-G3RLJYA2.js";
20
+ } from "./chunk-PHDMFAKM.js";
21
+ import "./chunk-XVF2VVXP.js";
22
+ import "./chunk-JMYYOTQG.js";
23
+ import "./chunk-QQNQ7SJW.js";
24
+ import "./chunk-AOHZU2BM.js";
25
+ import "./chunk-N2H3ZPZY.js";
24
26
  import "./chunk-NXL4FFQQ.js";
25
27
  export {
26
28
  CODE_KINDS,
27
29
  DOTNET_CSHARP_ROOT_MARKERS,
28
30
  DOTNET_FSHARP_ROOT_MARKERS,
29
31
  KIND_EXTENSIONS,
32
+ LEAN_ROOT_MARKERS,
30
33
  NON_CODE_KINDS,
31
34
  SPECIAL_FILENAMES,
32
35
  TERRAGRUNT_FILENAMES,
@@ -9,24 +9,26 @@ import {
9
9
  resolveSeverityFloor,
10
10
  shouldScanTrivy,
11
11
  worktreeSkipDirs
12
- } from "./chunk-YLN4K6WD.js";
13
- import "./chunk-J3FZR3YY.js";
14
- import "./chunk-5JHXUETW.js";
15
- import "./chunk-IMSQR4WO.js";
16
- import "./chunk-CMU4RMJB.js";
17
- import "./chunk-O7HZX7CA.js";
18
- import "./chunk-T54VJRAD.js";
12
+ } from "./chunk-77M37OKR.js";
13
+ import "./chunk-CSHFH5IN.js";
14
+ import "./chunk-VCHXCQFG.js";
15
+ import "./chunk-3EFKIGZN.js";
16
+ import "./chunk-PNQDPDRC.js";
17
+ import "./chunk-RWWYJ623.js";
18
+ import "./chunk-VRZP76YM.js";
19
+ import "./chunk-C34ZXZ7O.js";
19
20
  import "./chunk-BW5KFIQC.js";
20
- import "./chunk-N2IRDBZI.js";
21
- import "./chunk-Z6BB4JLQ.js";
21
+ import "./chunk-2BBLFX75.js";
22
+ import "./chunk-XVF2VVXP.js";
22
23
  import "./chunk-2EECBNC5.js";
23
- import "./chunk-7ELY2CSM.js";
24
- import "./chunk-34OCDWOS.js";
25
- import "./chunk-3PNFWVHT.js";
26
- import "./chunk-VSMJK3ZJ.js";
24
+ import "./chunk-JAU72XNY.js";
25
+ import "./chunk-XTMJ7XDT.js";
26
+ import "./chunk-JMYYOTQG.js";
27
+ import "./chunk-QQNQ7SJW.js";
28
+ import "./chunk-AOHZU2BM.js";
27
29
  import "./chunk-LJDODBBZ.js";
28
30
  import "./chunk-ABBOA7UD.js";
29
- import "./chunk-G3RLJYA2.js";
31
+ import "./chunk-N2H3ZPZY.js";
30
32
  import "./chunk-NXL4FFQQ.js";
31
33
  export {
32
34
  TrivyClient,
@@ -1,11 +1,11 @@
1
1
  import { createRequire as __pilensCreateRequire } from "node:module"; const require = __pilensCreateRequire(import.meta.url);
2
2
  import {
3
3
  loadPiLensProjectConfig
4
- } from "./chunk-N2IRDBZI.js";
4
+ } from "./chunk-2BBLFX75.js";
5
5
  import {
6
6
  lazyEnvNumber,
7
7
  toPositiveFinite
8
- } from "./chunk-VSMJK3ZJ.js";
8
+ } from "./chunk-AOHZU2BM.js";
9
9
 
10
10
  // dist/clients/project-scale.js
11
11
  var DEFAULT_PROJECT_SCALE_BASE = 2e3;
@@ -4,17 +4,17 @@ import {
4
4
  readCargoDependencyNames,
5
5
  readCargoPackageName,
6
6
  readCargoWorkspaceMembers
7
- } from "./chunk-S6AMWKPC.js";
7
+ } from "./chunk-P7266HLM.js";
8
8
  import {
9
9
  getProjectIgnoreMatcher,
10
10
  isExcludedDirName
11
- } from "./chunk-T54VJRAD.js";
11
+ } from "./chunk-C34ZXZ7O.js";
12
12
  import {
13
13
  getWorkspaceManifestMarkers
14
- } from "./chunk-Z6BB4JLQ.js";
14
+ } from "./chunk-XVF2VVXP.js";
15
15
  import {
16
16
  normalizeMapKey
17
- } from "./chunk-G3RLJYA2.js";
17
+ } from "./chunk-N2H3ZPZY.js";
18
18
 
19
19
  // dist/clients/review-graph/workspace-modules.js
20
20
  import * as fs from "node:fs";
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __pilensCreateRequire } from "node:module"; const require = __pilensCreateRequire(import.meta.url);
2
2
  import {
3
3
  withTreeSitterRoot
4
- } from "./chunk-UEAHAMEI.js";
4
+ } from "./chunk-QHJ6DQ2R.js";
5
5
 
6
6
  // dist/clients/dispatch/facts/tree-sitter-facts.js
7
7
  var withFactTree = withTreeSitterRoot;