milens 0.7.1 → 0.7.2
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/.agents/skills/adapters/SKILL.md +16 -11
- package/.agents/skills/analyzer/SKILL.md +11 -6
- package/.agents/skills/apps/SKILL.md +6 -1
- package/.agents/skills/docs/SKILL.md +6 -1
- package/.agents/skills/milens/SKILL.md +6 -3
- package/.agents/skills/orchestrator/SKILL.md +5 -0
- package/.agents/skills/parser/SKILL.md +11 -6
- package/.agents/skills/root/SKILL.md +21 -16
- package/.agents/skills/scripts/SKILL.md +9 -4
- package/.agents/skills/security/SKILL.md +10 -5
- package/.agents/skills/server/SKILL.md +18 -11
- package/.agents/skills/store/SKILL.md +10 -5
- package/.agents/skills/test/SKILL.md +15 -8
- package/.agents/skills/ui/SKILL.md +5 -0
- package/adapters/claude-code/.claude-plugin/plugin.json +1 -1
- package/adapters/claude-code/CLAUDE.md +2 -0
- package/adapters/claude-code/hooks/hooks.json +27 -0
- package/dist/agents-md.d.ts +1 -0
- package/dist/agents-md.js +45 -1
- package/dist/agents-md.js.map +1 -1
- package/dist/analyzer/config.js +32 -0
- package/dist/analyzer/config.js.map +1 -1
- package/dist/analyzer/engine.js +26 -2
- package/dist/analyzer/engine.js.map +1 -1
- package/dist/analyzer/enrich.js +68 -1
- package/dist/analyzer/enrich.js.map +1 -1
- package/dist/analyzer/resolver.d.ts +4 -1
- package/dist/analyzer/resolver.js +241 -38
- package/dist/analyzer/resolver.js.map +1 -1
- package/dist/analyzer/review.js +32 -2
- package/dist/analyzer/review.js.map +1 -1
- package/dist/analyzer/scanner.js +3 -0
- package/dist/analyzer/scanner.js.map +1 -1
- package/dist/analyzer/scope-resolver.js +1 -1
- package/dist/analyzer/scope-resolver.js.map +1 -1
- package/dist/build-info.d.ts +2 -2
- package/dist/build-info.js +2 -2
- package/dist/cli.js +84 -15
- package/dist/cli.js.map +1 -1
- package/dist/orchestrator/orchestrator.d.ts +1 -1
- package/dist/orchestrator/orchestrator.js +14 -6
- package/dist/orchestrator/orchestrator.js.map +1 -1
- package/dist/parser/extract.d.ts +7 -0
- package/dist/parser/extract.js +23 -1
- package/dist/parser/extract.js.map +1 -1
- package/dist/parser/lang-css.js +12 -0
- package/dist/parser/lang-css.js.map +1 -1
- package/dist/parser/lang-js.js +15 -4
- package/dist/parser/lang-js.js.map +1 -1
- package/dist/parser/lang-md.js +1 -0
- package/dist/parser/lang-md.js.map +1 -1
- package/dist/parser/lang-ts.js +40 -6
- package/dist/parser/lang-ts.js.map +1 -1
- package/dist/parser/lang-vue.js +0 -21
- package/dist/parser/lang-vue.js.map +1 -1
- package/dist/security/rules.js +22 -23
- package/dist/security/rules.js.map +1 -1
- package/dist/server/guard-hook.d.ts +10 -0
- package/dist/server/guard-hook.js +179 -0
- package/dist/server/guard-hook.js.map +1 -0
- package/dist/server/hooks.js +2 -1
- package/dist/server/hooks.js.map +1 -1
- package/dist/server/mcp.js +172 -30
- package/dist/server/mcp.js.map +1 -1
- package/dist/server/test-plan.d.ts +1 -0
- package/dist/server/test-plan.js +25 -7
- package/dist/server/test-plan.js.map +1 -1
- package/dist/server/tools/findings-report.d.ts +3 -0
- package/dist/server/tools/findings-report.js +170 -0
- package/dist/server/tools/findings-report.js.map +1 -0
- package/dist/server/tools/security.js +61 -5
- package/dist/server/tools/security.js.map +1 -1
- package/dist/server/tools/session.js +37 -17
- package/dist/server/tools/session.js.map +1 -1
- package/dist/server/tools/testing.js +58 -11
- package/dist/server/tools/testing.js.map +1 -1
- package/dist/skills.js +15 -9
- package/dist/skills.js.map +1 -1
- package/dist/store/annotations.d.ts +5 -0
- package/dist/store/annotations.js +45 -9
- package/dist/store/annotations.js.map +1 -1
- package/dist/store/db.d.ts +13 -0
- package/dist/store/db.js +146 -33
- package/dist/store/db.js.map +1 -1
- package/dist/store/registry.d.ts +1 -0
- package/dist/store/registry.js +17 -6
- package/dist/store/registry.js.map +1 -1
- package/dist/store/schema.sql +2 -1
- package/dist/types.d.ts +16 -1
- package/dist/uninstall.d.ts +1 -0
- package/dist/uninstall.js +33 -10
- package/dist/uninstall.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +0 -0
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
package/dist/store/db.js
CHANGED
|
@@ -131,6 +131,9 @@ export class Database {
|
|
|
131
131
|
if (!annNames.has('updated_at')) {
|
|
132
132
|
this.db.exec(`ALTER TABLE annotations ADD COLUMN updated_at TEXT NOT NULL DEFAULT (datetime('now'))`);
|
|
133
133
|
}
|
|
134
|
+
if (!annNames.has('symbol_hash')) {
|
|
135
|
+
this.db.exec(`ALTER TABLE annotations ADD COLUMN symbol_hash TEXT`);
|
|
136
|
+
}
|
|
134
137
|
// Rebuild index if column was renamed
|
|
135
138
|
if (annNames.has('symbol_id')) {
|
|
136
139
|
this.db.exec(`DROP INDEX IF EXISTS idx_annotations_symbol`);
|
|
@@ -258,20 +261,49 @@ export class Database {
|
|
|
258
261
|
return rows.map(rowToLink);
|
|
259
262
|
}
|
|
260
263
|
findDeadCode(kind, limit = 50) {
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
264
|
+
// Next.js/SvelteKit/api conventions are matched both at the repo root AND nested
|
|
265
|
+
// under a package subdirectory (e.g. monorepos with frontend/app/... instead of
|
|
266
|
+
// app/...) — a root-only 'app/%' pattern silently misses every monorepo layout.
|
|
267
|
+
const frameworkExclude = `AND s.file_path NOT LIKE 'app/%/page.%' AND s.file_path NOT LIKE '%/app/%/page.%'
|
|
268
|
+
AND s.file_path NOT LIKE 'app/%/layout.%' AND s.file_path NOT LIKE '%/app/%/layout.%'
|
|
269
|
+
AND s.file_path NOT LIKE 'app/page.%' AND s.file_path NOT LIKE '%/app/page.%'
|
|
270
|
+
AND s.file_path NOT LIKE 'app/layout.%' AND s.file_path NOT LIKE '%/app/layout.%'
|
|
271
|
+
AND s.file_path NOT LIKE 'app/%/loading.%' AND s.file_path NOT LIKE '%/app/%/loading.%'
|
|
272
|
+
AND s.file_path NOT LIKE 'app/%/error.%' AND s.file_path NOT LIKE '%/app/%/error.%'
|
|
273
|
+
AND s.file_path NOT LIKE 'app/%/not-found.%' AND s.file_path NOT LIKE '%/app/%/not-found.%'
|
|
274
|
+
AND s.file_path NOT LIKE 'app/%/template.%' AND s.file_path NOT LIKE '%/app/%/template.%'
|
|
275
|
+
AND s.file_path NOT LIKE 'app/%/global-error.%' AND s.file_path NOT LIKE '%/app/%/global-error.%'
|
|
276
|
+
AND s.file_path NOT LIKE 'app/%/default.%' AND s.file_path NOT LIKE '%/app/%/default.%'
|
|
277
|
+
AND s.file_path NOT LIKE 'app/api/%/route.%' AND s.file_path NOT LIKE '%/app/api/%/route.%'
|
|
278
|
+
AND s.file_path NOT LIKE 'app/%/route.%' AND s.file_path NOT LIKE '%/app/%/route.%'
|
|
279
|
+
AND s.file_path NOT LIKE 'jest.config.%'
|
|
280
|
+
AND s.file_path NOT LIKE 'src/routes/+page.%' AND s.file_path NOT LIKE '%/src/routes/+page.%'
|
|
281
|
+
AND s.file_path NOT LIKE 'src/routes/+layout.%' AND s.file_path NOT LIKE '%/src/routes/+layout.%'
|
|
282
|
+
AND s.file_path NOT LIKE '%/alembic/versions/%'
|
|
283
|
+
AND s.file_path NOT LIKE '%/migrations/%'
|
|
284
|
+
AND s.file_path NOT LIKE 'api/%' AND s.file_path NOT LIKE '%/api/%'
|
|
285
|
+
AND NOT ((s.file_path LIKE 'app/%' OR s.file_path LIKE '%/app/%') AND s.name IN ('generateStaticParams', 'metadata', 'generateMetadata', 'viewport', 'generateViewport', 'revalidate', 'dynamic', 'fetchCache', 'runtime', 'preferredRegion', 'maxDuration'))`;
|
|
286
|
+
// Vue SFC root components imported via <Component/> template tags get their
|
|
287
|
+
// import link on _top [module], not on the [class] root symbol. Treat the class
|
|
288
|
+
// as referenced if its file's _top module has incoming links from other files.
|
|
289
|
+
const vueRootGuard = `AND NOT (s.file_path LIKE '%.vue' AND s.kind = 'class' AND EXISTS (
|
|
290
|
+
SELECT 1 FROM symbols s2
|
|
291
|
+
JOIN links l2 ON l2.to_id = s2.id AND l2.type != 'contains'
|
|
292
|
+
WHERE s2.file_path = s.file_path AND s2.kind = 'module' AND s2.name = '_top'
|
|
293
|
+
AND EXISTS (SELECT 1 FROM links l3 WHERE l3.to_id = s2.id AND l3.type = 'imports')
|
|
294
|
+
))`;
|
|
265
295
|
const sql = kind
|
|
266
296
|
? `SELECT s.* FROM symbols s
|
|
267
297
|
LEFT JOIN links l ON l.to_id = s.id AND l.type != 'contains'
|
|
268
298
|
WHERE s.exported = 1 AND s.kind = ? AND s.kind != 'section' AND l.id IS NULL
|
|
269
299
|
${frameworkExclude}
|
|
300
|
+
${vueRootGuard}
|
|
270
301
|
LIMIT ?`
|
|
271
302
|
: `SELECT s.* FROM symbols s
|
|
272
303
|
LEFT JOIN links l ON l.to_id = s.id AND l.type != 'contains'
|
|
273
304
|
WHERE s.exported = 1 AND s.kind != 'section' AND l.id IS NULL
|
|
274
305
|
${frameworkExclude}
|
|
306
|
+
${vueRootGuard}
|
|
275
307
|
LIMIT ?`;
|
|
276
308
|
const rows = kind
|
|
277
309
|
? this.db.prepare(sql).all(kind, limit)
|
|
@@ -285,10 +317,28 @@ export class Database {
|
|
|
285
317
|
* findDeadCode (which requires zero incoming links of any kind).
|
|
286
318
|
*/
|
|
287
319
|
findTestOnlyReferenced(limit = 50) {
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
320
|
+
// Next.js/SvelteKit/api conventions are matched both at the repo root AND nested
|
|
321
|
+
// under a package subdirectory (e.g. monorepos with frontend/app/... instead of
|
|
322
|
+
// app/...) — a root-only 'app/%' pattern silently misses every monorepo layout.
|
|
323
|
+
const frameworkExclude = `AND s.file_path NOT LIKE 'app/%/page.%' AND s.file_path NOT LIKE '%/app/%/page.%'
|
|
324
|
+
AND s.file_path NOT LIKE 'app/%/layout.%' AND s.file_path NOT LIKE '%/app/%/layout.%'
|
|
325
|
+
AND s.file_path NOT LIKE 'app/page.%' AND s.file_path NOT LIKE '%/app/page.%'
|
|
326
|
+
AND s.file_path NOT LIKE 'app/layout.%' AND s.file_path NOT LIKE '%/app/layout.%'
|
|
327
|
+
AND s.file_path NOT LIKE 'app/%/loading.%' AND s.file_path NOT LIKE '%/app/%/loading.%'
|
|
328
|
+
AND s.file_path NOT LIKE 'app/%/error.%' AND s.file_path NOT LIKE '%/app/%/error.%'
|
|
329
|
+
AND s.file_path NOT LIKE 'app/%/not-found.%' AND s.file_path NOT LIKE '%/app/%/not-found.%'
|
|
330
|
+
AND s.file_path NOT LIKE 'app/%/template.%' AND s.file_path NOT LIKE '%/app/%/template.%'
|
|
331
|
+
AND s.file_path NOT LIKE 'app/%/global-error.%' AND s.file_path NOT LIKE '%/app/%/global-error.%'
|
|
332
|
+
AND s.file_path NOT LIKE 'app/%/default.%' AND s.file_path NOT LIKE '%/app/%/default.%'
|
|
333
|
+
AND s.file_path NOT LIKE 'app/api/%/route.%' AND s.file_path NOT LIKE '%/app/api/%/route.%'
|
|
334
|
+
AND s.file_path NOT LIKE 'app/%/route.%' AND s.file_path NOT LIKE '%/app/%/route.%'
|
|
335
|
+
AND s.file_path NOT LIKE 'jest.config.%'
|
|
336
|
+
AND s.file_path NOT LIKE 'src/routes/+page.%' AND s.file_path NOT LIKE '%/src/routes/+page.%'
|
|
337
|
+
AND s.file_path NOT LIKE 'src/routes/+layout.%' AND s.file_path NOT LIKE '%/src/routes/+layout.%'
|
|
338
|
+
AND s.file_path NOT LIKE '%/alembic/versions/%'
|
|
339
|
+
AND s.file_path NOT LIKE '%/migrations/%'
|
|
340
|
+
AND s.file_path NOT LIKE 'api/%' AND s.file_path NOT LIKE '%/api/%'
|
|
341
|
+
AND NOT ((s.file_path LIKE 'app/%' OR s.file_path LIKE '%/app/%') AND s.name IN ('generateStaticParams', 'metadata', 'generateMetadata', 'viewport', 'generateViewport', 'revalidate', 'dynamic', 'fetchCache', 'runtime', 'preferredRegion', 'maxDuration'))`;
|
|
292
342
|
// Get ALL exported symbols that HAVE at least one incoming link (not caught by findDeadCode).
|
|
293
343
|
// No SQL LIMIT here: the JS post-filter below narrows this down to test-only-referenced
|
|
294
344
|
// symbols, which can be a small minority of low-heat candidates — applying `limit` before
|
|
@@ -349,21 +399,52 @@ export class Database {
|
|
|
349
399
|
const toSyms = this.findSymbolByName(toName);
|
|
350
400
|
if (fromSyms.length === 0 || toSyms.length === 0)
|
|
351
401
|
return null;
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
402
|
+
return this.findPathFromId(fromSyms[0].id, toSyms.map(s => s.id), maxDepth);
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* Same as findPath, but takes an already-resolved source symbol id instead
|
|
406
|
+
* of re-resolving by name. Needed when the caller has disambiguated among
|
|
407
|
+
* several same-named symbols (e.g. picking the right file-scoped `_top`
|
|
408
|
+
* module out of many) — passing the name back through findPath() would
|
|
409
|
+
* silently re-resolve to an arbitrary same-named symbol and discard that
|
|
410
|
+
* disambiguation.
|
|
411
|
+
*/
|
|
412
|
+
findPathFromId(fromId, toNameOrIds, maxDepth = 5) {
|
|
413
|
+
const toIds = Array.isArray(toNameOrIds)
|
|
414
|
+
? new Set(toNameOrIds)
|
|
415
|
+
: new Set(this.findSymbolByName(toNameOrIds).map(s => s.id));
|
|
416
|
+
if (toIds.size === 0)
|
|
417
|
+
return null;
|
|
418
|
+
// Anchor branch 2 seeds the search by descending ONE 'contains' hop from the exact
|
|
419
|
+
// origin symbol into its own contained methods, then taking one real edge from there.
|
|
420
|
+
// This only ever applies to the literal starting symbol (later branches never re-descend
|
|
421
|
+
// into contains children mid-path) — a class/struct/trait passed as `fromId` typically
|
|
422
|
+
// has zero direct calls/imports edges of its own (its real behavior lives in its
|
|
423
|
+
// methods), so without this seed the search dead-ends immediately at depth 0 for any
|
|
424
|
+
// class-to-X query. Safe: it can't produce a false "relationship" between unrelated
|
|
425
|
+
// sibling methods, since it's scoped to fromId's own children only, never applied again
|
|
426
|
+
// to a class reached later in the chain.
|
|
355
427
|
const rows = this.db.prepare(`
|
|
356
428
|
WITH RECURSIVE chain(node_id, depth, via, path_ids) AS (
|
|
357
429
|
SELECT l.to_id, 1, l.type, ',' || l.from_id || ',' || l.to_id || ','
|
|
358
430
|
FROM links l WHERE l.from_id = ? AND l.type != 'contains'
|
|
359
431
|
UNION ALL
|
|
432
|
+
SELECT l2.to_id, 2, l2.type, ',' || l.from_id || ',' || l.to_id || ',' || l2.to_id || ','
|
|
433
|
+
FROM links l JOIN links l2 ON l2.from_id = l.to_id
|
|
434
|
+
WHERE l.from_id = ? AND l.type = 'contains' AND l2.type != 'contains'
|
|
435
|
+
UNION ALL
|
|
360
436
|
SELECT l.to_id, c.depth + 1, l.type, c.path_ids || l.to_id || ','
|
|
361
437
|
FROM links l JOIN chain c ON l.from_id = c.node_id
|
|
362
438
|
WHERE l.type != 'contains' AND c.depth < ?
|
|
363
439
|
AND c.path_ids NOT LIKE '%,' || l.to_id || ',%'
|
|
440
|
+
UNION ALL
|
|
441
|
+
SELECT l.from_id, c.depth + 1, l.type, c.path_ids || l.from_id || ','
|
|
442
|
+
FROM links l JOIN chain c ON l.to_id = c.node_id
|
|
443
|
+
WHERE l.type = 'contains' AND c.depth < ?
|
|
444
|
+
AND c.path_ids NOT LIKE '%,' || l.from_id || ',%'
|
|
364
445
|
)
|
|
365
446
|
SELECT node_id, depth, via, path_ids FROM chain ORDER BY depth
|
|
366
|
-
`).all(fromId, maxDepth);
|
|
447
|
+
`).all(fromId, fromId, maxDepth, maxDepth);
|
|
367
448
|
// Find the first (shortest-depth) row matching the target
|
|
368
449
|
const targetRow = rows.find(r => toIds.has(r.node_id));
|
|
369
450
|
if (!targetRow)
|
|
@@ -376,12 +457,21 @@ export class Database {
|
|
|
376
457
|
const sym = this.findSymbolById(idChain[i]);
|
|
377
458
|
if (!sym)
|
|
378
459
|
continue;
|
|
379
|
-
// Determine via for this hop: lookup link from idChain[i] → idChain[i+1]
|
|
460
|
+
// Determine via for this hop: lookup link from idChain[i] → idChain[i+1]. Prefer a
|
|
461
|
+
// real calls/imports/etc. edge when one exists between the two nodes; only report
|
|
462
|
+
// 'contains' (in either direction — the traversal now allows both a class-to-method
|
|
463
|
+
// seed step and a method-to-class arrival step) when that's the only relationship.
|
|
380
464
|
let via = 'calls';
|
|
381
465
|
if (i < idChain.length - 1) {
|
|
382
466
|
const linkRow = this.db.prepare('SELECT type FROM links WHERE from_id = ? AND to_id = ? AND type != ? LIMIT 1').get(idChain[i], idChain[i + 1], 'contains');
|
|
383
|
-
if (linkRow)
|
|
467
|
+
if (linkRow) {
|
|
384
468
|
via = linkRow.type;
|
|
469
|
+
}
|
|
470
|
+
else {
|
|
471
|
+
const containsRow = this.db.prepare('SELECT type FROM links WHERE ((from_id = ? AND to_id = ?) OR (from_id = ? AND to_id = ?)) AND type = ? LIMIT 1').get(idChain[i], idChain[i + 1], idChain[i + 1], idChain[i], 'contains');
|
|
472
|
+
if (containsRow)
|
|
473
|
+
via = containsRow.type;
|
|
474
|
+
}
|
|
385
475
|
}
|
|
386
476
|
result.push({ symbol: sym, depth: i, via });
|
|
387
477
|
}
|
|
@@ -459,7 +549,16 @@ export class Database {
|
|
|
459
549
|
if (incoming.length === 0) {
|
|
460
550
|
// Reached an entrypoint — save this path
|
|
461
551
|
// _top modules represent file-level entrypoints (e.g., top-level code execution)
|
|
462
|
-
if
|
|
552
|
+
// Class methods: if the method is contained by an exported class, treat it as
|
|
553
|
+
// a de facto entrypoint (framework-invoked handlers like NestJS controllers).
|
|
554
|
+
const isExportedClassMember = !sym?.exported && sym?.kind === 'method' &&
|
|
555
|
+
this.getIncomingLinks(currentId).some(l => {
|
|
556
|
+
if (l.type !== 'contains')
|
|
557
|
+
return false;
|
|
558
|
+
const containingClass = this.findSymbolById(l.fromId);
|
|
559
|
+
return containingClass?.exported === true;
|
|
560
|
+
});
|
|
561
|
+
if (sym?.exported || (sym?.kind === 'module' && sym?.name === '_top') || isExportedClassMember) {
|
|
463
562
|
paths.push({ path: [...currentPath] });
|
|
464
563
|
}
|
|
465
564
|
visited.delete(currentId);
|
|
@@ -622,7 +721,10 @@ export class Database {
|
|
|
622
721
|
}
|
|
623
722
|
// ── Test file detection ──
|
|
624
723
|
isTestFile(filePath) {
|
|
625
|
-
|
|
724
|
+
const codeExt = /\.(ts|tsx|js|jsx|mjs|cjs|py|go|rb|java|php|rs)$/i;
|
|
725
|
+
if (!codeExt.test(filePath))
|
|
726
|
+
return false;
|
|
727
|
+
return /[/\\]tests?[/\\]/.test(filePath) || /\.(test|spec)\./i.test(filePath);
|
|
626
728
|
}
|
|
627
729
|
// ── Heat / hubs ──
|
|
628
730
|
getTopHubs(limit) {
|
|
@@ -736,30 +838,41 @@ export class Database {
|
|
|
736
838
|
const target = this.findSymbolById(symbolId);
|
|
737
839
|
if (!target)
|
|
738
840
|
return [];
|
|
739
|
-
const
|
|
740
|
-
const
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
841
|
+
const CONTAINER_KINDS = new Set(['class', 'struct', 'trait']);
|
|
842
|
+
const buildSig = (id) => {
|
|
843
|
+
const sig = new Set();
|
|
844
|
+
const sym = this.findSymbolById(id);
|
|
845
|
+
const incoming = this.getIncomingLinks(id).filter(l => l.type !== 'contains');
|
|
846
|
+
const outgoing = this.getOutgoingLinks(id).filter(l => l.type !== 'contains');
|
|
847
|
+
for (const link of incoming)
|
|
848
|
+
sig.add(link.fromId);
|
|
849
|
+
for (const link of outgoing)
|
|
850
|
+
sig.add(link.toId);
|
|
851
|
+
if (sym && CONTAINER_KINDS.has(sym.kind)) {
|
|
852
|
+
const contained = this.getOutgoingLinks(id).filter(l => l.type === 'contains');
|
|
853
|
+
for (const cl of contained) {
|
|
854
|
+
const mIn = this.getIncomingLinks(cl.toId).filter(l => l.type !== 'contains');
|
|
855
|
+
const mOut = this.getOutgoingLinks(cl.toId).filter(l => l.type !== 'contains');
|
|
856
|
+
for (const link of mIn)
|
|
857
|
+
sig.add(link.fromId);
|
|
858
|
+
for (const link of mOut)
|
|
859
|
+
sig.add(link.toId);
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
return sig;
|
|
863
|
+
};
|
|
864
|
+
const targetSig = buildSig(symbolId);
|
|
746
865
|
// Search across all exported symbols, not just same-file siblings
|
|
747
866
|
const allSymbols = this.getAllSymbols().filter(s => s.id !== symbolId && s.exported);
|
|
748
867
|
const results = [];
|
|
749
868
|
for (const candidate of allSymbols) {
|
|
750
|
-
const
|
|
751
|
-
const candOutgoing = this.getOutgoingLinks(candidate.id).filter(l => l.type !== 'contains');
|
|
752
|
-
const candidateLinks = new Set();
|
|
753
|
-
for (const link of candIncoming)
|
|
754
|
-
candidateLinks.add(link.fromId);
|
|
755
|
-
for (const link of candOutgoing)
|
|
756
|
-
candidateLinks.add(link.toId);
|
|
869
|
+
const candidateSig = buildSig(candidate.id);
|
|
757
870
|
let intersection = 0;
|
|
758
|
-
for (const id of
|
|
759
|
-
if (
|
|
871
|
+
for (const id of targetSig) {
|
|
872
|
+
if (candidateSig.has(id))
|
|
760
873
|
intersection++;
|
|
761
874
|
}
|
|
762
|
-
const union = new Set([...
|
|
875
|
+
const union = new Set([...targetSig, ...candidateSig]).size;
|
|
763
876
|
const similarity = union > 0 ? intersection / union : 0;
|
|
764
877
|
if (similarity >= 0.15) {
|
|
765
878
|
results.push({ symbol: candidate, similarity: Math.round(similarity * 100) / 100 });
|
package/dist/store/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/store/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/store/db.ts"],"names":[],"mappings":"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"}
|
package/dist/store/registry.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare class RepoRegistry {
|
|
|
5
5
|
private load;
|
|
6
6
|
private save;
|
|
7
7
|
register(rootPath: string, dbPath: string, hash: string): void;
|
|
8
|
+
private reloadIfStale;
|
|
8
9
|
findByRoot(rootPath: string): RepoEntry | undefined;
|
|
9
10
|
findDbPath(rootPath: string): string | null;
|
|
10
11
|
listAll(): RepoEntry[];
|
package/dist/store/registry.js
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { join, resolve } from 'node:path';
|
|
2
2
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
3
3
|
import { homedir } from 'node:os';
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
/** Resolved lazily (not at module load) so MILENS_HOME can be overridden — e.g. by tests wanting an isolated registry instead of the real user's ~/.milens. */
|
|
5
|
+
function getMilensHome() {
|
|
6
|
+
return process.env.MILENS_HOME || join(homedir(), '.milens');
|
|
7
|
+
}
|
|
8
|
+
function getRegistryFile() {
|
|
9
|
+
return join(getMilensHome(), 'registry.json');
|
|
10
|
+
}
|
|
6
11
|
/** Normalize path: resolve to absolute + uppercase drive letter on Windows. */
|
|
7
12
|
function normalizePath(p) {
|
|
8
13
|
const abs = resolve(p);
|
|
@@ -18,8 +23,9 @@ export class RepoRegistry {
|
|
|
18
23
|
}
|
|
19
24
|
load() {
|
|
20
25
|
try {
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
const registryFile = getRegistryFile();
|
|
27
|
+
if (existsSync(registryFile)) {
|
|
28
|
+
const data = JSON.parse(readFileSync(registryFile, 'utf-8'));
|
|
23
29
|
this.entries = Array.isArray(data) ? data : [];
|
|
24
30
|
}
|
|
25
31
|
}
|
|
@@ -28,8 +34,8 @@ export class RepoRegistry {
|
|
|
28
34
|
}
|
|
29
35
|
}
|
|
30
36
|
save() {
|
|
31
|
-
mkdirSync(
|
|
32
|
-
writeFileSync(
|
|
37
|
+
mkdirSync(getMilensHome(), { recursive: true });
|
|
38
|
+
writeFileSync(getRegistryFile(), JSON.stringify(this.entries, null, 2));
|
|
33
39
|
}
|
|
34
40
|
register(rootPath, dbPath, hash) {
|
|
35
41
|
const absolute = normalizePath(rootPath);
|
|
@@ -48,7 +54,11 @@ export class RepoRegistry {
|
|
|
48
54
|
}
|
|
49
55
|
this.save();
|
|
50
56
|
}
|
|
57
|
+
reloadIfStale() {
|
|
58
|
+
this.load();
|
|
59
|
+
}
|
|
51
60
|
findByRoot(rootPath) {
|
|
61
|
+
this.reloadIfStale();
|
|
52
62
|
const absolute = normalizePath(rootPath);
|
|
53
63
|
return this.entries.find(e => e.rootPath === absolute);
|
|
54
64
|
}
|
|
@@ -61,6 +71,7 @@ export class RepoRegistry {
|
|
|
61
71
|
return entry.dbPath;
|
|
62
72
|
}
|
|
63
73
|
listAll() {
|
|
74
|
+
this.reloadIfStale();
|
|
64
75
|
return [...this.entries];
|
|
65
76
|
}
|
|
66
77
|
remove(rootPath) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/store/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/store/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/store/schema.sql
CHANGED
|
@@ -90,7 +90,8 @@ CREATE TABLE IF NOT EXISTS annotations (
|
|
|
90
90
|
confidence REAL DEFAULT 0.5,
|
|
91
91
|
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
92
92
|
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
93
|
-
expires_at TEXT
|
|
93
|
+
expires_at TEXT,
|
|
94
|
+
symbol_hash TEXT
|
|
94
95
|
);
|
|
95
96
|
|
|
96
97
|
CREATE INDEX IF NOT EXISTS idx_annotations_symbol ON annotations(symbol, key);
|
package/dist/types.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export interface CodeSymbol {
|
|
|
13
13
|
heat?: number;
|
|
14
14
|
}
|
|
15
15
|
export type SymbolRole = 'entrypoint' | 'hub' | 'utility' | 'leaf' | 'datatype';
|
|
16
|
-
export type LinkType = 'imports' | 'calls' | 'extends' | 'implements' | 'contains';
|
|
16
|
+
export type LinkType = 'imports' | 'calls' | 'extends' | 'implements' | 'contains' | 'references';
|
|
17
17
|
export interface SymbolLink {
|
|
18
18
|
id: string;
|
|
19
19
|
fromId: string;
|
|
@@ -65,6 +65,7 @@ export interface ExtractionResult {
|
|
|
65
65
|
assignmentBindings: RawAssignmentBinding[];
|
|
66
66
|
returnTypes: RawReturnType[];
|
|
67
67
|
callResultBindings: RawCallResultBinding[];
|
|
68
|
+
localBindings: RawLocalBinding[];
|
|
68
69
|
}
|
|
69
70
|
export interface RawReExport {
|
|
70
71
|
filePath: string;
|
|
@@ -101,6 +102,19 @@ export interface RawCallResultBinding {
|
|
|
101
102
|
line: number;
|
|
102
103
|
scope?: string;
|
|
103
104
|
}
|
|
105
|
+
/** A name declared purely locally within a function/method scope — a parameter,
|
|
106
|
+
* a `const`/`let`/`var` declarator, or an array/object destructuring target
|
|
107
|
+
* (e.g. `const [x, setX] = useState()`, `function f(onClose) {...}`). Such names
|
|
108
|
+
* can never be project-wide symbols, imports, or globals by construction — the
|
|
109
|
+
* resolver uses this to recognize a 4th, legitimate classification for bare calls
|
|
110
|
+
* ("locally bound, not applicable to link") instead of miscounting them as
|
|
111
|
+
* unresolved just because they match none of the other three known categories. */
|
|
112
|
+
export interface RawLocalBinding {
|
|
113
|
+
filePath: string;
|
|
114
|
+
name: string;
|
|
115
|
+
scope: string;
|
|
116
|
+
line: number;
|
|
117
|
+
}
|
|
104
118
|
export interface AnalysisStats {
|
|
105
119
|
filesScanned: number;
|
|
106
120
|
filesParsed: number;
|
|
@@ -129,6 +143,7 @@ export interface Annotation {
|
|
|
129
143
|
confidence: number;
|
|
130
144
|
createdAt: string;
|
|
131
145
|
updatedAt: string;
|
|
146
|
+
symbolHash?: string;
|
|
132
147
|
}
|
|
133
148
|
export interface Session {
|
|
134
149
|
id: string;
|