pybao-cli 1.4.12 → 1.4.13
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.
- package/dist/REPL-634DFL57.js +47 -0
- package/dist/{acp-E4XDOLNC.js → acp-AITGGIN7.js} +29 -29
- package/dist/{agentsValidate-GZPJASIL.js → agentsValidate-K3GLHEUJ.js} +7 -7
- package/dist/{ask-BQDZUSJ4.js → ask-XRAJ7ONM.js} +28 -28
- package/dist/{autoUpdater-XGGEYCZS.js → autoUpdater-2YW234FZ.js} +3 -3
- package/dist/{chunk-EOQY6JTU.js → chunk-2PC7UK66.js} +3 -3
- package/dist/{chunk-WLWHTU5X.js → chunk-34XEWGUY.js} +1 -1
- package/dist/{chunk-PFJM7WWU.js → chunk-5WXWY6LV.js} +70 -3
- package/dist/chunk-5WXWY6LV.js.map +7 -0
- package/dist/{chunk-EQ3NKY3J.js → chunk-6OP2JTUK.js} +1 -1
- package/dist/{chunk-EQ3NKY3J.js.map → chunk-6OP2JTUK.js.map} +1 -1
- package/dist/{chunk-2W64YTNU.js → chunk-BTS2TAAW.js} +4 -4
- package/dist/{chunk-B52OTXX2.js → chunk-CFTVDXFH.js} +3 -3
- package/dist/{chunk-2OQCOHOW.js → chunk-CPE4NPQV.js} +2 -2
- package/dist/{chunk-EN7KWHEK.js → chunk-CVJLF2VG.js} +108 -17
- package/dist/chunk-CVJLF2VG.js.map +7 -0
- package/dist/{chunk-BGY75RH7.js → chunk-CXT225X7.js} +2 -2
- package/dist/{chunk-M5YAPELI.js → chunk-FMH4U7NO.js} +1 -1
- package/dist/{chunk-H3YIL7ZG.js → chunk-FT5UM6YL.js} +1 -1
- package/dist/{chunk-VUMOG2FB.js → chunk-HCN7LMEB.js} +1 -1
- package/dist/{chunk-GCFCZ24S.js → chunk-M7QSGOTT.js} +1 -1
- package/dist/{chunk-HS6N2642.js → chunk-NG5RU74R.js} +4 -4
- package/dist/{chunk-2ADSIWFE.js → chunk-O5PGBSLH.js} +2 -2
- package/dist/{chunk-QJN4JAVY.js → chunk-OOTTUF6Z.js} +1 -1
- package/dist/{chunk-NGE3FFL4.js → chunk-OX4Q6Z5R.js} +3 -3
- package/dist/{chunk-AI77W7AH.js → chunk-P7MPKAPW.js} +1 -1
- package/dist/{chunk-KNVKVAFM.js → chunk-PHKBTCLT.js} +2 -2
- package/dist/{chunk-OYQOUTXM.js → chunk-QKB32NDM.js} +2 -2
- package/dist/{chunk-HBW2UFW3.js → chunk-RHY3RRE6.js} +2 -2
- package/dist/{chunk-HBGSB66X.js → chunk-S45DDLGG.js} +3 -3
- package/dist/{chunk-J7QJQFL4.js → chunk-TWPWHWJT.js} +4 -4
- package/dist/{chunk-XHPE7NA6.js → chunk-UDNZNXXR.js} +3 -3
- package/dist/{chunk-IBX7QYW6.js → chunk-V337ZSSD.js} +140 -35
- package/dist/{chunk-IBX7QYW6.js.map → chunk-V337ZSSD.js.map} +3 -3
- package/dist/{chunk-FS7A5V53.js → chunk-VFAFA24S.js} +3 -3
- package/dist/{chunk-N7F2AWKM.js → chunk-VGDDQSCO.js} +1 -1
- package/dist/{chunk-F2DJ35GI.js → chunk-XJZQD7RE.js} +17 -17
- package/dist/{chunk-F2DJ35GI.js.map → chunk-XJZQD7RE.js.map} +1 -1
- package/dist/{chunk-O3KEVQNA.js → chunk-Y3UMGUVE.js} +1 -1
- package/dist/{chunk-JL3VTRTU.js → chunk-ZOM357PV.js} +2 -2
- package/dist/{cli-IIMBFGDW.js → cli-MXO677IA.js} +87 -87
- package/dist/commands-Q5LUFGJ5.js +51 -0
- package/dist/{config-FTVECYMO.js → config-YFZ2WAYP.js} +4 -4
- package/dist/{context-NDUX3ORF.js → context-OOIFZD5B.js} +6 -6
- package/dist/{customCommands-GR6WWVJY.js → customCommands-C5UREHC4.js} +4 -4
- package/dist/{env-PTS2KGBD.js → env-LQJ2XZDO.js} +2 -2
- package/dist/{file-5WKQ32ID.js → file-ZBIAG7X4.js} +4 -4
- package/dist/index.js +3 -3
- package/dist/{llm-XJH5PF7T.js → llm-RCNWJH2C.js} +29 -29
- package/dist/{llmLazy-AQ7NCFL2.js → llmLazy-KXJFFPMF.js} +1 -1
- package/dist/{loader-PO73B3AB.js → loader-ENRLCLHZ.js} +4 -4
- package/dist/{lsp-IZXFXACE.js → lsp-VWL3PVQJ.js} +6 -6
- package/dist/{lspAnchor-IQFSS2WW.js → lspAnchor-WPJIG2RI.js} +6 -6
- package/dist/{mcp-S3EXRZWS.js → mcp-P5T4TUW2.js} +7 -7
- package/dist/{mentionProcessor-UY2IW2RP.js → mentionProcessor-4ICD3GVH.js} +5 -5
- package/dist/{messages-KCJBNPPP.js → messages-SEOXF7DS.js} +1 -1
- package/dist/{model-57SVT5TP.js → model-YOPR5KUS.js} +5 -5
- package/dist/{openai-RUM2XGGO.js → openai-FVFZDXPS.js} +5 -5
- package/dist/{outputStyles-V7QYGZHM.js → outputStyles-7ZZ2JBOT.js} +4 -4
- package/dist/{pluginRuntime-55XGU4OS.js → pluginRuntime-LASQNLIR.js} +6 -6
- package/dist/{pluginValidation-ICH7XE5C.js → pluginValidation-4BABNGAC.js} +6 -6
- package/dist/prompts-DJNSFFKV.js +53 -0
- package/dist/{pybAgentSessionLoad-3NWDY4SQ.js → pybAgentSessionLoad-O7V7I7CV.js} +4 -4
- package/dist/{pybAgentSessionResume-XJJ6DMEL.js → pybAgentSessionResume-Q7EYAD6H.js} +4 -4
- package/dist/{pybAgentStreamJsonSession-FOVNGGFA.js → pybAgentStreamJsonSession-N374RMH5.js} +1 -1
- package/dist/{pybHooks-ACAEY3WY.js → pybHooks-MHFEMZC6.js} +4 -4
- package/dist/query-LAUPI7JK.js +55 -0
- package/dist/{registry-KD75EMVF.js → registry-KVMGHJ4N.js} +5 -5
- package/dist/{ripgrep-6YHO2NBP.js → ripgrep-XSJJZ3W3.js} +3 -3
- package/dist/{skillMarketplace-VH7FHRA4.js → skillMarketplace-FL7XBTHJ.js} +3 -3
- package/dist/{state-Z24WIC3H.js → state-5NJOFKYB.js} +2 -2
- package/dist/{theme-3K7DL646.js → theme-Z26AKEVC.js} +5 -5
- package/dist/{toolPermissionSettings-7V3HRK2G.js → toolPermissionSettings-SPSMAX5P.js} +6 -6
- package/dist/tools-Q44D6ZG7.js +52 -0
- package/dist/{userInput-KJC6X5WI.js → userInput-3TEMRAK7.js} +30 -30
- package/package.json +1 -1
- package/dist/REPL-IXJZCNDW.js +0 -47
- package/dist/chunk-EN7KWHEK.js.map +0 -7
- package/dist/chunk-PFJM7WWU.js.map +0 -7
- package/dist/commands-WZNPO2DW.js +0 -51
- package/dist/prompts-UNCTPPON.js +0 -53
- package/dist/query-DNXATEQW.js +0 -55
- package/dist/tools-TBUVJIUV.js +0 -52
- /package/dist/{REPL-IXJZCNDW.js.map → REPL-634DFL57.js.map} +0 -0
- /package/dist/{acp-E4XDOLNC.js.map → acp-AITGGIN7.js.map} +0 -0
- /package/dist/{agentsValidate-GZPJASIL.js.map → agentsValidate-K3GLHEUJ.js.map} +0 -0
- /package/dist/{ask-BQDZUSJ4.js.map → ask-XRAJ7ONM.js.map} +0 -0
- /package/dist/{autoUpdater-XGGEYCZS.js.map → autoUpdater-2YW234FZ.js.map} +0 -0
- /package/dist/{chunk-EOQY6JTU.js.map → chunk-2PC7UK66.js.map} +0 -0
- /package/dist/{chunk-WLWHTU5X.js.map → chunk-34XEWGUY.js.map} +0 -0
- /package/dist/{chunk-2W64YTNU.js.map → chunk-BTS2TAAW.js.map} +0 -0
- /package/dist/{chunk-B52OTXX2.js.map → chunk-CFTVDXFH.js.map} +0 -0
- /package/dist/{chunk-2OQCOHOW.js.map → chunk-CPE4NPQV.js.map} +0 -0
- /package/dist/{chunk-BGY75RH7.js.map → chunk-CXT225X7.js.map} +0 -0
- /package/dist/{chunk-M5YAPELI.js.map → chunk-FMH4U7NO.js.map} +0 -0
- /package/dist/{chunk-H3YIL7ZG.js.map → chunk-FT5UM6YL.js.map} +0 -0
- /package/dist/{chunk-VUMOG2FB.js.map → chunk-HCN7LMEB.js.map} +0 -0
- /package/dist/{chunk-GCFCZ24S.js.map → chunk-M7QSGOTT.js.map} +0 -0
- /package/dist/{chunk-HS6N2642.js.map → chunk-NG5RU74R.js.map} +0 -0
- /package/dist/{chunk-2ADSIWFE.js.map → chunk-O5PGBSLH.js.map} +0 -0
- /package/dist/{chunk-QJN4JAVY.js.map → chunk-OOTTUF6Z.js.map} +0 -0
- /package/dist/{chunk-NGE3FFL4.js.map → chunk-OX4Q6Z5R.js.map} +0 -0
- /package/dist/{chunk-AI77W7AH.js.map → chunk-P7MPKAPW.js.map} +0 -0
- /package/dist/{chunk-KNVKVAFM.js.map → chunk-PHKBTCLT.js.map} +0 -0
- /package/dist/{chunk-OYQOUTXM.js.map → chunk-QKB32NDM.js.map} +0 -0
- /package/dist/{chunk-HBW2UFW3.js.map → chunk-RHY3RRE6.js.map} +0 -0
- /package/dist/{chunk-HBGSB66X.js.map → chunk-S45DDLGG.js.map} +0 -0
- /package/dist/{chunk-J7QJQFL4.js.map → chunk-TWPWHWJT.js.map} +0 -0
- /package/dist/{chunk-XHPE7NA6.js.map → chunk-UDNZNXXR.js.map} +0 -0
- /package/dist/{chunk-FS7A5V53.js.map → chunk-VFAFA24S.js.map} +0 -0
- /package/dist/{chunk-N7F2AWKM.js.map → chunk-VGDDQSCO.js.map} +0 -0
- /package/dist/{chunk-O3KEVQNA.js.map → chunk-Y3UMGUVE.js.map} +0 -0
- /package/dist/{chunk-JL3VTRTU.js.map → chunk-ZOM357PV.js.map} +0 -0
- /package/dist/{cli-IIMBFGDW.js.map → cli-MXO677IA.js.map} +0 -0
- /package/dist/{commands-WZNPO2DW.js.map → commands-Q5LUFGJ5.js.map} +0 -0
- /package/dist/{config-FTVECYMO.js.map → config-YFZ2WAYP.js.map} +0 -0
- /package/dist/{context-NDUX3ORF.js.map → context-OOIFZD5B.js.map} +0 -0
- /package/dist/{customCommands-GR6WWVJY.js.map → customCommands-C5UREHC4.js.map} +0 -0
- /package/dist/{env-PTS2KGBD.js.map → env-LQJ2XZDO.js.map} +0 -0
- /package/dist/{file-5WKQ32ID.js.map → file-ZBIAG7X4.js.map} +0 -0
- /package/dist/{llm-XJH5PF7T.js.map → llm-RCNWJH2C.js.map} +0 -0
- /package/dist/{llmLazy-AQ7NCFL2.js.map → llmLazy-KXJFFPMF.js.map} +0 -0
- /package/dist/{loader-PO73B3AB.js.map → loader-ENRLCLHZ.js.map} +0 -0
- /package/dist/{lsp-IZXFXACE.js.map → lsp-VWL3PVQJ.js.map} +0 -0
- /package/dist/{lspAnchor-IQFSS2WW.js.map → lspAnchor-WPJIG2RI.js.map} +0 -0
- /package/dist/{mcp-S3EXRZWS.js.map → mcp-P5T4TUW2.js.map} +0 -0
- /package/dist/{mentionProcessor-UY2IW2RP.js.map → mentionProcessor-4ICD3GVH.js.map} +0 -0
- /package/dist/{messages-KCJBNPPP.js.map → messages-SEOXF7DS.js.map} +0 -0
- /package/dist/{model-57SVT5TP.js.map → model-YOPR5KUS.js.map} +0 -0
- /package/dist/{openai-RUM2XGGO.js.map → openai-FVFZDXPS.js.map} +0 -0
- /package/dist/{outputStyles-V7QYGZHM.js.map → outputStyles-7ZZ2JBOT.js.map} +0 -0
- /package/dist/{pluginRuntime-55XGU4OS.js.map → pluginRuntime-LASQNLIR.js.map} +0 -0
- /package/dist/{pluginValidation-ICH7XE5C.js.map → pluginValidation-4BABNGAC.js.map} +0 -0
- /package/dist/{prompts-UNCTPPON.js.map → prompts-DJNSFFKV.js.map} +0 -0
- /package/dist/{pybAgentSessionLoad-3NWDY4SQ.js.map → pybAgentSessionLoad-O7V7I7CV.js.map} +0 -0
- /package/dist/{pybAgentSessionResume-XJJ6DMEL.js.map → pybAgentSessionResume-Q7EYAD6H.js.map} +0 -0
- /package/dist/{pybAgentStreamJsonSession-FOVNGGFA.js.map → pybAgentStreamJsonSession-N374RMH5.js.map} +0 -0
- /package/dist/{pybHooks-ACAEY3WY.js.map → pybHooks-MHFEMZC6.js.map} +0 -0
- /package/dist/{query-DNXATEQW.js.map → query-LAUPI7JK.js.map} +0 -0
- /package/dist/{registry-KD75EMVF.js.map → registry-KVMGHJ4N.js.map} +0 -0
- /package/dist/{ripgrep-6YHO2NBP.js.map → ripgrep-XSJJZ3W3.js.map} +0 -0
- /package/dist/{skillMarketplace-VH7FHRA4.js.map → skillMarketplace-FL7XBTHJ.js.map} +0 -0
- /package/dist/{state-Z24WIC3H.js.map → state-5NJOFKYB.js.map} +0 -0
- /package/dist/{theme-3K7DL646.js.map → theme-Z26AKEVC.js.map} +0 -0
- /package/dist/{toolPermissionSettings-7V3HRK2G.js.map → toolPermissionSettings-SPSMAX5P.js.map} +0 -0
- /package/dist/{tools-TBUVJIUV.js.map → tools-Q44D6ZG7.js.map} +0 -0
- /package/dist/{userInput-KJC6X5WI.js.map → userInput-3TEMRAK7.js.map} +0 -0
|
@@ -4,16 +4,16 @@ import {
|
|
|
4
4
|
LspServerRegistry,
|
|
5
5
|
findNearestRoot,
|
|
6
6
|
getInstallNotices
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-5WXWY6LV.js";
|
|
8
8
|
import {
|
|
9
9
|
levenshtein
|
|
10
10
|
} from "./chunk-UZ34JEUK.js";
|
|
11
11
|
import {
|
|
12
12
|
debug
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-VGDDQSCO.js";
|
|
14
14
|
import {
|
|
15
15
|
getCwd
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-P7MPKAPW.js";
|
|
17
17
|
|
|
18
18
|
// src/lsp/index.ts
|
|
19
19
|
import { extname as extname2 } from "path";
|
|
@@ -534,7 +534,7 @@ var LspClientManager = class _LspClientManager {
|
|
|
534
534
|
const safeCwd = /[^\x00-\x7F]/.test(resolvedRoot) ? process.cwd() : resolvedRoot;
|
|
535
535
|
let initOpts = serverInfo.initializationOptions;
|
|
536
536
|
if (serverInfo.id === "pyright" || serverInfo.id === "ty") {
|
|
537
|
-
const { detectPythonVenv } = await import("./registry-
|
|
537
|
+
const { detectPythonVenv } = await import("./registry-KVMGHJ4N.js");
|
|
538
538
|
const pythonPath = detectPythonVenv(resolvedRoot);
|
|
539
539
|
if (pythonPath) {
|
|
540
540
|
initOpts = { ...initOpts ?? {}, pythonPath };
|
|
@@ -2487,6 +2487,10 @@ ${truncationLine}` : parts.join("\n");
|
|
|
2487
2487
|
fileCount: 1
|
|
2488
2488
|
};
|
|
2489
2489
|
}
|
|
2490
|
+
function formatFallbackNotice(operation, reason, capability, detail) {
|
|
2491
|
+
const base = `Fallback ${operation} (reason: ${reason}, capability: ${capability})`;
|
|
2492
|
+
return detail ? `${base} ${detail}` : base;
|
|
2493
|
+
}
|
|
2490
2494
|
var fastPathFailures = /* @__PURE__ */ new Map();
|
|
2491
2495
|
var fastPathLastFallbackReason = /* @__PURE__ */ new Map();
|
|
2492
2496
|
var fastPathHealth = /* @__PURE__ */ new Map();
|
|
@@ -3180,22 +3184,33 @@ var LspAPI = {
|
|
|
3180
3184
|
recordFailure(input.operation, "unavailable");
|
|
3181
3185
|
if (LSP_FALLBACK_BOUNDARY.has(fallbackOperation)) {
|
|
3182
3186
|
const lang = ParserRegistry.getLanguage(input.filePath);
|
|
3187
|
+
const fallbackReason = lang ? "lsp-unavailable" : "unsupported";
|
|
3183
3188
|
if (!lang) {
|
|
3184
|
-
recordOperationFallback(fallbackOperation, input.filePath,
|
|
3189
|
+
recordOperationFallback(fallbackOperation, input.filePath, fallbackReason);
|
|
3185
3190
|
} else {
|
|
3186
|
-
recordOperationFallback(fallbackOperation, input.filePath,
|
|
3191
|
+
recordOperationFallback(fallbackOperation, input.filePath, fallbackReason);
|
|
3187
3192
|
if (fallbackOperation === "diagnostics") {
|
|
3188
3193
|
try {
|
|
3189
3194
|
const diagnostics = await getTreeSitterDiagnostics(input.filePath);
|
|
3190
3195
|
const formatted = formatGenericDiagnosticsResult(diagnostics);
|
|
3191
3196
|
return {
|
|
3192
|
-
formatted:
|
|
3197
|
+
formatted: formatFallbackNotice(
|
|
3198
|
+
"diagnostics",
|
|
3199
|
+
fallbackReason,
|
|
3200
|
+
"tree-sitter diagnostics",
|
|
3201
|
+
formatted.formatted
|
|
3202
|
+
),
|
|
3193
3203
|
resultCount: formatted.resultCount,
|
|
3194
3204
|
fileCount: formatted.fileCount
|
|
3195
3205
|
};
|
|
3196
3206
|
} catch {
|
|
3197
3207
|
return {
|
|
3198
|
-
formatted:
|
|
3208
|
+
formatted: formatFallbackNotice(
|
|
3209
|
+
"diagnostics",
|
|
3210
|
+
fallbackReason,
|
|
3211
|
+
"none",
|
|
3212
|
+
`LSP unavailable for ${ext}. Static analysis not available.`
|
|
3213
|
+
),
|
|
3199
3214
|
resultCount: 0,
|
|
3200
3215
|
fileCount: 0
|
|
3201
3216
|
};
|
|
@@ -3224,7 +3239,12 @@ var LspAPI = {
|
|
|
3224
3239
|
if (refs.length > 0) {
|
|
3225
3240
|
const formatted = formatGenericReferencesResult(refs);
|
|
3226
3241
|
return {
|
|
3227
|
-
formatted:
|
|
3242
|
+
formatted: formatFallbackNotice(
|
|
3243
|
+
"findReferences",
|
|
3244
|
+
fallbackReason,
|
|
3245
|
+
"token scan",
|
|
3246
|
+
formatted.formatted
|
|
3247
|
+
),
|
|
3228
3248
|
resultCount: formatted.resultCount,
|
|
3229
3249
|
fileCount: formatted.fileCount
|
|
3230
3250
|
};
|
|
@@ -3234,7 +3254,12 @@ var LspAPI = {
|
|
|
3234
3254
|
}
|
|
3235
3255
|
}
|
|
3236
3256
|
return {
|
|
3237
|
-
formatted:
|
|
3257
|
+
formatted: formatFallbackNotice(
|
|
3258
|
+
"findReferences",
|
|
3259
|
+
fallbackReason,
|
|
3260
|
+
"token scan",
|
|
3261
|
+
`LSP unavailable for ${ext}. Returning 0 references.`
|
|
3262
|
+
),
|
|
3238
3263
|
resultCount: 0,
|
|
3239
3264
|
fileCount: 0
|
|
3240
3265
|
};
|
|
@@ -3258,7 +3283,12 @@ var LspAPI = {
|
|
|
3258
3283
|
};
|
|
3259
3284
|
const formatted = formatGenericCallHierarchyItemsResult([item]);
|
|
3260
3285
|
return {
|
|
3261
|
-
formatted:
|
|
3286
|
+
formatted: formatFallbackNotice(
|
|
3287
|
+
"prepareCallHierarchy",
|
|
3288
|
+
fallbackReason,
|
|
3289
|
+
"tree-sitter symbols",
|
|
3290
|
+
formatted.formatted
|
|
3291
|
+
),
|
|
3262
3292
|
resultCount: formatted.resultCount,
|
|
3263
3293
|
fileCount: formatted.fileCount
|
|
3264
3294
|
};
|
|
@@ -3267,14 +3297,24 @@ var LspAPI = {
|
|
|
3267
3297
|
}
|
|
3268
3298
|
}
|
|
3269
3299
|
return {
|
|
3270
|
-
formatted:
|
|
3300
|
+
formatted: formatFallbackNotice(
|
|
3301
|
+
"prepareCallHierarchy",
|
|
3302
|
+
fallbackReason,
|
|
3303
|
+
"tree-sitter symbols",
|
|
3304
|
+
`LSP unavailable for ${ext}. Returning 0 items.`
|
|
3305
|
+
),
|
|
3271
3306
|
resultCount: 0,
|
|
3272
3307
|
fileCount: 0
|
|
3273
3308
|
};
|
|
3274
3309
|
}
|
|
3275
3310
|
if (fallbackOperation === "incomingCalls" || fallbackOperation === "outgoingCalls") {
|
|
3276
3311
|
return {
|
|
3277
|
-
formatted:
|
|
3312
|
+
formatted: formatFallbackNotice(
|
|
3313
|
+
fallbackOperation,
|
|
3314
|
+
fallbackReason,
|
|
3315
|
+
"none",
|
|
3316
|
+
`LSP unavailable for ${ext}. Returning 0 items.`
|
|
3317
|
+
),
|
|
3278
3318
|
resultCount: 0,
|
|
3279
3319
|
fileCount: 0
|
|
3280
3320
|
};
|
|
@@ -3379,6 +3419,7 @@ var LspFacade = {
|
|
|
3379
3419
|
const flag = String(process.env.PYB_LSP_STRICT_FIRST ?? "").trim().toLowerCase();
|
|
3380
3420
|
const lspFirst = flag === "" ? true : !(flag === "0" || flag === "false" || flag === "off" || flag === "no");
|
|
3381
3421
|
if (lspFirst) {
|
|
3422
|
+
let fallbackReason = null;
|
|
3382
3423
|
try {
|
|
3383
3424
|
const lspSymbols = await LspAPI.documentSymbolRaw(input.filePath, rootPath);
|
|
3384
3425
|
const lang = ParserRegistry.getLanguage(input.filePath);
|
|
@@ -3389,6 +3430,7 @@ var LspFacade = {
|
|
|
3389
3430
|
if (lspSymbols && Array.isArray(lspSymbols) && lspSymbols.length > 0) {
|
|
3390
3431
|
return formatGenericDocumentSymbolResult(lspSymbols);
|
|
3391
3432
|
}
|
|
3433
|
+
fallbackReason = lspSymbols === null ? "lsp-unavailable" : "lsp-empty";
|
|
3392
3434
|
const now = Date.now();
|
|
3393
3435
|
if (!lang) {
|
|
3394
3436
|
setFastPathLastFallback(input.filePath, "unsupported", now);
|
|
@@ -3408,7 +3450,19 @@ var LspFacade = {
|
|
|
3408
3450
|
if (cached) {
|
|
3409
3451
|
clearFastPathFailures(input.filePath);
|
|
3410
3452
|
recordFastPathSuccess(input.filePath, Date.now() - start, Date.now());
|
|
3411
|
-
|
|
3453
|
+
const formatted = formatTreeSitterDocumentSymbolResult(cached);
|
|
3454
|
+
if (fallbackReason) {
|
|
3455
|
+
return {
|
|
3456
|
+
...formatted,
|
|
3457
|
+
formatted: formatFallbackNotice(
|
|
3458
|
+
"documentSymbol",
|
|
3459
|
+
fallbackReason,
|
|
3460
|
+
"tree-sitter symbols",
|
|
3461
|
+
formatted.formatted
|
|
3462
|
+
)
|
|
3463
|
+
};
|
|
3464
|
+
}
|
|
3465
|
+
return formatted;
|
|
3412
3466
|
}
|
|
3413
3467
|
} catch {
|
|
3414
3468
|
}
|
|
@@ -3424,7 +3478,19 @@ var LspFacade = {
|
|
|
3424
3478
|
setCachedFastPathSymbols(input.filePath, contentHash, symbols, now);
|
|
3425
3479
|
}
|
|
3426
3480
|
recordFastPathSuccess(input.filePath, Date.now() - start, Date.now());
|
|
3427
|
-
|
|
3481
|
+
const formatted = formatTreeSitterDocumentSymbolResult(symbols);
|
|
3482
|
+
if (fallbackReason) {
|
|
3483
|
+
return {
|
|
3484
|
+
...formatted,
|
|
3485
|
+
formatted: formatFallbackNotice(
|
|
3486
|
+
"documentSymbol",
|
|
3487
|
+
fallbackReason,
|
|
3488
|
+
"tree-sitter symbols",
|
|
3489
|
+
formatted.formatted
|
|
3490
|
+
)
|
|
3491
|
+
};
|
|
3492
|
+
}
|
|
3493
|
+
return formatted;
|
|
3428
3494
|
}
|
|
3429
3495
|
recordFastPathFailure(input.filePath, "empty", now);
|
|
3430
3496
|
setFastPathLastFallback(input.filePath, "empty", now);
|
|
@@ -3437,6 +3503,7 @@ var LspFacade = {
|
|
|
3437
3503
|
}
|
|
3438
3504
|
}
|
|
3439
3505
|
} catch {
|
|
3506
|
+
fallbackReason = "lsp-error";
|
|
3440
3507
|
const now = Date.now();
|
|
3441
3508
|
const lang = ParserRegistry.getLanguage(input.filePath);
|
|
3442
3509
|
if (!lang) {
|
|
@@ -3457,7 +3524,19 @@ var LspFacade = {
|
|
|
3457
3524
|
if (cached) {
|
|
3458
3525
|
clearFastPathFailures(input.filePath);
|
|
3459
3526
|
recordFastPathSuccess(input.filePath, Date.now() - start, Date.now());
|
|
3460
|
-
|
|
3527
|
+
const formatted = formatTreeSitterDocumentSymbolResult(cached);
|
|
3528
|
+
if (fallbackReason) {
|
|
3529
|
+
return {
|
|
3530
|
+
...formatted,
|
|
3531
|
+
formatted: formatFallbackNotice(
|
|
3532
|
+
"documentSymbol",
|
|
3533
|
+
fallbackReason,
|
|
3534
|
+
"tree-sitter symbols",
|
|
3535
|
+
formatted.formatted
|
|
3536
|
+
)
|
|
3537
|
+
};
|
|
3538
|
+
}
|
|
3539
|
+
return formatted;
|
|
3461
3540
|
}
|
|
3462
3541
|
} catch {
|
|
3463
3542
|
}
|
|
@@ -3473,7 +3552,19 @@ var LspFacade = {
|
|
|
3473
3552
|
setCachedFastPathSymbols(input.filePath, contentHash, symbols, now);
|
|
3474
3553
|
}
|
|
3475
3554
|
recordFastPathSuccess(input.filePath, Date.now() - start, Date.now());
|
|
3476
|
-
|
|
3555
|
+
const formatted = formatTreeSitterDocumentSymbolResult(symbols);
|
|
3556
|
+
if (fallbackReason) {
|
|
3557
|
+
return {
|
|
3558
|
+
...formatted,
|
|
3559
|
+
formatted: formatFallbackNotice(
|
|
3560
|
+
"documentSymbol",
|
|
3561
|
+
fallbackReason,
|
|
3562
|
+
"tree-sitter symbols",
|
|
3563
|
+
formatted.formatted
|
|
3564
|
+
)
|
|
3565
|
+
};
|
|
3566
|
+
}
|
|
3567
|
+
return formatted;
|
|
3477
3568
|
}
|
|
3478
3569
|
recordFastPathFailure(input.filePath, "empty", now);
|
|
3479
3570
|
setFastPathLastFallback(input.filePath, "empty", now);
|