pybao-cli 1.3.99 → 1.4.1

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 (148) hide show
  1. package/dist/REPL-Z3D3ZOVM.js +47 -0
  2. package/dist/{acp-XZAGDT3N.js → acp-M3GSXRRC.js} +29 -29
  3. package/dist/{agentsValidate-ZPLW7S35.js → agentsValidate-PX5AJ4FC.js} +7 -7
  4. package/dist/{ask-ROXENA55.js → ask-37CWCVW6.js} +28 -28
  5. package/dist/{autoUpdater-NDX26QV7.js → autoUpdater-VUB6HNWM.js} +3 -3
  6. package/dist/{chunk-WWYDMHKU.js → chunk-2WNZXEFE.js} +1 -1
  7. package/dist/{chunk-Q6XLF2PE.js → chunk-36EBI3PQ.js} +1 -1
  8. package/dist/{chunk-B6YMKCYD.js → chunk-3BKFUR57.js} +2 -2
  9. package/dist/{chunk-ZI6CKPRG.js → chunk-4BFTFEM3.js} +3 -3
  10. package/dist/{chunk-X6KY4AMW.js → chunk-57Q3ZP7U.js} +2 -2
  11. package/dist/{chunk-QX6FKMRR.js → chunk-5EJPEYZ2.js} +3 -3
  12. package/dist/{chunk-5ON6SGBK.js → chunk-64G76BPT.js} +1 -1
  13. package/dist/chunk-64G76BPT.js.map +7 -0
  14. package/dist/{chunk-EY2TENGG.js → chunk-6B2G5ICD.js} +1 -1
  15. package/dist/{chunk-CMQGXFRW.js → chunk-6H4NS3GO.js} +1 -1
  16. package/dist/{chunk-CGHZ2VAY.js → chunk-722ZZLIW.js} +1 -1
  17. package/dist/{chunk-2WVYPGFK.js → chunk-7FDGHA2K.js} +2 -2
  18. package/dist/{chunk-M2J4YYEX.js → chunk-ASD2PHIF.js} +45 -39
  19. package/dist/chunk-ASD2PHIF.js.map +7 -0
  20. package/dist/{chunk-BXOS6YEB.js → chunk-AVRMBBQH.js} +3 -3
  21. package/dist/{chunk-2ULPCMQN.js → chunk-DKWODJQM.js} +2 -2
  22. package/dist/{chunk-VYINZ75I.js → chunk-E2G4KYB2.js} +42 -42
  23. package/dist/{chunk-VYINZ75I.js.map → chunk-E2G4KYB2.js.map} +2 -2
  24. package/dist/{chunk-JFW7GGFH.js → chunk-FYUOGONL.js} +4 -4
  25. package/dist/{chunk-3HVYGUQ7.js → chunk-G2QTU4OG.js} +3 -3
  26. package/dist/{chunk-XLOFU6ZK.js → chunk-GPJ5UE77.js} +1 -1
  27. package/dist/{chunk-W3RWB5JG.js → chunk-JYQC4K3I.js} +4 -4
  28. package/dist/{chunk-ZFDSP2ES.js → chunk-L43B7ONK.js} +2 -2
  29. package/dist/{chunk-44DDEUXT.js → chunk-M2JE445K.js} +17 -16
  30. package/dist/chunk-M2JE445K.js.map +7 -0
  31. package/dist/{chunk-4NRDC2MN.js → chunk-M3HVJL7H.js} +2 -2
  32. package/dist/{chunk-T4EFAH55.js → chunk-MMNBYN7E.js} +1 -1
  33. package/dist/{chunk-YOK3FML7.js → chunk-NP77UV44.js} +1 -1
  34. package/dist/{chunk-VWENSRU2.js → chunk-ONT7UN5M.js} +1 -1
  35. package/dist/{chunk-47PFBKB5.js → chunk-Q5NZGG44.js} +3 -3
  36. package/dist/{chunk-I23P7CAV.js → chunk-SAZNAJEA.js} +3 -3
  37. package/dist/{chunk-U5J6MTAO.js → chunk-SXLKMOH6.js} +2 -2
  38. package/dist/{chunk-L5MUGKPW.js → chunk-VIU6DKZG.js} +3 -3
  39. package/dist/{chunk-HN63ZGCX.js → chunk-WO6HDV7O.js} +4 -4
  40. package/dist/{cli-W6BTK6IG.js → cli-GW34G7XG.js} +87 -87
  41. package/dist/commands-ONV3QAJC.js +51 -0
  42. package/dist/{config-MJPE676F.js → config-JAQQ27Z4.js} +4 -4
  43. package/dist/{context-XLNMR7UJ.js → context-GM5VECAQ.js} +6 -6
  44. package/dist/{customCommands-NJWIPIRB.js → customCommands-W6TOMDLN.js} +4 -4
  45. package/dist/{env-UNJ7A6Y6.js → env-HHHWV4BO.js} +2 -2
  46. package/dist/{file-CYIU2LVL.js → file-QVRGVFBL.js} +4 -4
  47. package/dist/index.js +3 -3
  48. package/dist/{llm-XG5AIU4E.js → llm-WIAZO65F.js} +29 -29
  49. package/dist/{llmLazy-7HIZGF35.js → llmLazy-MXRZCEXO.js} +1 -1
  50. package/dist/{loader-3PAJ74VN.js → loader-AQTKZSPI.js} +4 -4
  51. package/dist/{lsp-S2GYO6LP.js → lsp-M4PH6EKL.js} +6 -6
  52. package/dist/{lspAnchor-VZAH2A7D.js → lspAnchor-TLT3J5BM.js} +6 -6
  53. package/dist/{mcp-36TM4EWY.js → mcp-2M6PUHGM.js} +7 -7
  54. package/dist/{mentionProcessor-YIBFG2BE.js → mentionProcessor-4STHFX5L.js} +5 -5
  55. package/dist/{messages-GMVNWQYB.js → messages-M3TA3VKB.js} +1 -1
  56. package/dist/{model-QA5R6ZTQ.js → model-JOMKXF77.js} +5 -5
  57. package/dist/{openai-AISJCDRB.js → openai-KTQ4TXYG.js} +5 -5
  58. package/dist/{outputStyles-UNF5PJDX.js → outputStyles-FFTLW5WH.js} +4 -4
  59. package/dist/{pluginRuntime-OPB7TGEW.js → pluginRuntime-OK6WBBQF.js} +6 -6
  60. package/dist/{pluginValidation-GNC62BIO.js → pluginValidation-GPPGTV2B.js} +6 -6
  61. package/dist/prompts-PZ322ECY.js +53 -0
  62. package/dist/{pybAgentSessionLoad-FZKVG353.js → pybAgentSessionLoad-B55SWHQT.js} +4 -4
  63. package/dist/{pybAgentSessionResume-HHSBJMUF.js → pybAgentSessionResume-D7NS46SD.js} +4 -4
  64. package/dist/{pybAgentStreamJsonSession-UZOLZ2EE.js → pybAgentStreamJsonSession-URWK4JGX.js} +1 -1
  65. package/dist/{pybHooks-BDHY2ZPR.js → pybHooks-IGWK5OCX.js} +4 -4
  66. package/dist/query-IPSKCJPA.js +55 -0
  67. package/dist/{registry-YC7VJDV4.js → registry-6MCQFR7S.js} +5 -5
  68. package/dist/{ripgrep-HXHIAV7L.js → ripgrep-X7YSMIHF.js} +3 -3
  69. package/dist/{skillMarketplace-4F6MUJZA.js → skillMarketplace-VRDNQ7CR.js} +3 -3
  70. package/dist/{state-BVQ44522.js → state-BBFVTOP2.js} +2 -2
  71. package/dist/{theme-VG4SDCTS.js → theme-2EYPAIUY.js} +5 -5
  72. package/dist/{toolPermissionSettings-V4VXC5RQ.js → toolPermissionSettings-5BJQPMCY.js} +6 -6
  73. package/dist/tools-L7MACRYV.js +52 -0
  74. package/dist/{userInput-4FUGSRKW.js → userInput-K4DFLTSL.js} +30 -30
  75. package/package.json +1 -1
  76. package/dist/REPL-35WMIAEP.js +0 -47
  77. package/dist/chunk-44DDEUXT.js.map +0 -7
  78. package/dist/chunk-5ON6SGBK.js.map +0 -7
  79. package/dist/chunk-M2J4YYEX.js.map +0 -7
  80. package/dist/commands-OGUECGBR.js +0 -51
  81. package/dist/prompts-H6FALR72.js +0 -53
  82. package/dist/query-XTV7VLUK.js +0 -55
  83. package/dist/tools-WZEQJIS5.js +0 -52
  84. /package/dist/{REPL-35WMIAEP.js.map → REPL-Z3D3ZOVM.js.map} +0 -0
  85. /package/dist/{acp-XZAGDT3N.js.map → acp-M3GSXRRC.js.map} +0 -0
  86. /package/dist/{agentsValidate-ZPLW7S35.js.map → agentsValidate-PX5AJ4FC.js.map} +0 -0
  87. /package/dist/{ask-ROXENA55.js.map → ask-37CWCVW6.js.map} +0 -0
  88. /package/dist/{autoUpdater-NDX26QV7.js.map → autoUpdater-VUB6HNWM.js.map} +0 -0
  89. /package/dist/{chunk-WWYDMHKU.js.map → chunk-2WNZXEFE.js.map} +0 -0
  90. /package/dist/{chunk-Q6XLF2PE.js.map → chunk-36EBI3PQ.js.map} +0 -0
  91. /package/dist/{chunk-B6YMKCYD.js.map → chunk-3BKFUR57.js.map} +0 -0
  92. /package/dist/{chunk-ZI6CKPRG.js.map → chunk-4BFTFEM3.js.map} +0 -0
  93. /package/dist/{chunk-X6KY4AMW.js.map → chunk-57Q3ZP7U.js.map} +0 -0
  94. /package/dist/{chunk-QX6FKMRR.js.map → chunk-5EJPEYZ2.js.map} +0 -0
  95. /package/dist/{chunk-EY2TENGG.js.map → chunk-6B2G5ICD.js.map} +0 -0
  96. /package/dist/{chunk-CMQGXFRW.js.map → chunk-6H4NS3GO.js.map} +0 -0
  97. /package/dist/{chunk-CGHZ2VAY.js.map → chunk-722ZZLIW.js.map} +0 -0
  98. /package/dist/{chunk-2WVYPGFK.js.map → chunk-7FDGHA2K.js.map} +0 -0
  99. /package/dist/{chunk-BXOS6YEB.js.map → chunk-AVRMBBQH.js.map} +0 -0
  100. /package/dist/{chunk-2ULPCMQN.js.map → chunk-DKWODJQM.js.map} +0 -0
  101. /package/dist/{chunk-JFW7GGFH.js.map → chunk-FYUOGONL.js.map} +0 -0
  102. /package/dist/{chunk-3HVYGUQ7.js.map → chunk-G2QTU4OG.js.map} +0 -0
  103. /package/dist/{chunk-XLOFU6ZK.js.map → chunk-GPJ5UE77.js.map} +0 -0
  104. /package/dist/{chunk-W3RWB5JG.js.map → chunk-JYQC4K3I.js.map} +0 -0
  105. /package/dist/{chunk-ZFDSP2ES.js.map → chunk-L43B7ONK.js.map} +0 -0
  106. /package/dist/{chunk-4NRDC2MN.js.map → chunk-M3HVJL7H.js.map} +0 -0
  107. /package/dist/{chunk-T4EFAH55.js.map → chunk-MMNBYN7E.js.map} +0 -0
  108. /package/dist/{chunk-YOK3FML7.js.map → chunk-NP77UV44.js.map} +0 -0
  109. /package/dist/{chunk-VWENSRU2.js.map → chunk-ONT7UN5M.js.map} +0 -0
  110. /package/dist/{chunk-47PFBKB5.js.map → chunk-Q5NZGG44.js.map} +0 -0
  111. /package/dist/{chunk-I23P7CAV.js.map → chunk-SAZNAJEA.js.map} +0 -0
  112. /package/dist/{chunk-U5J6MTAO.js.map → chunk-SXLKMOH6.js.map} +0 -0
  113. /package/dist/{chunk-L5MUGKPW.js.map → chunk-VIU6DKZG.js.map} +0 -0
  114. /package/dist/{chunk-HN63ZGCX.js.map → chunk-WO6HDV7O.js.map} +0 -0
  115. /package/dist/{cli-W6BTK6IG.js.map → cli-GW34G7XG.js.map} +0 -0
  116. /package/dist/{commands-OGUECGBR.js.map → commands-ONV3QAJC.js.map} +0 -0
  117. /package/dist/{config-MJPE676F.js.map → config-JAQQ27Z4.js.map} +0 -0
  118. /package/dist/{context-XLNMR7UJ.js.map → context-GM5VECAQ.js.map} +0 -0
  119. /package/dist/{customCommands-NJWIPIRB.js.map → customCommands-W6TOMDLN.js.map} +0 -0
  120. /package/dist/{env-UNJ7A6Y6.js.map → env-HHHWV4BO.js.map} +0 -0
  121. /package/dist/{file-CYIU2LVL.js.map → file-QVRGVFBL.js.map} +0 -0
  122. /package/dist/{llm-XG5AIU4E.js.map → llm-WIAZO65F.js.map} +0 -0
  123. /package/dist/{llmLazy-7HIZGF35.js.map → llmLazy-MXRZCEXO.js.map} +0 -0
  124. /package/dist/{loader-3PAJ74VN.js.map → loader-AQTKZSPI.js.map} +0 -0
  125. /package/dist/{lsp-S2GYO6LP.js.map → lsp-M4PH6EKL.js.map} +0 -0
  126. /package/dist/{lspAnchor-VZAH2A7D.js.map → lspAnchor-TLT3J5BM.js.map} +0 -0
  127. /package/dist/{mcp-36TM4EWY.js.map → mcp-2M6PUHGM.js.map} +0 -0
  128. /package/dist/{mentionProcessor-YIBFG2BE.js.map → mentionProcessor-4STHFX5L.js.map} +0 -0
  129. /package/dist/{messages-GMVNWQYB.js.map → messages-M3TA3VKB.js.map} +0 -0
  130. /package/dist/{model-QA5R6ZTQ.js.map → model-JOMKXF77.js.map} +0 -0
  131. /package/dist/{openai-AISJCDRB.js.map → openai-KTQ4TXYG.js.map} +0 -0
  132. /package/dist/{outputStyles-UNF5PJDX.js.map → outputStyles-FFTLW5WH.js.map} +0 -0
  133. /package/dist/{pluginRuntime-OPB7TGEW.js.map → pluginRuntime-OK6WBBQF.js.map} +0 -0
  134. /package/dist/{pluginValidation-GNC62BIO.js.map → pluginValidation-GPPGTV2B.js.map} +0 -0
  135. /package/dist/{prompts-H6FALR72.js.map → prompts-PZ322ECY.js.map} +0 -0
  136. /package/dist/{pybAgentSessionLoad-FZKVG353.js.map → pybAgentSessionLoad-B55SWHQT.js.map} +0 -0
  137. /package/dist/{pybAgentSessionResume-HHSBJMUF.js.map → pybAgentSessionResume-D7NS46SD.js.map} +0 -0
  138. /package/dist/{pybAgentStreamJsonSession-UZOLZ2EE.js.map → pybAgentStreamJsonSession-URWK4JGX.js.map} +0 -0
  139. /package/dist/{pybHooks-BDHY2ZPR.js.map → pybHooks-IGWK5OCX.js.map} +0 -0
  140. /package/dist/{query-XTV7VLUK.js.map → query-IPSKCJPA.js.map} +0 -0
  141. /package/dist/{registry-YC7VJDV4.js.map → registry-6MCQFR7S.js.map} +0 -0
  142. /package/dist/{ripgrep-HXHIAV7L.js.map → ripgrep-X7YSMIHF.js.map} +0 -0
  143. /package/dist/{skillMarketplace-4F6MUJZA.js.map → skillMarketplace-VRDNQ7CR.js.map} +0 -0
  144. /package/dist/{state-BVQ44522.js.map → state-BBFVTOP2.js.map} +0 -0
  145. /package/dist/{theme-VG4SDCTS.js.map → theme-2EYPAIUY.js.map} +0 -0
  146. /package/dist/{toolPermissionSettings-V4VXC5RQ.js.map → toolPermissionSettings-5BJQPMCY.js.map} +0 -0
  147. /package/dist/{tools-WZEQJIS5.js.map → tools-L7MACRYV.js.map} +0 -0
  148. /package/dist/{userInput-4FUGSRKW.js.map → userInput-K4DFLTSL.js.map} +0 -0
