sdl-mcp 0.11.13 → 0.12.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.
- package/README.md +4 -4
- package/config/sdlmcp.config.example.json +3 -3
- package/config/sdlmcp.config.schema.json +11 -7
- package/dist/.tsbuildinfo +1 -1
- package/dist/agent/context-seeding.d.ts +14 -0
- package/dist/agent/context-seeding.d.ts.map +1 -1
- package/dist/agent/context-seeding.js +118 -4
- package/dist/agent/context-seeding.js.map +1 -1
- package/dist/cli/commands/index.d.ts +10 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +20 -3
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts +1 -1
- package/dist/cli/commands/init.js +7 -7
- package/dist/cli/commands/tool-actions.d.ts.map +1 -1
- package/dist/cli/commands/tool-actions.js +58 -3
- package/dist/cli/commands/tool-actions.js.map +1 -1
- package/dist/code-mode/action-catalog.d.ts +9 -0
- package/dist/code-mode/action-catalog.d.ts.map +1 -1
- package/dist/code-mode/action-catalog.js +18 -4
- package/dist/code-mode/action-catalog.js.map +1 -1
- package/dist/code-mode/descriptions.d.ts +1 -0
- package/dist/code-mode/descriptions.d.ts.map +1 -1
- package/dist/code-mode/descriptions.js +5 -1
- package/dist/code-mode/descriptions.js.map +1 -1
- package/dist/code-mode/etag-cache.d.ts +9 -2
- package/dist/code-mode/etag-cache.d.ts.map +1 -1
- package/dist/code-mode/etag-cache.js +45 -2
- package/dist/code-mode/etag-cache.js.map +1 -1
- package/dist/code-mode/index.d.ts +8 -0
- package/dist/code-mode/index.d.ts.map +1 -1
- package/dist/code-mode/index.js +39 -8
- package/dist/code-mode/index.js.map +1 -1
- package/dist/code-mode/manual-generator.d.ts.map +1 -1
- package/dist/code-mode/manual-generator.js +24 -21
- package/dist/code-mode/manual-generator.js.map +1 -1
- package/dist/code-mode/ref-resolver.d.ts.map +1 -1
- package/dist/code-mode/ref-resolver.js +30 -6
- package/dist/code-mode/ref-resolver.js.map +1 -1
- package/dist/code-mode/retrieve.d.ts +44 -0
- package/dist/code-mode/retrieve.d.ts.map +1 -0
- package/dist/code-mode/retrieve.js +68 -0
- package/dist/code-mode/retrieve.js.map +1 -0
- package/dist/code-mode/types.d.ts +7 -3
- package/dist/code-mode/types.d.ts.map +1 -1
- package/dist/code-mode/types.js +4 -2
- package/dist/code-mode/types.js.map +1 -1
- package/dist/code-mode/workflow-executor.d.ts.map +1 -1
- package/dist/code-mode/workflow-executor.js +88 -11
- package/dist/code-mode/workflow-executor.js.map +1 -1
- package/dist/code-mode/workflow-parser.d.ts +1 -1
- package/dist/code-mode/workflow-parser.d.ts.map +1 -1
- package/dist/code-mode/workflow-parser.js +32 -3
- package/dist/code-mode/workflow-parser.js.map +1 -1
- package/dist/code-mode/workflow-truncation.d.ts +0 -5
- package/dist/code-mode/workflow-truncation.d.ts.map +1 -1
- package/dist/code-mode/workflow-truncation.js +53 -1
- package/dist/code-mode/workflow-truncation.js.map +1 -1
- package/dist/config/types.d.ts +7 -7
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +6 -6
- package/dist/config/types.js.map +1 -1
- package/dist/db/ladybug-edges.d.ts +12 -0
- package/dist/db/ladybug-edges.d.ts.map +1 -1
- package/dist/db/ladybug-edges.js +26 -0
- package/dist/db/ladybug-edges.js.map +1 -1
- package/dist/domain/types.d.ts +4 -0
- package/dist/domain/types.d.ts.map +1 -1
- package/dist/gateway/descriptions.d.ts.map +1 -1
- package/dist/gateway/descriptions.js +5 -5
- package/dist/gateway/descriptions.js.map +1 -1
- package/dist/gateway/schemas.d.ts +46 -2
- package/dist/gateway/schemas.d.ts.map +1 -1
- package/dist/gateway/schemas.js +25 -8
- package/dist/gateway/schemas.js.map +1 -1
- package/dist/graph/overview.js +9 -1
- package/dist/graph/overview.js.map +1 -1
- package/dist/graph/prefetch.d.ts +1 -0
- package/dist/graph/prefetch.d.ts.map +1 -1
- package/dist/graph/prefetch.js +5 -1
- package/dist/graph/prefetch.js.map +1 -1
- package/dist/indexer/summary-generator.d.ts +6 -0
- package/dist/indexer/summary-generator.d.ts.map +1 -1
- package/dist/indexer/summary-generator.js +241 -86
- package/dist/indexer/summary-generator.js.map +1 -1
- package/dist/indexer/symbol-embedding-text.d.ts +5 -10
- package/dist/indexer/symbol-embedding-text.d.ts.map +1 -1
- package/dist/indexer/symbol-embedding-text.js +200 -0
- package/dist/indexer/symbol-embedding-text.js.map +1 -1
- package/dist/live-index/coordinator.js +1 -1
- package/dist/live-index/coordinator.js.map +1 -1
- package/dist/mcp/context-response-projection.d.ts +0 -10
- package/dist/mcp/context-response-projection.d.ts.map +1 -1
- package/dist/mcp/context-response-projection.js +536 -35
- package/dist/mcp/context-response-projection.js.map +1 -1
- package/dist/mcp/response-compression.d.ts +3 -0
- package/dist/mcp/response-compression.d.ts.map +1 -1
- package/dist/mcp/response-compression.js +21 -14
- package/dist/mcp/response-compression.js.map +1 -1
- package/dist/mcp/server-instructions.js +7 -7
- package/dist/mcp/server-instructions.js.map +1 -1
- package/dist/mcp/token-usage.d.ts +5 -0
- package/dist/mcp/token-usage.d.ts.map +1 -1
- package/dist/mcp/token-usage.js +17 -0
- package/dist/mcp/token-usage.js.map +1 -1
- package/dist/mcp/tool-call-formatter.d.ts.map +1 -1
- package/dist/mcp/tool-call-formatter.js +42 -12
- package/dist/mcp/tool-call-formatter.js.map +1 -1
- package/dist/mcp/tools/buffer.d.ts +1 -0
- package/dist/mcp/tools/buffer.d.ts.map +1 -1
- package/dist/mcp/tools/buffer.js +33 -1
- package/dist/mcp/tools/buffer.js.map +1 -1
- package/dist/mcp/tools/code.d.ts +6 -0
- package/dist/mcp/tools/code.d.ts.map +1 -1
- package/dist/mcp/tools/code.js +92 -13
- package/dist/mcp/tools/code.js.map +1 -1
- package/dist/mcp/tools/file-gateway.d.ts +50 -4
- package/dist/mcp/tools/file-gateway.d.ts.map +1 -1
- package/dist/mcp/tools/file-gateway.js +11 -10
- package/dist/mcp/tools/file-gateway.js.map +1 -1
- package/dist/mcp/tools/policy.d.ts +17 -0
- package/dist/mcp/tools/policy.d.ts.map +1 -1
- package/dist/mcp/tools/policy.js +18 -6
- package/dist/mcp/tools/policy.js.map +1 -1
- package/dist/mcp/tools/prRisk.d.ts +18 -1
- package/dist/mcp/tools/prRisk.d.ts.map +1 -1
- package/dist/mcp/tools/prRisk.js +95 -7
- package/dist/mcp/tools/prRisk.js.map +1 -1
- package/dist/mcp/tools/repo.d.ts.map +1 -1
- package/dist/mcp/tools/repo.js +73 -25
- package/dist/mcp/tools/repo.js.map +1 -1
- package/dist/mcp/tools/response.d.ts.map +1 -1
- package/dist/mcp/tools/response.js +17 -2
- package/dist/mcp/tools/response.js.map +1 -1
- package/dist/mcp/tools/runtime.d.ts +8 -1
- package/dist/mcp/tools/runtime.d.ts.map +1 -1
- package/dist/mcp/tools/runtime.js +84 -15
- package/dist/mcp/tools/runtime.js.map +1 -1
- package/dist/mcp/tools/search-edit/index.d.ts.map +1 -1
- package/dist/mcp/tools/search-edit/index.js +32 -8
- package/dist/mcp/tools/search-edit/index.js.map +1 -1
- package/dist/mcp/tools/search-edit/planner.d.ts +52 -2
- package/dist/mcp/tools/search-edit/planner.d.ts.map +1 -1
- package/dist/mcp/tools/search-edit/planner.js +48 -17
- package/dist/mcp/tools/search-edit/planner.js.map +1 -1
- package/dist/mcp/tools/search-edit/rename.d.ts +20 -0
- package/dist/mcp/tools/search-edit/rename.d.ts.map +1 -0
- package/dist/mcp/tools/search-edit/rename.js +107 -0
- package/dist/mcp/tools/search-edit/rename.js.map +1 -0
- package/dist/mcp/tools/search-edit/signature.d.ts +26 -0
- package/dist/mcp/tools/search-edit/signature.d.ts.map +1 -0
- package/dist/mcp/tools/search-edit/signature.js +421 -0
- package/dist/mcp/tools/search-edit/signature.js.map +1 -0
- package/dist/mcp/tools/search-edit/structural.d.ts +6 -0
- package/dist/mcp/tools/search-edit/structural.d.ts.map +1 -1
- package/dist/mcp/tools/search-edit/structural.js +10 -0
- package/dist/mcp/tools/search-edit/structural.js.map +1 -1
- package/dist/mcp/tools/semantic-enrichment.d.ts +2 -0
- package/dist/mcp/tools/semantic-enrichment.d.ts.map +1 -1
- package/dist/mcp/tools/semantic-enrichment.js +37 -1
- package/dist/mcp/tools/semantic-enrichment.js.map +1 -1
- package/dist/mcp/tools/symbol-edit/ast.d.ts.map +1 -1
- package/dist/mcp/tools/symbol-edit/ast.js +4 -1
- package/dist/mcp/tools/symbol-edit/ast.js.map +1 -1
- package/dist/mcp/tools/symbol-edit/index.d.ts.map +1 -1
- package/dist/mcp/tools/symbol-edit/index.js +0 -1
- package/dist/mcp/tools/symbol-edit/index.js.map +1 -1
- package/dist/mcp/tools/symbol.d.ts.map +1 -1
- package/dist/mcp/tools/symbol.js +23 -3
- package/dist/mcp/tools/symbol.js.map +1 -1
- package/dist/mcp/tools/tool-descriptors.d.ts +1 -0
- package/dist/mcp/tools/tool-descriptors.d.ts.map +1 -1
- package/dist/mcp/tools/tool-descriptors.js +6 -3
- package/dist/mcp/tools/tool-descriptors.js.map +1 -1
- package/dist/mcp/tools/usage.d.ts.map +1 -1
- package/dist/mcp/tools/usage.js +5 -0
- package/dist/mcp/tools/usage.js.map +1 -1
- package/dist/mcp/tools.d.ts +259 -156
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +210 -75
- package/dist/mcp/tools.js.map +1 -1
- package/dist/observability/aggregator.d.ts +3 -0
- package/dist/observability/aggregator.d.ts.map +1 -1
- package/dist/observability/aggregator.js +27 -0
- package/dist/observability/aggregator.js.map +1 -1
- package/dist/observability/event-tap.d.ts +6 -0
- package/dist/observability/event-tap.d.ts.map +1 -1
- package/dist/observability/event-tap.js.map +1 -1
- package/dist/observability/types.d.ts +9 -0
- package/dist/observability/types.d.ts.map +1 -1
- package/dist/observability/types.js.map +1 -1
- package/dist/runtime/executor.d.ts +6 -0
- package/dist/runtime/executor.d.ts.map +1 -1
- package/dist/runtime/executor.js +16 -8
- package/dist/runtime/executor.js.map +1 -1
- package/dist/runtime/response-artifacts.d.ts +14 -2
- package/dist/runtime/response-artifacts.d.ts.map +1 -1
- package/dist/runtime/response-artifacts.js +66 -17
- package/dist/runtime/response-artifacts.js.map +1 -1
- package/dist/runtime/runtimes.d.ts.map +1 -1
- package/dist/runtime/runtimes.js +15 -0
- package/dist/runtime/runtimes.js.map +1 -1
- package/dist/semantic/enrichment.d.ts +2 -0
- package/dist/semantic/enrichment.d.ts.map +1 -1
- package/dist/semantic/enrichment.js.map +1 -1
- package/dist/server.d.ts +2 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +123 -25
- package/dist/server.js.map +1 -1
- package/package.json +14 -8
- package/templates/SDL.md +25 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefetch.d.ts","sourceRoot":"","sources":["../../src/graph/prefetch.ts"],"names":[],"mappings":"AAMA,OAAO,EAQL,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAML,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,EACnC,MAAM,wBAAwB,CAAC;AAEhC,KAAK,gBAAgB,GACjB,gBAAgB,GAChB,cAAc,GACd,WAAW,GACX,aAAa,GACb,cAAc,CAAC;AAEnB,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,gBAAgB,CAAC;IACvB,YAAY,EAAE,oBAAoB,CAAC;IACnC,OAAO,EAAE,uBAAuB,CAAC;IACjC,GAAG,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAeD,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,OAAO,CAAC;IACb,OAAO,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,oBAAoB,CAAC;IACnC,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IAC5C,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,6BAA6B,EAAE,CAAC;CAChD;
|
|
1
|
+
{"version":3,"file":"prefetch.d.ts","sourceRoot":"","sources":["../../src/graph/prefetch.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/prefetch.js
CHANGED
|
@@ -23,6 +23,7 @@ const statsByRepo = new Map();
|
|
|
23
23
|
let running = false;
|
|
24
24
|
let enabled = false;
|
|
25
25
|
let maxBudgetPercent = 20;
|
|
26
|
+
let loadSheddingEnabled = true;
|
|
26
27
|
function resolveContext(context) {
|
|
27
28
|
return {
|
|
28
29
|
taskType: context?.taskType?.trim() || "unknown",
|
|
@@ -126,7 +127,7 @@ function currentCpuLoadRatio() {
|
|
|
126
127
|
return avg / cpuCount;
|
|
127
128
|
}
|
|
128
129
|
function shouldYieldForLoad() {
|
|
129
|
-
return currentCpuLoadRatio() > 0.8;
|
|
130
|
+
return loadSheddingEnabled && currentCpuLoadRatio() > 0.8;
|
|
130
131
|
}
|
|
131
132
|
function policyKeyForTask(task) {
|
|
132
133
|
return {
|
|
@@ -650,6 +651,9 @@ export function getPrefetchStats(repoId) {
|
|
|
650
651
|
refreshPolicyStats(repoId, stats);
|
|
651
652
|
return { ...stats, topStrategies: [...stats.topStrategies] };
|
|
652
653
|
}
|
|
654
|
+
export function _setPrefetchLoadSheddingForTesting(enabledForTest) {
|
|
655
|
+
loadSheddingEnabled = enabledForTest;
|
|
656
|
+
}
|
|
653
657
|
export function _setPrefetchEntryCreatedAtForTesting(repoId, key, createdAt) {
|
|
654
658
|
const map = prefetchedKeysByRepo.get(repoId) ?? new Map();
|
|
655
659
|
prefetchedKeysByRepo.set(repoId, map);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefetch.js","sourceRoot":"","sources":["../../src/graph/prefetch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prefetch.js","sourceRoot":"","sources":["../../src/graph/prefetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { AppConfig } from "../config/types.js";
|
|
2
2
|
import type { IndexProgress } from "./indexer.js";
|
|
3
|
+
import { type PreparedSymbolEmbeddingInput } from "./symbol-embedding-context.js";
|
|
3
4
|
export interface GeneratedSummaryResult {
|
|
4
5
|
summary: string;
|
|
5
6
|
provider: string;
|
|
@@ -13,6 +14,7 @@ export interface SummaryProvider {
|
|
|
13
14
|
kind?: string;
|
|
14
15
|
signature?: string;
|
|
15
16
|
heuristicSummary?: string;
|
|
17
|
+
embeddingInput?: PreparedSymbolEmbeddingInput;
|
|
16
18
|
}): Promise<string>;
|
|
17
19
|
}
|
|
18
20
|
export declare class AnthropicSummaryProvider implements SummaryProvider {
|
|
@@ -61,10 +63,13 @@ export declare function generateSummaryWithGuardrails(input: {
|
|
|
61
63
|
signature?: string;
|
|
62
64
|
astFingerprint?: string;
|
|
63
65
|
heuristicSummary?: string;
|
|
66
|
+
embeddingInput?: PreparedSymbolEmbeddingInput;
|
|
64
67
|
provider: string;
|
|
65
68
|
summaryModel?: string;
|
|
66
69
|
summaryApiKey?: string;
|
|
67
70
|
summaryApiBaseUrl?: string;
|
|
71
|
+
skipCacheLookup?: boolean;
|
|
72
|
+
persistCache?: boolean;
|
|
68
73
|
}): Promise<GeneratedSummaryResult>;
|
|
69
74
|
export declare function summaryCacheKey(symbolId: string, provider: string): string;
|
|
70
75
|
export interface SummaryBatchResult {
|
|
@@ -72,6 +77,7 @@ export interface SummaryBatchResult {
|
|
|
72
77
|
skipped: number;
|
|
73
78
|
failed: number;
|
|
74
79
|
totalCostUsd: number;
|
|
80
|
+
provider?: string;
|
|
75
81
|
}
|
|
76
82
|
/**
|
|
77
83
|
* Generates AI summaries for all symbols in a repository that need them.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summary-generator.d.ts","sourceRoot":"","sources":["../../src/indexer/summary-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"summary-generator.d.ts","sourceRoot":"","sources":["../../src/indexer/summary-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,14 +2,32 @@ import { hashContent } from "../util/hashing.js";
|
|
|
2
2
|
import { logger } from "../util/logger.js";
|
|
3
3
|
import { getLadybugConn, withWriteConn } from "../db/ladybug.js";
|
|
4
4
|
import * as ladybugDb from "../db/ladybug-queries.js";
|
|
5
|
+
import { prepareSymbolEmbeddingInputs, } from "./symbol-embedding-context.js";
|
|
6
|
+
import { buildConciseSymbolSummary, CONCISE_SYMBOL_SUMMARY_BUILDER_VERSION, } from "./symbol-embedding-text.js";
|
|
5
7
|
const ANTHROPIC_SYSTEM_PROMPT = "You are a code documentation assistant. Write a 1-3 sentence summary of what this TypeScript/JavaScript symbol does. Be specific, not generic. Focus on behavior, not structure.";
|
|
8
|
+
function buildFallbackPreparedInput(input) {
|
|
9
|
+
return {
|
|
10
|
+
symbol: {
|
|
11
|
+
name: input.symbolName,
|
|
12
|
+
kind: input.kind ?? "symbol",
|
|
13
|
+
},
|
|
14
|
+
signatureText: input.signature ?? null,
|
|
15
|
+
relPath: null,
|
|
16
|
+
language: null,
|
|
17
|
+
roleTags: [],
|
|
18
|
+
searchTerms: [],
|
|
19
|
+
invariants: [],
|
|
20
|
+
sideEffects: [],
|
|
21
|
+
imports: [],
|
|
22
|
+
calls: [],
|
|
23
|
+
summaryFreshness: "absent",
|
|
24
|
+
summaryText: null,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
6
27
|
class MockSummaryProvider {
|
|
7
28
|
name = "mock";
|
|
8
29
|
async generate(input) {
|
|
9
|
-
|
|
10
|
-
return input.heuristicSummary;
|
|
11
|
-
}
|
|
12
|
-
return `${input.symbolName} participates in repository control flow and dependencies.`;
|
|
30
|
+
return buildConciseSymbolSummary(input.embeddingInput ?? buildFallbackPreparedInput(input));
|
|
13
31
|
}
|
|
14
32
|
}
|
|
15
33
|
export class AnthropicSummaryProvider {
|
|
@@ -167,6 +185,83 @@ function tokenDistance(a, b) {
|
|
|
167
185
|
const union = new Set([...aTokens, ...bTokens]).size;
|
|
168
186
|
return 1 - overlap / Math.max(1, union);
|
|
169
187
|
}
|
|
188
|
+
function firstSummaryContextValue(values) {
|
|
189
|
+
for (const value of values ?? []) {
|
|
190
|
+
const normalized = value.replace(/\s+/g, " ").trim();
|
|
191
|
+
if (normalized.length > 0) {
|
|
192
|
+
return normalized;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return "";
|
|
196
|
+
}
|
|
197
|
+
function buildSummaryCardHash(input) {
|
|
198
|
+
const signatureText = input.embeddingInput?.signatureText ?? input.signature ?? "";
|
|
199
|
+
if (input.providerName === "mock") {
|
|
200
|
+
return hashContent([
|
|
201
|
+
input.symbolName,
|
|
202
|
+
input.kind ?? "",
|
|
203
|
+
input.providerName,
|
|
204
|
+
input.modelName,
|
|
205
|
+
CONCISE_SYMBOL_SUMMARY_BUILDER_VERSION,
|
|
206
|
+
signatureText,
|
|
207
|
+
firstSummaryContextValue(input.embeddingInput?.roleTags),
|
|
208
|
+
firstSummaryContextValue(input.embeddingInput?.sideEffects),
|
|
209
|
+
].join("|"));
|
|
210
|
+
}
|
|
211
|
+
return hashContent([
|
|
212
|
+
input.symbolName,
|
|
213
|
+
input.kind ?? "",
|
|
214
|
+
input.signature ?? "",
|
|
215
|
+
input.astFingerprint ?? "",
|
|
216
|
+
input.providerName,
|
|
217
|
+
input.modelName,
|
|
218
|
+
].join("|"));
|
|
219
|
+
}
|
|
220
|
+
function summaryStorageMetadata(providerName) {
|
|
221
|
+
return providerName === "mock"
|
|
222
|
+
? { quality: 0.6, source: "heuristic-typed" }
|
|
223
|
+
: { quality: 1.0, source: "llm" };
|
|
224
|
+
}
|
|
225
|
+
function isCodeFenceOnlySummary(summary) {
|
|
226
|
+
const trimmed = summary?.trim() ?? "";
|
|
227
|
+
return trimmed === "```" || /^```[A-Za-z0-9_-]+$/.test(trimmed);
|
|
228
|
+
}
|
|
229
|
+
async function updateSymbolSummariesInTransaction(rows) {
|
|
230
|
+
if (rows.length === 0) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
await withWriteConn(async (wConn) => {
|
|
234
|
+
await ladybugDb.withTransaction(wConn, async (txConn) => {
|
|
235
|
+
const updatedAt = new Date().toISOString();
|
|
236
|
+
for (const row of rows) {
|
|
237
|
+
await ladybugDb.updateSymbolSummary(txConn, row.symbolId, row.summary, row.summaryQuality, row.summarySource, updatedAt);
|
|
238
|
+
}
|
|
239
|
+
});
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
async function persistGeneratedSummariesInTransaction(rows) {
|
|
243
|
+
if (rows.length === 0) {
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
await withWriteConn(async (wConn) => {
|
|
247
|
+
await ladybugDb.withTransaction(wConn, async (txConn) => {
|
|
248
|
+
const now = new Date().toISOString();
|
|
249
|
+
for (const row of rows) {
|
|
250
|
+
await ladybugDb.upsertSummaryCache(txConn, {
|
|
251
|
+
symbolId: row.symbolId,
|
|
252
|
+
summary: row.summary ?? "",
|
|
253
|
+
provider: row.provider,
|
|
254
|
+
model: row.model,
|
|
255
|
+
cardHash: row.cardHash,
|
|
256
|
+
costUsd: row.costUsd,
|
|
257
|
+
createdAt: now,
|
|
258
|
+
updatedAt: now,
|
|
259
|
+
});
|
|
260
|
+
await ladybugDb.updateSymbolSummary(txConn, row.symbolId, row.summary, row.summaryQuality, row.summarySource, now);
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
});
|
|
264
|
+
}
|
|
170
265
|
export async function generateSummaryWithGuardrails(input) {
|
|
171
266
|
const conn = await getLadybugConn();
|
|
172
267
|
const summaryProvider = createSummaryProvider(input.provider, {
|
|
@@ -190,21 +285,21 @@ export async function generateSummaryWithGuardrails(input) {
|
|
|
190
285
|
}
|
|
191
286
|
return { summary: "", provider: "skipped", costUsd: 0, divergenceScore: 0 };
|
|
192
287
|
}
|
|
193
|
-
// Compute card hash for cache keying
|
|
194
|
-
//
|
|
195
|
-
// Also includes the resolved provider name and model so that switching
|
|
196
|
-
// providers or models invalidates the cache and triggers regeneration.
|
|
288
|
+
// Compute card hash for cache keying. Mock summaries include only the concise
|
|
289
|
+
// builder inputs that can change deterministic prose.
|
|
197
290
|
const resolvedModel = input.summaryModel ?? summaryProvider.name;
|
|
198
|
-
const cardHash =
|
|
199
|
-
input.symbolName,
|
|
200
|
-
input.kind
|
|
201
|
-
input.signature
|
|
202
|
-
input.astFingerprint
|
|
203
|
-
summaryProvider.name,
|
|
204
|
-
resolvedModel,
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
291
|
+
const cardHash = buildSummaryCardHash({
|
|
292
|
+
symbolName: input.symbolName,
|
|
293
|
+
kind: input.kind,
|
|
294
|
+
signature: input.signature,
|
|
295
|
+
astFingerprint: input.astFingerprint,
|
|
296
|
+
providerName: summaryProvider.name,
|
|
297
|
+
modelName: resolvedModel,
|
|
298
|
+
embeddingInput: input.embeddingInput,
|
|
299
|
+
});
|
|
300
|
+
// Check summary cache when symbolId is available. Batch callers pass a bulk
|
|
301
|
+
// cache snapshot and skip this standalone read.
|
|
302
|
+
if (input.symbolId && input.skipCacheLookup !== true) {
|
|
208
303
|
const cached = await ladybugDb.getSummaryCache(conn, input.symbolId);
|
|
209
304
|
if (cached != null && cached.cardHash === cardHash) {
|
|
210
305
|
const divergenceScore = tokenDistance(cached.summary, input.heuristicSummary ?? "");
|
|
@@ -223,12 +318,14 @@ export async function generateSummaryWithGuardrails(input) {
|
|
|
223
318
|
kind: input.kind,
|
|
224
319
|
signature: input.signature,
|
|
225
320
|
heuristicSummary: input.heuristicSummary,
|
|
321
|
+
embeddingInput: input.embeddingInput,
|
|
226
322
|
});
|
|
227
323
|
const divergenceScore = tokenDistance(summary, input.heuristicSummary ?? "");
|
|
228
324
|
const estimatedTokens = Math.max(1, Math.ceil(summary.length / 4));
|
|
229
325
|
const costUsd = estimatedTokens * 0.000002;
|
|
230
|
-
// Persist to cache
|
|
231
|
-
|
|
326
|
+
// Persist to cache for standalone callers. Batch generation persists cache
|
|
327
|
+
// and Symbol rows together in one transaction.
|
|
328
|
+
if (input.symbolId && input.persistCache !== false) {
|
|
232
329
|
const symbolId = input.symbolId;
|
|
233
330
|
const now = new Date().toISOString();
|
|
234
331
|
await withWriteConn(async (wConn) => {
|
|
@@ -271,9 +368,7 @@ export async function generateSummariesForRepo(repoId, config, onProgress) {
|
|
|
271
368
|
}
|
|
272
369
|
const batchSize = semantic.summaryBatchSize ?? 20;
|
|
273
370
|
const maxConcurrency = semantic.summaryMaxConcurrency ?? 5;
|
|
274
|
-
|
|
275
|
-
// provider for backward compatibility.
|
|
276
|
-
const provider = semantic.summaryProvider ?? semantic.provider ?? "mock";
|
|
371
|
+
const provider = semantic.summaryProvider ?? "mock";
|
|
277
372
|
const summaryModel = semantic.summaryModel;
|
|
278
373
|
const summaryApiKey = semantic.summaryApiKey;
|
|
279
374
|
const summaryApiBaseUrl = semantic.summaryApiBaseUrl;
|
|
@@ -287,7 +382,7 @@ export async function generateSummariesForRepo(repoId, config, onProgress) {
|
|
|
287
382
|
// If provider creation returned null (e.g., misconfigured local provider),
|
|
288
383
|
// skip summary generation entirely to preserve existing summaries.
|
|
289
384
|
if (resolvedSummaryProvider == null) {
|
|
290
|
-
logger.warn(`Summary provider "${provider}" could not be created
|
|
385
|
+
logger.warn(`Summary provider "${provider}" could not be created - skipping summary generation for repo ${repoId}. ` +
|
|
291
386
|
"Existing summaries are preserved.");
|
|
292
387
|
const symbols = await ladybugDb.getSymbolsByRepo(conn, repoId);
|
|
293
388
|
return {
|
|
@@ -299,65 +394,113 @@ export async function generateSummariesForRepo(repoId, config, onProgress) {
|
|
|
299
394
|
}
|
|
300
395
|
const resolvedProviderName = resolvedSummaryProvider.name;
|
|
301
396
|
const resolvedModelName = summaryModel ?? resolvedProviderName;
|
|
397
|
+
const isMockProvider = resolvedProviderName === "mock";
|
|
302
398
|
// Fetch all symbols for the repo
|
|
303
399
|
const symbols = await ladybugDb.getSymbolsByRepo(conn, repoId);
|
|
400
|
+
const parseSignatureText = (sym) => {
|
|
401
|
+
if (!sym.signatureJson) {
|
|
402
|
+
return undefined;
|
|
403
|
+
}
|
|
404
|
+
try {
|
|
405
|
+
const parsed = JSON.parse(sym.signatureJson);
|
|
406
|
+
return typeof parsed === "string" ? parsed : (parsed?.text ?? sym.signatureJson);
|
|
407
|
+
}
|
|
408
|
+
catch (err) {
|
|
409
|
+
logger.debug("Failed to parse signatureJson for summary card hash", {
|
|
410
|
+
symbolId: sym.symbolId,
|
|
411
|
+
error: err instanceof Error ? err.message : String(err),
|
|
412
|
+
});
|
|
413
|
+
return sym.signatureJson;
|
|
414
|
+
}
|
|
415
|
+
};
|
|
304
416
|
// Determine which symbols need a new summary by checking the cache (bulk)
|
|
305
417
|
const cachedSummaries = await ladybugDb.getSummaryCaches(conn, symbols.map((s) => s.symbolId));
|
|
306
|
-
|
|
418
|
+
let needsSummary = [];
|
|
419
|
+
const preparedInputBySymbolId = new Map();
|
|
420
|
+
const summaryRepairs = [];
|
|
307
421
|
for (const sym of symbols) {
|
|
308
|
-
|
|
309
|
-
// parsed signature text (not raw signatureJson), so we must parse here too.
|
|
310
|
-
const parsedSig = sym.signatureJson
|
|
311
|
-
? (() => {
|
|
312
|
-
try {
|
|
313
|
-
const parsed = JSON.parse(sym.signatureJson);
|
|
314
|
-
return typeof parsed === "string"
|
|
315
|
-
? parsed
|
|
316
|
-
: (parsed?.text ?? sym.signatureJson);
|
|
317
|
-
}
|
|
318
|
-
catch (err) {
|
|
319
|
-
logger.debug("Failed to parse signatureJson for card hash", {
|
|
320
|
-
symbolId: sym.symbolId,
|
|
321
|
-
error: err instanceof Error ? err.message : String(err),
|
|
322
|
-
});
|
|
323
|
-
return sym.signatureJson;
|
|
324
|
-
}
|
|
325
|
-
})()
|
|
326
|
-
: "";
|
|
327
|
-
const cardHash = hashContent([
|
|
328
|
-
sym.name,
|
|
329
|
-
sym.kind ?? "",
|
|
330
|
-
parsedSig,
|
|
331
|
-
sym.astFingerprint ?? "",
|
|
332
|
-
resolvedProviderName,
|
|
333
|
-
resolvedModelName,
|
|
334
|
-
].join("|"));
|
|
335
|
-
const cached = cachedSummaries.get(sym.symbolId);
|
|
336
|
-
// Skip only if cache is fresh (hash includes provider+model, so switching
|
|
337
|
-
// providers or models automatically invalidates)
|
|
338
|
-
if (cached != null && cached.cardHash === cardHash) {
|
|
339
|
-
// Backfill: if cache write succeeded but symbol row update didn't
|
|
340
|
-
// (e.g., process crash between the two writes), repair the symbol row.
|
|
341
|
-
if (sym.summary !== cached.summary) {
|
|
342
|
-
await withWriteConn(async (wConn) => {
|
|
343
|
-
await ladybugDb.updateSymbolSummary(wConn, sym.symbolId, cached.summary, 1.0, "llm");
|
|
344
|
-
});
|
|
345
|
-
}
|
|
422
|
+
if (isMockProvider && sym.summarySource === "llm") {
|
|
346
423
|
continue;
|
|
347
424
|
}
|
|
348
425
|
// Skip symbols that already have good summaries (JSDoc or LLM-generated).
|
|
349
426
|
// Quality thresholds: JSDoc=1.0, LLM=0.8, NN-direct=0.6, NN-adapted=0.5,
|
|
350
427
|
// heuristic=0.3-0.4. We only regenerate below 0.8.
|
|
351
|
-
if (sym.
|
|
428
|
+
if (!isCodeFenceOnlySummary(sym.summary) &&
|
|
429
|
+
sym.summaryQuality !== undefined &&
|
|
430
|
+
sym.summaryQuality !== null &&
|
|
431
|
+
sym.summaryQuality >= 0.8) {
|
|
352
432
|
continue;
|
|
353
433
|
}
|
|
434
|
+
if (!isMockProvider) {
|
|
435
|
+
const signatureText = parseSignatureText(sym);
|
|
436
|
+
const cardHash = buildSummaryCardHash({
|
|
437
|
+
symbolName: sym.name,
|
|
438
|
+
kind: sym.kind,
|
|
439
|
+
signature: signatureText,
|
|
440
|
+
astFingerprint: sym.astFingerprint,
|
|
441
|
+
providerName: resolvedProviderName,
|
|
442
|
+
modelName: resolvedModelName,
|
|
443
|
+
});
|
|
444
|
+
const cached = cachedSummaries.get(sym.symbolId);
|
|
445
|
+
if (cached != null && cached.cardHash === cardHash) {
|
|
446
|
+
if (sym.summary !== cached.summary) {
|
|
447
|
+
const metadata = summaryStorageMetadata(cached.provider);
|
|
448
|
+
summaryRepairs.push({
|
|
449
|
+
symbolId: sym.symbolId,
|
|
450
|
+
summary: cached.summary,
|
|
451
|
+
summaryQuality: metadata.quality,
|
|
452
|
+
summarySource: metadata.source,
|
|
453
|
+
});
|
|
454
|
+
}
|
|
455
|
+
continue;
|
|
456
|
+
}
|
|
457
|
+
}
|
|
354
458
|
needsSummary.push(sym);
|
|
355
459
|
}
|
|
460
|
+
if (isMockProvider && needsSummary.length > 0) {
|
|
461
|
+
const preparedInputs = await prepareSymbolEmbeddingInputs(conn, needsSummary, {
|
|
462
|
+
summaryCacheMap: cachedSummaries,
|
|
463
|
+
});
|
|
464
|
+
for (const embeddingInput of preparedInputs) {
|
|
465
|
+
preparedInputBySymbolId.set(embeddingInput.symbol.symbolId, embeddingInput);
|
|
466
|
+
}
|
|
467
|
+
const staleMockSummaries = [];
|
|
468
|
+
for (const sym of needsSummary) {
|
|
469
|
+
const embeddingInput = preparedInputBySymbolId.get(sym.symbolId);
|
|
470
|
+
const signatureText = embeddingInput?.signatureText ?? parseSignatureText(sym);
|
|
471
|
+
const cardHash = buildSummaryCardHash({
|
|
472
|
+
symbolName: sym.name,
|
|
473
|
+
kind: sym.kind,
|
|
474
|
+
signature: signatureText,
|
|
475
|
+
astFingerprint: sym.astFingerprint,
|
|
476
|
+
providerName: resolvedProviderName,
|
|
477
|
+
modelName: resolvedModelName,
|
|
478
|
+
embeddingInput,
|
|
479
|
+
});
|
|
480
|
+
const cached = cachedSummaries.get(sym.symbolId);
|
|
481
|
+
if (cached != null && cached.cardHash === cardHash) {
|
|
482
|
+
if (sym.summary !== cached.summary) {
|
|
483
|
+
const metadata = summaryStorageMetadata(cached.provider);
|
|
484
|
+
summaryRepairs.push({
|
|
485
|
+
symbolId: sym.symbolId,
|
|
486
|
+
summary: cached.summary,
|
|
487
|
+
summaryQuality: metadata.quality,
|
|
488
|
+
summarySource: metadata.source,
|
|
489
|
+
});
|
|
490
|
+
}
|
|
491
|
+
continue;
|
|
492
|
+
}
|
|
493
|
+
staleMockSummaries.push(sym);
|
|
494
|
+
}
|
|
495
|
+
needsSummary = staleMockSummaries;
|
|
496
|
+
}
|
|
497
|
+
await updateSymbolSummariesInTransaction(summaryRepairs);
|
|
356
498
|
const result = {
|
|
357
499
|
generated: 0,
|
|
358
500
|
skipped: symbols.length - needsSummary.length,
|
|
359
501
|
failed: 0,
|
|
360
502
|
totalCostUsd: 0,
|
|
503
|
+
provider,
|
|
361
504
|
};
|
|
362
505
|
if (needsSummary.length === 0) {
|
|
363
506
|
return result;
|
|
@@ -375,25 +518,20 @@ export async function generateSummariesForRepo(repoId, config, onProgress) {
|
|
|
375
518
|
let batchGenerated = 0;
|
|
376
519
|
let batchFailed = 0;
|
|
377
520
|
let batchCost = 0;
|
|
521
|
+
const generatedRows = [];
|
|
378
522
|
for (const sym of batch) {
|
|
379
523
|
try {
|
|
380
|
-
const
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
error: err instanceof Error ? err.message : String(err),
|
|
392
|
-
});
|
|
393
|
-
return sym.signatureJson;
|
|
394
|
-
}
|
|
395
|
-
})()
|
|
396
|
-
: undefined;
|
|
524
|
+
const embeddingInput = preparedInputBySymbolId.get(sym.symbolId);
|
|
525
|
+
const signatureText = embeddingInput?.signatureText ?? parseSignatureText(sym);
|
|
526
|
+
const cardHash = buildSummaryCardHash({
|
|
527
|
+
symbolName: sym.name,
|
|
528
|
+
kind: sym.kind,
|
|
529
|
+
signature: signatureText,
|
|
530
|
+
astFingerprint: sym.astFingerprint,
|
|
531
|
+
providerName: resolvedProviderName,
|
|
532
|
+
modelName: resolvedModelName,
|
|
533
|
+
embeddingInput,
|
|
534
|
+
});
|
|
397
535
|
const genResult = await generateSummaryWithGuardrails({
|
|
398
536
|
symbolName: sym.name,
|
|
399
537
|
symbolId: sym.symbolId,
|
|
@@ -401,16 +539,25 @@ export async function generateSummariesForRepo(repoId, config, onProgress) {
|
|
|
401
539
|
signature: signatureText,
|
|
402
540
|
astFingerprint: sym.astFingerprint ?? undefined,
|
|
403
541
|
heuristicSummary: sym.summary ?? undefined,
|
|
542
|
+
embeddingInput,
|
|
404
543
|
provider,
|
|
405
544
|
summaryModel: summaryModel ?? undefined,
|
|
406
545
|
summaryApiKey: summaryApiKey ?? undefined,
|
|
407
546
|
summaryApiBaseUrl: summaryApiBaseUrl ?? undefined,
|
|
547
|
+
skipCacheLookup: true,
|
|
548
|
+
persistCache: false,
|
|
408
549
|
});
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
550
|
+
const metadata = summaryStorageMetadata(genResult.provider);
|
|
551
|
+
generatedRows.push({
|
|
552
|
+
symbolId: sym.symbolId,
|
|
553
|
+
summary: genResult.summary,
|
|
554
|
+
provider: genResult.provider,
|
|
555
|
+
model: summaryModel ?? genResult.provider,
|
|
556
|
+
cardHash,
|
|
557
|
+
costUsd: genResult.costUsd,
|
|
558
|
+
summaryQuality: metadata.quality,
|
|
559
|
+
summarySource: metadata.source,
|
|
412
560
|
});
|
|
413
|
-
batchGenerated += 1;
|
|
414
561
|
batchCost += genResult.costUsd;
|
|
415
562
|
}
|
|
416
563
|
catch (err) {
|
|
@@ -418,6 +565,14 @@ export async function generateSummariesForRepo(repoId, config, onProgress) {
|
|
|
418
565
|
batchFailed += 1;
|
|
419
566
|
}
|
|
420
567
|
}
|
|
568
|
+
try {
|
|
569
|
+
await persistGeneratedSummariesInTransaction(generatedRows);
|
|
570
|
+
batchGenerated += generatedRows.length;
|
|
571
|
+
}
|
|
572
|
+
catch (err) {
|
|
573
|
+
logger.warn(`Failed to persist summary batch: ${String(err)}`);
|
|
574
|
+
batchFailed += generatedRows.length;
|
|
575
|
+
}
|
|
421
576
|
return {
|
|
422
577
|
generated: batchGenerated,
|
|
423
578
|
failed: batchFailed,
|
|
@@ -438,7 +593,7 @@ export async function generateSummariesForRepo(repoId, config, onProgress) {
|
|
|
438
593
|
result.totalCostUsd += outcome.value.costUsd;
|
|
439
594
|
}
|
|
440
595
|
else {
|
|
441
|
-
// Entire batch threw
|
|
596
|
+
// Entire batch threw - count all as failed
|
|
442
597
|
result.failed += chunkBatchSize;
|
|
443
598
|
logger.warn(`Batch failed entirely: ${String(outcome.reason)}`);
|
|
444
599
|
}
|