kiri-mcp-server 0.13.0 → 0.16.0
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 +13 -17
- package/config/scoring-profiles.yml +78 -0
- package/config/stop-words.yml +307 -0
- package/dist/config/scoring-profiles.yml +78 -0
- package/dist/config/stop-words.yml +307 -0
- package/dist/package.json +2 -2
- package/dist/src/indexer/cli.d.ts +1 -0
- package/dist/src/indexer/cli.d.ts.map +1 -1
- package/dist/src/indexer/cli.js +22 -2
- package/dist/src/indexer/cli.js.map +1 -1
- package/dist/src/indexer/cochange.d.ts +97 -0
- package/dist/src/indexer/cochange.d.ts.map +1 -0
- package/dist/src/indexer/cochange.js +315 -0
- package/dist/src/indexer/cochange.js.map +1 -0
- package/dist/src/indexer/graph-metrics.d.ts +68 -0
- package/dist/src/indexer/graph-metrics.d.ts.map +1 -0
- package/dist/src/indexer/graph-metrics.js +239 -0
- package/dist/src/indexer/graph-metrics.js.map +1 -0
- package/dist/src/indexer/schema.d.ts +15 -0
- package/dist/src/indexer/schema.d.ts.map +1 -1
- package/dist/src/indexer/schema.js +86 -0
- package/dist/src/indexer/schema.js.map +1 -1
- package/dist/src/server/config.d.ts.map +1 -1
- package/dist/src/server/config.js +22 -16
- package/dist/src/server/config.js.map +1 -1
- package/dist/src/server/handlers/snippets-get.d.ts +10 -0
- package/dist/src/server/handlers/snippets-get.d.ts.map +1 -1
- package/dist/src/server/handlers/snippets-get.js +40 -3
- package/dist/src/server/handlers/snippets-get.js.map +1 -1
- package/dist/src/server/handlers.d.ts +1 -1
- package/dist/src/server/handlers.d.ts.map +1 -1
- package/dist/src/server/handlers.js +195 -51
- package/dist/src/server/handlers.js.map +1 -1
- package/dist/src/server/idf-provider.d.ts +110 -0
- package/dist/src/server/idf-provider.d.ts.map +1 -0
- package/dist/src/server/idf-provider.js +233 -0
- package/dist/src/server/idf-provider.js.map +1 -0
- package/dist/src/server/rpc.d.ts.map +1 -1
- package/dist/src/server/rpc.js +43 -4
- package/dist/src/server/rpc.js.map +1 -1
- package/dist/src/server/scoring.d.ts +10 -0
- package/dist/src/server/scoring.d.ts.map +1 -1
- package/dist/src/server/scoring.js +73 -0
- package/dist/src/server/scoring.js.map +1 -1
- package/dist/src/server/services/index.d.ts +2 -0
- package/dist/src/server/services/index.d.ts.map +1 -1
- package/dist/src/server/services/index.js +3 -0
- package/dist/src/server/services/index.js.map +1 -1
- package/dist/src/server/stop-words.d.ts +106 -0
- package/dist/src/server/stop-words.d.ts.map +1 -0
- package/dist/src/server/stop-words.js +312 -0
- package/dist/src/server/stop-words.js.map +1 -0
- package/dist/src/shared/adaptive-k-categories.d.ts +5 -0
- package/dist/src/shared/adaptive-k-categories.d.ts.map +1 -0
- package/dist/src/shared/adaptive-k-categories.js +17 -0
- package/dist/src/shared/adaptive-k-categories.js.map +1 -0
- package/dist/src/shared/duckdb.d.ts +8 -2
- package/dist/src/shared/duckdb.d.ts.map +1 -1
- package/dist/src/shared/duckdb.js +37 -62
- package/dist/src/shared/duckdb.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph Metrics Computation (Phase 3.2: Graph Layer)
|
|
3
|
+
*
|
|
4
|
+
* This module computes graph centrality metrics from the dependency table
|
|
5
|
+
* and stores them in precomputed tables for fast query-time lookup.
|
|
6
|
+
*
|
|
7
|
+
* Invariants (from Alloy spec):
|
|
8
|
+
* - DG1: All path edges reference indexed files
|
|
9
|
+
* - DG2: No self-loops
|
|
10
|
+
* - DG4: Closure symmetry (outbound/inbound consistency)
|
|
11
|
+
*
|
|
12
|
+
* Metrics computed:
|
|
13
|
+
* - Degree centrality (inbound/outbound counts)
|
|
14
|
+
* - Importance score (PageRank-like)
|
|
15
|
+
* - Inbound closure (BFS up to depth 3)
|
|
16
|
+
*/
|
|
17
|
+
const DEFAULT_CONFIG = {
|
|
18
|
+
maxDepth: 3,
|
|
19
|
+
dampingFactor: 0.85,
|
|
20
|
+
iterations: 10,
|
|
21
|
+
};
|
|
22
|
+
/** Minimum score floor to prevent division by zero during PageRank normalization */
|
|
23
|
+
const MIN_PAGERANK_SCORE = 0.001;
|
|
24
|
+
/**
|
|
25
|
+
* Compute all graph metrics for a repository.
|
|
26
|
+
* Called after dependency extraction during indexing.
|
|
27
|
+
*
|
|
28
|
+
* @param db - DuckDB client
|
|
29
|
+
* @param repoId - Repository ID
|
|
30
|
+
* @param config - Optional configuration
|
|
31
|
+
*/
|
|
32
|
+
export async function computeGraphMetrics(db, repoId, config = {}) {
|
|
33
|
+
const cfg = { ...DEFAULT_CONFIG, ...config };
|
|
34
|
+
console.info(`[GraphMetrics] Computing metrics for repo ${repoId}...`);
|
|
35
|
+
// Compute in parallel where possible
|
|
36
|
+
await Promise.all([
|
|
37
|
+
computeDegreeCentrality(db, repoId),
|
|
38
|
+
precomputeInboundClosure(db, repoId, cfg.maxDepth),
|
|
39
|
+
]);
|
|
40
|
+
// PageRank depends on degree centrality, so run after
|
|
41
|
+
await computeImportanceScores(db, repoId, cfg.dampingFactor, cfg.iterations);
|
|
42
|
+
console.info(`[GraphMetrics] Completed for repo ${repoId}`);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Compute degree centrality (inbound and outbound counts).
|
|
46
|
+
*
|
|
47
|
+
* Uses SQL aggregation for efficiency.
|
|
48
|
+
*/
|
|
49
|
+
export async function computeDegreeCentrality(db, repoId) {
|
|
50
|
+
// Clear existing metrics for this repo
|
|
51
|
+
await db.run(`DELETE FROM graph_metrics WHERE repo_id = ?`, [repoId]);
|
|
52
|
+
// Compute outbound counts (files this file imports)
|
|
53
|
+
await db.run(`
|
|
54
|
+
INSERT INTO graph_metrics (repo_id, path, outbound_count, inbound_count, importance_score, computed_at)
|
|
55
|
+
SELECT
|
|
56
|
+
repo_id,
|
|
57
|
+
src_path as path,
|
|
58
|
+
COUNT(*) as outbound_count,
|
|
59
|
+
0 as inbound_count,
|
|
60
|
+
0.0 as importance_score,
|
|
61
|
+
CURRENT_TIMESTAMP as computed_at
|
|
62
|
+
FROM dependency
|
|
63
|
+
WHERE repo_id = ? AND dst_kind = 'path'
|
|
64
|
+
GROUP BY repo_id, src_path
|
|
65
|
+
`, [repoId]);
|
|
66
|
+
// Update inbound counts (files that import this file)
|
|
67
|
+
await db.run(`
|
|
68
|
+
WITH inbound_counts AS (
|
|
69
|
+
SELECT dst as path, COUNT(*) as cnt
|
|
70
|
+
FROM dependency
|
|
71
|
+
WHERE repo_id = ? AND dst_kind = 'path'
|
|
72
|
+
GROUP BY dst
|
|
73
|
+
)
|
|
74
|
+
UPDATE graph_metrics
|
|
75
|
+
SET inbound_count = COALESCE((
|
|
76
|
+
SELECT ic.cnt FROM inbound_counts ic WHERE ic.path = graph_metrics.path
|
|
77
|
+
), 0)
|
|
78
|
+
WHERE repo_id = ?
|
|
79
|
+
`, [repoId, repoId]);
|
|
80
|
+
// Insert files that only have inbound dependencies (not already in table)
|
|
81
|
+
await db.run(`
|
|
82
|
+
INSERT INTO graph_metrics (repo_id, path, outbound_count, inbound_count, importance_score, computed_at)
|
|
83
|
+
SELECT
|
|
84
|
+
? as repo_id,
|
|
85
|
+
dst as path,
|
|
86
|
+
0 as outbound_count,
|
|
87
|
+
COUNT(*) as inbound_count,
|
|
88
|
+
0.0 as importance_score,
|
|
89
|
+
CURRENT_TIMESTAMP as computed_at
|
|
90
|
+
FROM dependency
|
|
91
|
+
WHERE repo_id = ? AND dst_kind = 'path'
|
|
92
|
+
AND dst NOT IN (SELECT path FROM graph_metrics WHERE repo_id = ?)
|
|
93
|
+
GROUP BY dst
|
|
94
|
+
`, [repoId, repoId, repoId]);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Precompute inbound closure using BFS up to maxDepth.
|
|
98
|
+
*
|
|
99
|
+
* Uses recursive CTE for efficient computation.
|
|
100
|
+
*/
|
|
101
|
+
export async function precomputeInboundClosure(db, repoId, maxDepth) {
|
|
102
|
+
// Clear existing closure for this repo
|
|
103
|
+
await db.run(`DELETE FROM inbound_edges WHERE repo_id = ?`, [repoId]);
|
|
104
|
+
// Use recursive CTE to compute transitive closure
|
|
105
|
+
// This computes: for each file, which files import it (directly or transitively)
|
|
106
|
+
await db.run(`
|
|
107
|
+
INSERT INTO inbound_edges (repo_id, target_path, source_path, depth)
|
|
108
|
+
WITH RECURSIVE closure(target, source, depth) AS (
|
|
109
|
+
-- Base case: direct inbound edges (depth 1)
|
|
110
|
+
SELECT
|
|
111
|
+
dst as target,
|
|
112
|
+
src_path as source,
|
|
113
|
+
1 as depth
|
|
114
|
+
FROM dependency
|
|
115
|
+
WHERE repo_id = ? AND dst_kind = 'path'
|
|
116
|
+
|
|
117
|
+
UNION ALL
|
|
118
|
+
|
|
119
|
+
-- Recursive case: follow inbound edges from sources
|
|
120
|
+
SELECT
|
|
121
|
+
c.target,
|
|
122
|
+
d.src_path as source,
|
|
123
|
+
c.depth + 1 as depth
|
|
124
|
+
FROM closure c
|
|
125
|
+
JOIN dependency d ON d.dst = c.source AND d.repo_id = ? AND d.dst_kind = 'path'
|
|
126
|
+
WHERE c.depth < ?
|
|
127
|
+
-- Avoid cycles: don't add source if it would equal target
|
|
128
|
+
AND d.src_path != c.target
|
|
129
|
+
)
|
|
130
|
+
SELECT DISTINCT
|
|
131
|
+
? as repo_id,
|
|
132
|
+
target as target_path,
|
|
133
|
+
source as source_path,
|
|
134
|
+
MIN(depth) as depth -- Keep shortest path
|
|
135
|
+
FROM closure
|
|
136
|
+
GROUP BY target, source
|
|
137
|
+
`, [repoId, repoId, maxDepth, repoId]);
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Compute importance scores using PageRank-like algorithm.
|
|
141
|
+
*
|
|
142
|
+
* This is a simplified PageRank that:
|
|
143
|
+
* - Uses inbound edges for importance propagation
|
|
144
|
+
* - Runs for a fixed number of iterations
|
|
145
|
+
* - Normalizes scores to [0, 1]
|
|
146
|
+
*/
|
|
147
|
+
export async function computeImportanceScores(db, repoId, dampingFactor, iterations) {
|
|
148
|
+
// Get all files with their dependencies
|
|
149
|
+
const files = await db.all(`SELECT DISTINCT path FROM graph_metrics WHERE repo_id = ?`, [repoId]);
|
|
150
|
+
if (files.length === 0) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
const N = files.length;
|
|
154
|
+
const baseProbability = (1 - dampingFactor) / N;
|
|
155
|
+
// Initialize scores uniformly
|
|
156
|
+
const scores = new Map();
|
|
157
|
+
for (const f of files) {
|
|
158
|
+
scores.set(f.path, 1.0 / N);
|
|
159
|
+
}
|
|
160
|
+
// Load dependency edges (for outbound count)
|
|
161
|
+
const edges = await db.all(`
|
|
162
|
+
SELECT src_path as src, dst as dst
|
|
163
|
+
FROM dependency
|
|
164
|
+
WHERE repo_id = ? AND dst_kind = 'path'
|
|
165
|
+
`, [repoId]);
|
|
166
|
+
// Build adjacency structure
|
|
167
|
+
const outboundCount = new Map();
|
|
168
|
+
const inbound = new Map();
|
|
169
|
+
for (const e of edges) {
|
|
170
|
+
// Count outbound edges
|
|
171
|
+
outboundCount.set(e.src, (outboundCount.get(e.src) ?? 0) + 1);
|
|
172
|
+
// Track inbound edges
|
|
173
|
+
if (!inbound.has(e.dst)) {
|
|
174
|
+
inbound.set(e.dst, []);
|
|
175
|
+
}
|
|
176
|
+
inbound.get(e.dst).push(e.src);
|
|
177
|
+
}
|
|
178
|
+
// Power iteration
|
|
179
|
+
for (let i = 0; i < iterations; i++) {
|
|
180
|
+
const newScores = new Map();
|
|
181
|
+
for (const [path] of scores) {
|
|
182
|
+
let sum = 0;
|
|
183
|
+
const inboundPaths = inbound.get(path) ?? [];
|
|
184
|
+
for (const src of inboundPaths) {
|
|
185
|
+
const srcScore = scores.get(src) ?? 0;
|
|
186
|
+
const srcOutbound = outboundCount.get(src) ?? 1;
|
|
187
|
+
sum += srcScore / srcOutbound;
|
|
188
|
+
}
|
|
189
|
+
newScores.set(path, baseProbability + dampingFactor * sum);
|
|
190
|
+
}
|
|
191
|
+
// Update scores
|
|
192
|
+
for (const [path, score] of newScores) {
|
|
193
|
+
scores.set(path, score);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
// Normalize to [0, 1]
|
|
197
|
+
const maxScore = Math.max(...scores.values(), MIN_PAGERANK_SCORE);
|
|
198
|
+
// Update database
|
|
199
|
+
for (const [path, score] of scores) {
|
|
200
|
+
const normalized = score / maxScore;
|
|
201
|
+
await db.run(`UPDATE graph_metrics SET importance_score = ?, computed_at = CURRENT_TIMESTAMP
|
|
202
|
+
WHERE repo_id = ? AND path = ?`, [normalized, repoId, path]);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Incrementally update graph metrics for changed files.
|
|
207
|
+
* Used during incremental indexing to avoid full recomputation.
|
|
208
|
+
*
|
|
209
|
+
* @param db - DuckDB client
|
|
210
|
+
* @param repoId - Repository ID
|
|
211
|
+
* @param changedPaths - Paths that were added, modified, or removed
|
|
212
|
+
*/
|
|
213
|
+
export async function incrementalGraphUpdate(db, repoId, changedPaths) {
|
|
214
|
+
if (changedPaths.length === 0) {
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
console.info(`[GraphMetrics] Incremental update for ${changedPaths.length} files...`);
|
|
218
|
+
// Find all affected files (changed files + their dependents)
|
|
219
|
+
const placeholders = changedPaths.map(() => "?").join(", ");
|
|
220
|
+
// Get files that depend on changed files (need closure update)
|
|
221
|
+
const dependents = await db.all(`
|
|
222
|
+
SELECT DISTINCT src_path as path
|
|
223
|
+
FROM dependency
|
|
224
|
+
WHERE repo_id = ? AND dst IN (${placeholders}) AND dst_kind = 'path'
|
|
225
|
+
`, [repoId, ...changedPaths]);
|
|
226
|
+
const affectedPaths = new Set([...changedPaths, ...dependents.map((d) => d.path)]);
|
|
227
|
+
// Delete metrics for affected files
|
|
228
|
+
const affectedPlaceholders = Array.from(affectedPaths)
|
|
229
|
+
.map(() => "?")
|
|
230
|
+
.join(", ");
|
|
231
|
+
await db.run(`DELETE FROM graph_metrics WHERE repo_id = ? AND path IN (${affectedPlaceholders})`, [repoId, ...affectedPaths]);
|
|
232
|
+
// Delete inbound edges involving affected files
|
|
233
|
+
await db.run(`DELETE FROM inbound_edges WHERE repo_id = ?
|
|
234
|
+
AND (target_path IN (${affectedPlaceholders}) OR source_path IN (${affectedPlaceholders}))`, [repoId, ...affectedPaths, ...affectedPaths]);
|
|
235
|
+
// Recompute metrics (full recomputation is simpler and more reliable)
|
|
236
|
+
// In the future, could be optimized to only recompute affected subgraph
|
|
237
|
+
await computeGraphMetrics(db, repoId);
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=graph-metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-metrics.js","sourceRoot":"","sources":["../../../src/indexer/graph-metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -132,4 +132,19 @@ export declare function ensureDocumentMetadataTables(db: DuckDBClient): Promise<
|
|
|
132
132
|
* @throws Error if database update fails
|
|
133
133
|
*/
|
|
134
134
|
export declare function setFTSDirty(db: DuckDBClient, repoId: number): Promise<void>;
|
|
135
|
+
/**
|
|
136
|
+
* Graph Layer tables for hybrid search (Phase 3.2 of Issue #82)
|
|
137
|
+
*
|
|
138
|
+
* This function creates tables for:
|
|
139
|
+
* 1. graph_metrics - Precomputed graph centrality metrics per file
|
|
140
|
+
* 2. inbound_edges - Precomputed inbound closure (BFS up to depth 3)
|
|
141
|
+
* 3. cochange - Co-change graph from git history analysis
|
|
142
|
+
*
|
|
143
|
+
* Invariants (verified by Alloy/TLA+ specs in specs/):
|
|
144
|
+
* - DG1-DG3: Dependency graph structural invariants
|
|
145
|
+
* - CC1-CC4: Co-change graph invariants (canonical ordering, positive weight)
|
|
146
|
+
*
|
|
147
|
+
* @param db - DuckDB client
|
|
148
|
+
*/
|
|
149
|
+
export declare function ensureGraphLayerTables(db: DuckDBClient): Promise<void>;
|
|
135
150
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/indexer/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAmInD,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/indexer/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAmInD,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA0KtE;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAmD3E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAyFhF;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,UAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAoChG;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAU7E;AA8BD;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAW7E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,YAAY,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,UAAQ,GACf,OAAO,CAAC,OAAO,CAAC,CAKlB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,YAAY,EAChB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GACnC,OAAO,CAAC,OAAO,CAAC,CAkGlB;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAqBhF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAsFlF;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAcjF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,sBAAsB,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA6E5E"}
|
|
@@ -185,6 +185,8 @@ export async function ensureBaseSchema(db) {
|
|
|
185
185
|
`);
|
|
186
186
|
// Document metadata tables (delegated to dedicated migration function)
|
|
187
187
|
await ensureDocumentMetadataTables(db);
|
|
188
|
+
// Graph layer tables (Phase 3.2: Graph Layer for hybrid search)
|
|
189
|
+
await ensureGraphLayerTables(db);
|
|
188
190
|
await db.run(`
|
|
189
191
|
CREATE TABLE IF NOT EXISTS markdown_link (
|
|
190
192
|
repo_id INTEGER,
|
|
@@ -710,4 +712,88 @@ export async function setFTSDirty(db, repoId) {
|
|
|
710
712
|
fts_generation = fts_generation + 1
|
|
711
713
|
WHERE id = ?`, [repoId]);
|
|
712
714
|
}
|
|
715
|
+
/**
|
|
716
|
+
* Graph Layer tables for hybrid search (Phase 3.2 of Issue #82)
|
|
717
|
+
*
|
|
718
|
+
* This function creates tables for:
|
|
719
|
+
* 1. graph_metrics - Precomputed graph centrality metrics per file
|
|
720
|
+
* 2. inbound_edges - Precomputed inbound closure (BFS up to depth 3)
|
|
721
|
+
* 3. cochange - Co-change graph from git history analysis
|
|
722
|
+
*
|
|
723
|
+
* Invariants (verified by Alloy/TLA+ specs in specs/):
|
|
724
|
+
* - DG1-DG3: Dependency graph structural invariants
|
|
725
|
+
* - CC1-CC4: Co-change graph invariants (canonical ordering, positive weight)
|
|
726
|
+
*
|
|
727
|
+
* @param db - DuckDB client
|
|
728
|
+
*/
|
|
729
|
+
export async function ensureGraphLayerTables(db) {
|
|
730
|
+
// 1. graph_metrics table - Precomputed centrality metrics
|
|
731
|
+
await db.run(`
|
|
732
|
+
CREATE TABLE IF NOT EXISTS graph_metrics (
|
|
733
|
+
repo_id INTEGER,
|
|
734
|
+
path TEXT,
|
|
735
|
+
inbound_count INTEGER DEFAULT 0,
|
|
736
|
+
outbound_count INTEGER DEFAULT 0,
|
|
737
|
+
importance_score FLOAT DEFAULT 0.0,
|
|
738
|
+
computed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
739
|
+
PRIMARY KEY (repo_id, path)
|
|
740
|
+
)
|
|
741
|
+
`);
|
|
742
|
+
// Index for fast importance lookup during scoring
|
|
743
|
+
await db.run(`
|
|
744
|
+
CREATE INDEX IF NOT EXISTS idx_graph_importance
|
|
745
|
+
ON graph_metrics(repo_id, importance_score DESC)
|
|
746
|
+
`);
|
|
747
|
+
// 2. inbound_edges table - Precomputed BFS closure
|
|
748
|
+
await db.run(`
|
|
749
|
+
CREATE TABLE IF NOT EXISTS inbound_edges (
|
|
750
|
+
repo_id INTEGER,
|
|
751
|
+
target_path TEXT,
|
|
752
|
+
source_path TEXT,
|
|
753
|
+
depth INTEGER,
|
|
754
|
+
PRIMARY KEY (repo_id, target_path, source_path)
|
|
755
|
+
)
|
|
756
|
+
`);
|
|
757
|
+
// Index for fast inbound lookup by target
|
|
758
|
+
await db.run(`
|
|
759
|
+
CREATE INDEX IF NOT EXISTS idx_inbound_target
|
|
760
|
+
ON inbound_edges(repo_id, target_path)
|
|
761
|
+
`);
|
|
762
|
+
// 3. cochange table - Co-change graph from git history
|
|
763
|
+
// Invariants enforced:
|
|
764
|
+
// - CC1: Canonical ordering (file1 < file2) via CHECK constraint
|
|
765
|
+
// - CC3: Positive weight via CHECK constraint
|
|
766
|
+
await db.run(`
|
|
767
|
+
CREATE TABLE IF NOT EXISTS cochange (
|
|
768
|
+
repo_id INTEGER,
|
|
769
|
+
file1 TEXT,
|
|
770
|
+
file2 TEXT,
|
|
771
|
+
cochange_count INTEGER NOT NULL,
|
|
772
|
+
confidence FLOAT,
|
|
773
|
+
last_commit TEXT,
|
|
774
|
+
last_cochange_at TIMESTAMP,
|
|
775
|
+
PRIMARY KEY (repo_id, file1, file2)
|
|
776
|
+
)
|
|
777
|
+
`);
|
|
778
|
+
// Note: CHECK constraints are validated at application level for DuckDB compatibility
|
|
779
|
+
// CC1 (file1 < file2) and CC3 (cochange_count > 0) are enforced in cochange.ts
|
|
780
|
+
// Indexes for fast co-change lookup (bidirectional)
|
|
781
|
+
await db.run(`
|
|
782
|
+
CREATE INDEX IF NOT EXISTS idx_cochange_file1
|
|
783
|
+
ON cochange(repo_id, file1)
|
|
784
|
+
`);
|
|
785
|
+
await db.run(`
|
|
786
|
+
CREATE INDEX IF NOT EXISTS idx_cochange_file2
|
|
787
|
+
ON cochange(repo_id, file2)
|
|
788
|
+
`);
|
|
789
|
+
// 4. processed_commits table - Track processed commits for idempotency (CC4)
|
|
790
|
+
await db.run(`
|
|
791
|
+
CREATE TABLE IF NOT EXISTS processed_commits (
|
|
792
|
+
repo_id INTEGER,
|
|
793
|
+
commit_hash TEXT,
|
|
794
|
+
processed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
795
|
+
PRIMARY KEY (repo_id, commit_hash)
|
|
796
|
+
)
|
|
797
|
+
`);
|
|
798
|
+
}
|
|
713
799
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/indexer/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/indexer/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/server/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/server/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE;QACR,eAAe,EAAE,OAAO,CAAC;QACzB,oBAAoB,EAAE,OAAO,CAAC;QAC9B,aAAa,EAAE,OAAO,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,KAAK,EAAE;QACL,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE;YACR,cAAc,EAAE,MAAM,CAAC;YACvB,cAAc,EAAE,MAAM,CAAC;YACvB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,SAAS,EAAE;YACT,OAAO,EAAE,OAAO,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,UAAU,EAAE;YACV,OAAO,EAAE,OAAO,CAAC;YACjB,QAAQ,EAAE,MAAM,CAAC;YACjB,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,QAAQ,EAAE;YACR,OAAO,EAAE,OAAO,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,iBAAiB,EAAE,MAAM,CAAC;YAC1B,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,SAAS,EAAE;YACT,OAAO,EAAE,OAAO,CAAC;YACjB,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;QACF,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,EAAE;QACT,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,SAAS,EAAE,eAAe,CAAC;IAC3B,aAAa,EAAE,cAAc,EAAE,CAAC;CACjC;AAsGD,wBAAgB,gBAAgB,IAAI,YAAY,CAoI/C"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import process from "node:process";
|
|
2
|
+
import { ADAPTIVE_K_CATEGORY_ALIASES } from "../shared/adaptive-k-categories.js";
|
|
2
3
|
import { validateAdaptiveKConfig } from "../shared/config-validate-adaptive-k.js";
|
|
3
4
|
import { loadPathPenalties } from "./config-loader.js";
|
|
4
5
|
let cachedConfig = null;
|
|
@@ -106,8 +107,8 @@ export function loadServerConfig() {
|
|
|
106
107
|
const substringEnabled = envFlagEnabled(process.env.KIRI_HINT_ENABLE_SUBSTRING, true);
|
|
107
108
|
const hintsEnabled = directoryEnabled || dependencyEnabled || semanticEnabled;
|
|
108
109
|
const pathPenalties = loadPathPenalties();
|
|
109
|
-
const adaptiveKEnabled = envFlagEnabled(process.env.KIRI_ADAPTIVE_K_ENABLED,
|
|
110
|
-
const adaptiveKAllowedSet = parseEnvNumberList(process.env.KIRI_ADAPTIVE_K_ALLOWED_SET, [5, 10, 20]);
|
|
110
|
+
const adaptiveKEnabled = envFlagEnabled(process.env.KIRI_ADAPTIVE_K_ENABLED, true);
|
|
111
|
+
const adaptiveKAllowedSet = parseEnvNumberList(process.env.KIRI_ADAPTIVE_K_ALLOWED_SET, [5, 8, 10, 20]);
|
|
111
112
|
const adaptiveKMin = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_MIN, 3);
|
|
112
113
|
const adaptiveKMax = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_MAX, 50);
|
|
113
114
|
const adaptiveKBugfix = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_BUGFIX, 5);
|
|
@@ -117,27 +118,32 @@ export function loadServerConfig() {
|
|
|
117
118
|
const adaptiveKDefault = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_DEFAULT, 10);
|
|
118
119
|
const adaptiveKWhenDisabled = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_DISABLED_VALUE, 10);
|
|
119
120
|
// 追加カテゴリ: golden評価で使用される分類
|
|
120
|
-
const adaptiveKDebug = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_DEBUG,
|
|
121
|
-
const adaptiveKApi = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_API,
|
|
121
|
+
const adaptiveKDebug = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_DEBUG, 10);
|
|
122
|
+
const adaptiveKApi = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_API, 10);
|
|
122
123
|
const adaptiveKDocs = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_DOCS, 8);
|
|
123
124
|
const adaptiveKFeature = parseEnvNumber(process.env.KIRI_ADAPTIVE_K_FEATURE, 10);
|
|
125
|
+
const adaptiveKMap = {
|
|
126
|
+
bugfix: adaptiveKBugfix,
|
|
127
|
+
integration: adaptiveKIntegration,
|
|
128
|
+
testfail: adaptiveKTestfail,
|
|
129
|
+
performance: adaptiveKPerformance,
|
|
130
|
+
debug: adaptiveKDebug,
|
|
131
|
+
api: adaptiveKApi,
|
|
132
|
+
docs: adaptiveKDocs,
|
|
133
|
+
feature: adaptiveKFeature,
|
|
134
|
+
};
|
|
135
|
+
// docs-plain は docs に正規化
|
|
136
|
+
adaptiveKMap["docs-plain"] = adaptiveKDocs;
|
|
137
|
+
// エイリアスを正規カテゴリにマッピング(kMapの単一ソース化)
|
|
138
|
+
for (const [alias, target] of Object.entries(ADAPTIVE_K_CATEGORY_ALIASES)) {
|
|
139
|
+
adaptiveKMap[alias] = adaptiveKMap[target] ?? adaptiveKDefault;
|
|
140
|
+
}
|
|
124
141
|
const adaptiveK = {
|
|
125
142
|
enabled: adaptiveKEnabled,
|
|
126
143
|
allowedSet: adaptiveKAllowedSet,
|
|
127
144
|
kMin: adaptiveKMin,
|
|
128
145
|
kMax: adaptiveKMax,
|
|
129
|
-
kMap:
|
|
130
|
-
bugfix: adaptiveKBugfix,
|
|
131
|
-
integration: adaptiveKIntegration,
|
|
132
|
-
testfail: adaptiveKTestfail,
|
|
133
|
-
performance: adaptiveKPerformance,
|
|
134
|
-
// golden評価カテゴリ
|
|
135
|
-
debug: adaptiveKDebug,
|
|
136
|
-
api: adaptiveKApi,
|
|
137
|
-
docs: adaptiveKDocs,
|
|
138
|
-
"docs-plain": adaptiveKDocs,
|
|
139
|
-
feature: adaptiveKFeature,
|
|
140
|
-
},
|
|
146
|
+
kMap: adaptiveKMap,
|
|
141
147
|
kDefault: adaptiveKDefault,
|
|
142
148
|
kWhenDisabled: adaptiveKWhenDisabled,
|
|
143
149
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/config.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/config.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAGlF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAgDvD,IAAI,YAAY,GAAwB,IAAI,CAAC;AAE7C,SAAS,cAAc,CAAC,KAAyB,EAAE,cAAuB;IACxE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,OAAO,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,KAAK,CAAC;AAC9E,CAAC;AAED,SAAS,cAAc,CAAC,KAAyB,EAAE,QAAgB;IACjE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC3C,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,aAAa,CAAC,KAAyB,EAAE,QAAgB;IAChE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAyB,EAAE,QAAkB;IACvE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,KAAK;SAChB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;SACjC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC1D,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAoB;IAChD,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAC9C,IAAI,QAAQ,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,SAAS,CAAC,aAAa,GAAG,CAAC,IAAI,SAAS,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CACb,+BAA+B,KAAK,CAAC,MAAM,uCAAuC,CACnF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;IACjF,MAAM,oBAAoB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;IAC3F,MAAM,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,CAAC;IAEvF,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;IACjF,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;IAClF,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;IAChF,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;IAEtF,MAAM,YAAY,GAAG,gBAAgB,IAAI,iBAAiB,IAAI,eAAe,CAAC;IAE9E,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC;IAE1C,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;IACnF,MAAM,mBAAmB,GAAG,kBAAkB,CAC5C,OAAO,CAAC,GAAG,CAAC,2BAA2B,EACvC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CACf,CAAC;IACF,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;IACxE,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;IAC9E,MAAM,oBAAoB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;IACxF,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IACnF,MAAM,oBAAoB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;IACzF,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IACjF,MAAM,qBAAqB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;IAC7F,2BAA2B;IAC3B,MAAM,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;IAC1E,MAAM,gBAAgB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAEjF,MAAM,YAAY,GAA2B;QAC3C,MAAM,EAAE,eAAe;QACvB,WAAW,EAAE,oBAAoB;QACjC,QAAQ,EAAE,iBAAiB;QAC3B,WAAW,EAAE,oBAAoB;QACjC,KAAK,EAAE,cAAc;QACrB,GAAG,EAAE,YAAY;QACjB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,gBAAgB;KAC1B,CAAC;IAEF,yBAAyB;IACzB,YAAY,CAAC,YAAY,CAAC,GAAG,aAAa,CAAC;IAC3C,kCAAkC;IAClC,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,2BAA2B,CAAC,EAAE,CAAC;QAC1E,YAAY,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,gBAAgB,CAAC;IACjE,CAAC;IAED,MAAM,SAAS,GAAoB;QACjC,OAAO,EAAE,gBAAgB;QACzB,UAAU,EAAE,mBAAmB;QAC/B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,gBAAgB;QAC1B,aAAa,EAAE,qBAAqB;KACrC,CAAC;IAEF,MAAM,MAAM,GAAiB;QAC3B,QAAQ,EAAE;YACR,eAAe;YACf,oBAAoB;YACpB,aAAa;YACb,aAAa;SACd;QACD,KAAK,EAAE;YACL,OAAO,EAAE,YAAY;YACrB,QAAQ,EAAE;gBACR,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC;gBACvE,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC;gBACvE,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC;aAC9D;YACD,SAAS,EAAE;gBACT,OAAO,EAAE,gBAAgB;gBACzB,KAAK,EAAE,gBAAgB;oBACrB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;oBACtE,CAAC,CAAC,CAAC;gBACL,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;aAChF;YACD,UAAU,EAAE;gBACV,OAAO,EAAE,iBAAiB;gBAC1B,QAAQ,EAAE,iBAAiB;oBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;oBACrE,CAAC,CAAC,CAAC;gBACL,OAAO,EAAE,iBAAiB;oBACxB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;oBACpE,CAAC,CAAC,CAAC;aACN;YACD,QAAQ,EAAE;gBACR,OAAO,EAAE,eAAe;gBACxB,KAAK,EAAE,eAAe;oBACpB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;oBACjE,CAAC,CAAC,CAAC;gBACL,iBAAiB,EAAE,IAAI,CAAC,GAAG,CACzB,CAAC,EACD,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAC7D;gBACD,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,CAAC;aACpE;YACD,SAAS,EAAE;gBACT,OAAO,EAAE,gBAAgB;gBACzB,KAAK,EAAE,gBAAgB;oBACrB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;oBACvE,CAAC,CAAC,CAAC;gBACL,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC;aAC/D;YACD,YAAY,EAAE,YAAY;gBACxB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;gBACtE,CAAC,CAAC,CAAC;YACL,YAAY,EAAE,YAAY;gBACxB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;gBACvE,CAAC,CAAC,CAAC;SACN;QACD,SAAS,EAAE;YACT,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAC;YACpE,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;SACvE;QACD,SAAS;QACT,aAAa;KACd,CAAC;IAEF,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC7B,YAAY,GAAG,MAAM,CAAC;IACtB,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -2,12 +2,21 @@ import { ServerContext } from "../context.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* snippets_get tool のパラメータ
|
|
4
4
|
*/
|
|
5
|
+
/**
|
|
6
|
+
* view パラメータの有効な値
|
|
7
|
+
* - "auto": 現行動作を維持(シンボルがあればシンボル境界、なければ行範囲)
|
|
8
|
+
* - "symbol": 強制的にシンボル境界ベースのスニペットを返す
|
|
9
|
+
* - "lines": 行範囲ベースのスニペットを返す(シンボル境界を無視)
|
|
10
|
+
* - "full": ファイル全体を返す(安全上限付き)
|
|
11
|
+
*/
|
|
12
|
+
export type SnippetsGetView = "auto" | "symbol" | "lines" | "full";
|
|
5
13
|
export interface SnippetsGetParams {
|
|
6
14
|
path: string;
|
|
7
15
|
start_line?: number;
|
|
8
16
|
end_line?: number;
|
|
9
17
|
compact?: boolean;
|
|
10
18
|
includeLineNumbers?: boolean;
|
|
19
|
+
view?: SnippetsGetView;
|
|
11
20
|
}
|
|
12
21
|
/**
|
|
13
22
|
* snippets_get tool のレスポンス
|
|
@@ -20,6 +29,7 @@ export interface SnippetResult {
|
|
|
20
29
|
totalLines: number;
|
|
21
30
|
symbolName: string | null;
|
|
22
31
|
symbolKind: string | null;
|
|
32
|
+
truncated?: boolean;
|
|
23
33
|
}
|
|
24
34
|
/**
|
|
25
35
|
* snippets_get MCP Tool Handler
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snippets-get.d.ts","sourceRoot":"","sources":["../../../../src/server/handlers/snippets-get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"snippets-get.d.ts","sourceRoot":"","sources":["../../../../src/server/handlers/snippets-get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C;;GAEG;AACH;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAoDD;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,aAAa,CAAC,CAwJxB"}
|