@@ -2,13 +2,13 @@ import { createRequire as __pybCreateRequire } from "node:module";
2
2
  const require = __pybCreateRequire(import.meta.url);
3
3
  import {
4
4
  MarketplaceManifestSchema
5
- } from "./chunk-XLOFU6ZK.js";
5
+ } from "./chunk-GPJ5UE77.js";
6
6
  import {
7
7
  parseFrontmatter
8
- } from "./chunk-B6YMKCYD.js";
8
+ } from "./chunk-3BKFUR57.js";
9
9
  import {
10
10
  getCwd
11
- } from "./chunk-CMQGXFRW.js";
11
+ } from "./chunk-6H4NS3GO.js";
12
12
 
13
13
  // src/services/plugins/pluginValidation.ts
14
14
  import { existsSync, lstatSync, readFileSync } from "node:fs";
@@ -6,11 +6,11 @@ import {
6
6
  } from "./chunk-ERMQRV55.js";
7
7
  import {
8
8
  debug
9
- } from "./chunk-T4EFAH55.js";
9
+ } from "./chunk-MMNBYN7E.js";
10
10
  import {
11
11
  logError,
12
12
  resolveXdgDataPath
13
- } from "./chunk-CMQGXFRW.js";
13
+ } from "./chunk-6H4NS3GO.js";
14
14
 
15
15
  // src/utils/agent/storage.ts
16
16
  import { existsSync, readFileSync, writeFileSync, mkdirSync } from "fs";
@@ -4,13 +4,13 @@ import {
4
4
  LspServerRegistry,
5
5
  findNearestRoot,
6
6
  getInstallNotices
7
- } from "./chunk-QX6FKMRR.js";
7
+ } from "./chunk-5EJPEYZ2.js";
8
8
  import {
9
9
  levenshtein
10
10
  } from "./chunk-UZ34JEUK.js";
11
11
  import {
12
12
  getCwd
13
- } from "./chunk-CMQGXFRW.js";
13
+ } from "./chunk-6H4NS3GO.js";
14
14
 
15
15
  // src/lsp/index.ts
16
16
  import { extname as extname2 } from "path";
@@ -531,7 +531,7 @@ var LspClientManager = class _LspClientManager {
531
531
  const safeCwd = /[^\x00-\x7F]/.test(resolvedRoot) ? process.cwd() : resolvedRoot;
532
532
  let initOpts = serverInfo.initializationOptions;
533
533
  if (serverInfo.id === "pyright" || serverInfo.id === "ty") {
534
- const { detectPythonVenv } = await import("./registry-YC7VJDV4.js");
534
+ const { detectPythonVenv } = await import("./registry-6MCQFR7S.js");
535
535
  const pythonPath = detectPythonVenv(resolvedRoot);
536
536
  if (pythonPath) {
537
537
  initOpts = { ...initOpts ?? {}, pythonPath };
@@ -1613,6 +1613,40 @@ function extractCaptureCounts(source) {
1613
1613
  function isValidQueryFileName(name) {
1614
1614
  return /^[a-z0-9_-]+\.scm$/i.test(name);
1615
1615
  }
1616
+ function validateQueryEntries(entries) {
1617
+ const errors = [];
1618
+ const invalidEntries = [];
1619
+ const queries = [];
1620
+ for (const entry of entries) {
1621
+ if (entry.isDirectory()) {
1622
+ invalidEntries.push(entry.name);
1623
+ errors.push(`invalid_directory:${entry.name}`);
1624
+ continue;
1625
+ }
1626
+ if (!entry.isFile()) {
1627
+ invalidEntries.push(entry.name);
1628
+ errors.push(`invalid_entry:${entry.name}`);
1629
+ continue;
1630
+ }
1631
+ if (!entry.name.endsWith(".scm")) {
1632
+ invalidEntries.push(entry.name);
1633
+ errors.push(`invalid_extension:${entry.name}`);
1634
+ continue;
1635
+ }
1636
+ if (!isValidQueryFileName(entry.name)) {
1637
+ invalidEntries.push(entry.name);
1638
+ errors.push(`invalid_name:${entry.name}`);
1639
+ continue;
1640
+ }
1641
+ queries.push(entry.name.replace(/\.scm$/, ""));
1642
+ }
1643
+ return {
1644
+ valid: errors.length === 0,
1645
+ errors,
1646
+ queries: queries.sort(),
1647
+ invalidEntries
1648
+ };
1649
+ }
1616
1650
  var QueryRegistry = class {
1617
1651
  static async getQuerySource(langKey, queryName) {
1618
1652
  const key = getSourceCacheKey(langKey, queryName);
@@ -1665,40 +1699,9 @@ var QueryRegistry = class {
1665
1699
  static async validateQueryLayout(langKey) {
1666
1700
  const normalized = normalizeLanguage(langKey);
1667
1701
  const dir = getQueryDir(normalized);
1668
- const errors = [];
1669
- const invalidEntries = [];
1670
- const queries = [];
1671
1702
  try {
1672
1703
  const entries = await readdir2(dir, { withFileTypes: true });
1673
- for (const entry of entries) {
1674
- if (entry.isDirectory()) {
1675
- invalidEntries.push(entry.name);
1676
- errors.push(`invalid_directory:${entry.name}`);
1677
- continue;
1678
- }
1679
- if (!entry.isFile()) {
1680
- invalidEntries.push(entry.name);
1681
- errors.push(`invalid_entry:${entry.name}`);
1682
- continue;
1683
- }
1684
- if (!entry.name.endsWith(".scm")) {
1685
- invalidEntries.push(entry.name);
1686
- errors.push(`invalid_extension:${entry.name}`);
1687
- continue;
1688
- }
1689
- if (!isValidQueryFileName(entry.name)) {
1690
- invalidEntries.push(entry.name);
1691
- errors.push(`invalid_name:${entry.name}`);
1692
- continue;
1693
- }
1694
- queries.push(entry.name.replace(/\.scm$/, ""));
1695
- }
1696
- return {
1697
- valid: errors.length === 0,
1698
- errors,
1699
- queries: queries.sort(),
1700
- invalidEntries
1701
- };
1704
+ return validateQueryEntries(entries);
1702
1705
  } catch (error) {
1703
1706
  const message = error instanceof Error ? error.message : String(error);
1704
1707
  return {
@@ -1885,10 +1888,7 @@ async function parseWithUnified(langId, code, filePath, now, preferIncremental)
1885
1888
  }
1886
1889
  return tree;
1887
1890
  }
1888
- async function parseWithCache(langId, code, filePath, now = Date.now()) {
1889
- return parseWithUnified(langId, code, filePath, now, false);
1890
- }
1891
- async function parseWithIncremental(langId, code, filePath, now = Date.now()) {
1891
+ async function parseWithSharedCache(langId, code, filePath, now = Date.now()) {
1892
1892
  return parseWithUnified(langId, code, filePath, now, true);
1893
1893
  }
1894
1894
  function getParseCacheMetrics() {
@@ -1941,7 +1941,7 @@ var TreeSitterLspAdapter = class {
1941
1941
  }
1942
1942
  try {
1943
1943
  const content = await readFile3(filePath, "utf-8");
1944
- const tree = await parseWithIncremental(langId, content, filePath);
1944
+ const tree = await parseWithSharedCache(langId, content, filePath);
1945
1945
  const mode = this.resolveSymbolMode(options);
1946
1946
  const queryName = options?.queryName ?? "symbols";
1947
1947
  const traversalSymbols = collectSymbolsFromNode(tree.rootNode);
@@ -1984,7 +1984,7 @@ var TreeSitterLspAdapter = class {
1984
1984
  return { traversal: [], query: [], missingInQuery: [], extraInQuery: [] };
1985
1985
  }
1986
1986
  const content = await readFile3(filePath, "utf-8");
1987
- const tree = await parseWithIncremental(langId, content, filePath);
1987
+ const tree = await parseWithSharedCache(langId, content, filePath);
1988
1988
  const traversal = collectSymbolsFromNode(tree.rootNode);
1989
1989
  const queryName = options?.queryName ?? "symbols";
1990
1990
  const query = await this.collectSymbolsViaQuery(tree.rootNode, langId, queryName);
@@ -2218,7 +2218,7 @@ var ScopeAnalyzer = class {
2218
2218
  const cached = getCachedScope(cacheKey, now);
2219
2219
  if (cached) return cached;
2220
2220
  const parser = await loadLanguage(langKey);
2221
- const tree = await parseWithCache(langKey, code, filename, now);
2221
+ const tree = await parseWithSharedCache(langKey, code, filename, now);
2222
2222
  const node = tree.rootNode.descendantForPosition(position);
2223
2223
  const ancestors = [];
2224
2224
  let current = node;