@optave/codegraph 3.11.1 → 3.12.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 +8 -8
- package/dist/db/migrations.d.ts.map +1 -1
- package/dist/db/migrations.js +7 -0
- package/dist/db/migrations.js.map +1 -1
- package/dist/domain/analysis/module-map.d.ts +2 -0
- package/dist/domain/analysis/module-map.d.ts.map +1 -1
- package/dist/domain/analysis/module-map.js +24 -2
- package/dist/domain/analysis/module-map.js.map +1 -1
- package/dist/domain/graph/builder/call-resolver.d.ts +73 -0
- package/dist/domain/graph/builder/call-resolver.d.ts.map +1 -0
- package/dist/domain/graph/builder/call-resolver.js +292 -0
- package/dist/domain/graph/builder/call-resolver.js.map +1 -0
- package/dist/domain/graph/builder/cha.d.ts +61 -0
- package/dist/domain/graph/builder/cha.d.ts.map +1 -0
- package/dist/domain/graph/builder/cha.js +143 -0
- package/dist/domain/graph/builder/cha.js.map +1 -0
- package/dist/domain/graph/builder/context.d.ts +3 -0
- package/dist/domain/graph/builder/context.d.ts.map +1 -1
- package/dist/domain/graph/builder/context.js +2 -0
- package/dist/domain/graph/builder/context.js.map +1 -1
- package/dist/domain/graph/builder/helpers.d.ts +17 -1
- package/dist/domain/graph/builder/helpers.d.ts.map +1 -1
- package/dist/domain/graph/builder/helpers.js +159 -5
- package/dist/domain/graph/builder/helpers.js.map +1 -1
- package/dist/domain/graph/builder/incremental.d.ts.map +1 -1
- package/dist/domain/graph/builder/incremental.js +147 -54
- package/dist/domain/graph/builder/incremental.js.map +1 -1
- package/dist/domain/graph/builder/stages/build-edges.d.ts +2 -0
- package/dist/domain/graph/builder/stages/build-edges.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/build-edges.js +932 -110
- package/dist/domain/graph/builder/stages/build-edges.js.map +1 -1
- package/dist/domain/graph/builder/stages/detect-changes.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/detect-changes.js +2 -1
- package/dist/domain/graph/builder/stages/detect-changes.js.map +1 -1
- package/dist/domain/graph/builder/stages/native-orchestrator.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/native-orchestrator.js +501 -14
- package/dist/domain/graph/builder/stages/native-orchestrator.js.map +1 -1
- package/dist/domain/graph/builder/stages/resolve-imports.d.ts +1 -0
- package/dist/domain/graph/builder/stages/resolve-imports.d.ts.map +1 -1
- package/dist/domain/graph/builder/stages/resolve-imports.js +9 -0
- package/dist/domain/graph/builder/stages/resolve-imports.js.map +1 -1
- package/dist/domain/graph/journal.js +1 -1
- package/dist/domain/graph/journal.js.map +1 -1
- package/dist/domain/graph/resolver/points-to.d.ts +53 -0
- package/dist/domain/graph/resolver/points-to.d.ts.map +1 -0
- package/dist/domain/graph/resolver/points-to.js +213 -0
- package/dist/domain/graph/resolver/points-to.js.map +1 -0
- package/dist/domain/graph/resolver/ts-resolver.d.ts +9 -0
- package/dist/domain/graph/resolver/ts-resolver.d.ts.map +1 -0
- package/dist/domain/graph/resolver/ts-resolver.js +476 -0
- package/dist/domain/graph/resolver/ts-resolver.js.map +1 -0
- package/dist/domain/graph/watcher.d.ts.map +1 -1
- package/dist/domain/graph/watcher.js +5 -2
- package/dist/domain/graph/watcher.js.map +1 -1
- package/dist/domain/parser.d.ts +10 -1
- package/dist/domain/parser.d.ts.map +1 -1
- package/dist/domain/parser.js +39 -7
- package/dist/domain/parser.js.map +1 -1
- package/dist/domain/wasm-worker-entry.js +25 -0
- package/dist/domain/wasm-worker-entry.js.map +1 -1
- package/dist/domain/wasm-worker-pool.d.ts.map +1 -1
- package/dist/domain/wasm-worker-pool.js +32 -0
- package/dist/domain/wasm-worker-pool.js.map +1 -1
- package/dist/domain/wasm-worker-protocol.d.ts +14 -1
- package/dist/domain/wasm-worker-protocol.d.ts.map +1 -1
- package/dist/extractors/c.js +3 -3
- package/dist/extractors/c.js.map +1 -1
- package/dist/extractors/clojure.js +1 -1
- package/dist/extractors/clojure.js.map +1 -1
- package/dist/extractors/cpp.js +3 -3
- package/dist/extractors/cpp.js.map +1 -1
- package/dist/extractors/csharp.d.ts.map +1 -1
- package/dist/extractors/csharp.js +37 -8
- package/dist/extractors/csharp.js.map +1 -1
- package/dist/extractors/cuda.js +3 -3
- package/dist/extractors/cuda.js.map +1 -1
- package/dist/extractors/elixir.js +6 -6
- package/dist/extractors/elixir.js.map +1 -1
- package/dist/extractors/fsharp.js +1 -1
- package/dist/extractors/fsharp.js.map +1 -1
- package/dist/extractors/go.js +5 -5
- package/dist/extractors/go.js.map +1 -1
- package/dist/extractors/haskell.js +1 -1
- package/dist/extractors/haskell.js.map +1 -1
- package/dist/extractors/java.js +2 -2
- package/dist/extractors/java.js.map +1 -1
- package/dist/extractors/javascript.d.ts +2 -0
- package/dist/extractors/javascript.d.ts.map +1 -1
- package/dist/extractors/javascript.js +1674 -64
- package/dist/extractors/javascript.js.map +1 -1
- package/dist/extractors/kotlin.js +5 -5
- package/dist/extractors/kotlin.js.map +1 -1
- package/dist/extractors/lua.js +1 -1
- package/dist/extractors/lua.js.map +1 -1
- package/dist/extractors/objc.js +3 -3
- package/dist/extractors/objc.js.map +1 -1
- package/dist/extractors/ocaml.js +1 -1
- package/dist/extractors/ocaml.js.map +1 -1
- package/dist/extractors/php.js +2 -2
- package/dist/extractors/php.js.map +1 -1
- package/dist/extractors/python.js +7 -7
- package/dist/extractors/python.js.map +1 -1
- package/dist/extractors/ruby.js +2 -2
- package/dist/extractors/ruby.js.map +1 -1
- package/dist/extractors/scala.js +1 -1
- package/dist/extractors/scala.js.map +1 -1
- package/dist/extractors/solidity.js +1 -1
- package/dist/extractors/solidity.js.map +1 -1
- package/dist/extractors/swift.js +4 -4
- package/dist/extractors/swift.js.map +1 -1
- package/dist/extractors/zig.js +4 -4
- package/dist/extractors/zig.js.map +1 -1
- package/dist/features/structure.d.ts.map +1 -1
- package/dist/features/structure.js +121 -16
- package/dist/features/structure.js.map +1 -1
- package/dist/infrastructure/config.d.ts +10 -0
- package/dist/infrastructure/config.d.ts.map +1 -1
- package/dist/infrastructure/config.js +15 -0
- package/dist/infrastructure/config.js.map +1 -1
- package/dist/infrastructure/native.d.ts +11 -0
- package/dist/infrastructure/native.d.ts.map +1 -1
- package/dist/infrastructure/native.js +78 -5
- package/dist/infrastructure/native.js.map +1 -1
- package/dist/presentation/queries-cli/overview.d.ts.map +1 -1
- package/dist/presentation/queries-cli/overview.js +5 -0
- package/dist/presentation/queries-cli/overview.js.map +1 -1
- package/dist/types.d.ts +184 -0
- package/dist/types.d.ts.map +1 -1
- package/grammars/tree-sitter-erlang.wasm +0 -0
- package/package.json +9 -9
- package/src/db/migrations.ts +7 -0
- package/src/domain/analysis/module-map.ts +29 -1
- package/src/domain/graph/builder/call-resolver.ts +351 -0
- package/src/domain/graph/builder/cha.ts +175 -0
- package/src/domain/graph/builder/context.ts +3 -0
- package/src/domain/graph/builder/helpers.ts +175 -5
- package/src/domain/graph/builder/incremental.ts +186 -66
- package/src/domain/graph/builder/stages/build-edges.ts +1146 -146
- package/src/domain/graph/builder/stages/detect-changes.ts +3 -1
- package/src/domain/graph/builder/stages/native-orchestrator.ts +583 -20
- package/src/domain/graph/builder/stages/resolve-imports.ts +14 -0
- package/src/domain/graph/journal.ts +1 -1
- package/src/domain/graph/resolver/points-to.ts +254 -0
- package/src/domain/graph/resolver/ts-resolver.ts +536 -0
- package/src/domain/graph/watcher.ts +4 -2
- package/src/domain/parser.ts +43 -5
- package/src/domain/wasm-worker-entry.ts +25 -0
- package/src/domain/wasm-worker-pool.ts +21 -0
- package/src/domain/wasm-worker-protocol.ts +14 -0
- package/src/extractors/c.ts +3 -3
- package/src/extractors/clojure.ts +1 -1
- package/src/extractors/cpp.ts +3 -3
- package/src/extractors/csharp.ts +33 -9
- package/src/extractors/cuda.ts +3 -3
- package/src/extractors/elixir.ts +6 -6
- package/src/extractors/fsharp.ts +1 -1
- package/src/extractors/go.ts +5 -5
- package/src/extractors/haskell.ts +1 -1
- package/src/extractors/java.ts +2 -2
- package/src/extractors/javascript.ts +1802 -66
- package/src/extractors/kotlin.ts +5 -5
- package/src/extractors/lua.ts +1 -1
- package/src/extractors/objc.ts +3 -3
- package/src/extractors/ocaml.ts +1 -1
- package/src/extractors/php.ts +2 -2
- package/src/extractors/python.ts +7 -7
- package/src/extractors/ruby.ts +2 -2
- package/src/extractors/scala.ts +1 -1
- package/src/extractors/solidity.ts +1 -1
- package/src/extractors/swift.ts +4 -4
- package/src/extractors/zig.ts +4 -4
- package/src/features/structure.ts +143 -23
- package/src/infrastructure/config.ts +15 -0
- package/src/infrastructure/native.ts +87 -5
- package/src/presentation/queries-cli/overview.ts +15 -1
- package/src/types.ts +194 -0
|
@@ -14,6 +14,7 @@ import { debug, warn } from '../../../infrastructure/logger.js';
|
|
|
14
14
|
import { normalizePath } from '../../../shared/constants.js';
|
|
15
15
|
import { parseFileIncremental } from '../../parser.js';
|
|
16
16
|
import { computeConfidence, resolveImportPath } from '../resolve.js';
|
|
17
|
+
import { findCaller, resolveCallTargets, resolveReceiverEdge, } from './call-resolver.js';
|
|
17
18
|
import { BUILTIN_RECEIVERS, readFileSafe } from './helpers.js';
|
|
18
19
|
// ── Node insertion ──────────────────────────────────────────────────────
|
|
19
20
|
function insertFileNodes(stmts, relPath, symbols) {
|
|
@@ -109,8 +110,9 @@ function rebuildReverseDepEdges(db, rootDir, depRelPath, symbols, stmts, skipBar
|
|
|
109
110
|
let edgesAdded = buildContainmentEdges(db, stmts, depRelPath, symbols);
|
|
110
111
|
// Don't rebuild dir->file containment for reverse-deps (it was never deleted)
|
|
111
112
|
edgesAdded += buildImportEdges(stmts, depRelPath, symbols, rootDir, fileNodeRow.id, aliases, skipBarrel ? null : db);
|
|
112
|
-
const importedNames = buildImportedNamesMap(symbols, rootDir, depRelPath, aliases);
|
|
113
|
-
edgesAdded += buildCallEdges(stmts, depRelPath, symbols, fileNodeRow, importedNames);
|
|
113
|
+
const importedNames = buildImportedNamesMap(symbols, rootDir, depRelPath, aliases, db);
|
|
114
|
+
edgesAdded += buildCallEdges(db, stmts, depRelPath, symbols, fileNodeRow, importedNames);
|
|
115
|
+
edgesAdded += buildClassHierarchyEdges(stmts, depRelPath, symbols);
|
|
114
116
|
return edgesAdded;
|
|
115
117
|
}
|
|
116
118
|
// ── Directory containment edges ────────────────────────────────────────
|
|
@@ -228,7 +230,13 @@ function emitEdgesForImport(stmts, imp, fileNodeId, relPath, rootDir, aliases, d
|
|
|
228
230
|
const targetRow = stmts.getNodeId.get(resolvedPath, 'file', resolvedPath, 0);
|
|
229
231
|
if (!targetRow)
|
|
230
232
|
return 0;
|
|
231
|
-
const edgeKind = imp.reexport
|
|
233
|
+
const edgeKind = imp.reexport
|
|
234
|
+
? 'reexports'
|
|
235
|
+
: imp.typeOnly
|
|
236
|
+
? 'imports-type'
|
|
237
|
+
: imp.dynamicImport
|
|
238
|
+
? 'dynamic-imports'
|
|
239
|
+
: 'imports';
|
|
232
240
|
stmts.insertEdge.run(fileNodeId, targetRow.id, edgeKind, 1.0, 0);
|
|
233
241
|
let edgesAdded = 1;
|
|
234
242
|
if (imp.typeOnly) {
|
|
@@ -246,65 +254,62 @@ function buildImportEdges(stmts, relPath, symbols, rootDir, fileNodeId, aliases,
|
|
|
246
254
|
}
|
|
247
255
|
return edgesAdded;
|
|
248
256
|
}
|
|
249
|
-
function buildImportedNamesMap(symbols, rootDir, relPath, aliases) {
|
|
257
|
+
function buildImportedNamesMap(symbols, rootDir, relPath, aliases, db) {
|
|
250
258
|
const importedNames = new Map();
|
|
251
259
|
for (const imp of symbols.imports) {
|
|
252
260
|
const resolvedPath = resolveImportPath(path.join(rootDir, relPath), imp.source, rootDir, aliases);
|
|
253
261
|
for (const name of imp.names) {
|
|
254
|
-
|
|
262
|
+
const cleanName = name.replace(/^\*\s+as\s+/, '');
|
|
263
|
+
// Mirror full-build's `buildImportedNamesMap`: follow barrel re-exports so
|
|
264
|
+
// `importedNames` maps to the *defining* file, not the barrel. This ensures
|
|
265
|
+
// `computeConfidence` gets `importedFrom === targetFile` and returns 1.0
|
|
266
|
+
// instead of the cross-directory fallback (0.3).
|
|
267
|
+
let targetFile = resolvedPath;
|
|
268
|
+
if (isBarrelFile(db, resolvedPath)) {
|
|
269
|
+
const actual = resolveBarrelTarget(db, resolvedPath, cleanName);
|
|
270
|
+
if (actual)
|
|
271
|
+
targetFile = actual;
|
|
272
|
+
}
|
|
273
|
+
importedNames.set(cleanName, targetFile);
|
|
255
274
|
}
|
|
256
275
|
}
|
|
257
276
|
return importedNames;
|
|
258
277
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
callerSpan = span;
|
|
273
|
-
}
|
|
274
|
-
}
|
|
278
|
+
const HIERARCHY_SOURCE_KINDS = new Set(['class', 'struct', 'record', 'enum']);
|
|
279
|
+
const EXTENDS_TARGET_KINDS = new Set(['class', 'struct', 'trait', 'record']);
|
|
280
|
+
const IMPLEMENTS_TARGET_KINDS = new Set(['interface', 'trait', 'class']);
|
|
281
|
+
function buildClassHierarchyEdges(stmts, relPath, symbols) {
|
|
282
|
+
let edgesAdded = 0;
|
|
283
|
+
for (const cls of symbols.classes) {
|
|
284
|
+
const sourceRow = stmts.findNodeInFile.all(cls.name, relPath).find((n) => HIERARCHY_SOURCE_KINDS.has(n.kind));
|
|
285
|
+
if (!sourceRow)
|
|
286
|
+
continue;
|
|
287
|
+
if (cls.extends) {
|
|
288
|
+
for (const t of stmts.findNodeByName.all(cls.extends).filter((n) => EXTENDS_TARGET_KINDS.has(n.kind))) {
|
|
289
|
+
stmts.insertEdge.run(sourceRow.id, t.id, 'extends', 1.0, 0);
|
|
290
|
+
edgesAdded++;
|
|
275
291
|
}
|
|
276
292
|
}
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
let targets;
|
|
283
|
-
if (importedFrom) {
|
|
284
|
-
targets = stmts.findNodeInFile.all(call.name, importedFrom);
|
|
285
|
-
}
|
|
286
|
-
if (!targets || targets.length === 0) {
|
|
287
|
-
targets = stmts.findNodeInFile.all(call.name, relPath);
|
|
288
|
-
if (targets.length === 0) {
|
|
289
|
-
targets = stmts.findNodeByName.all(call.name);
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
// Type-aware resolution: translate variable receiver to declared type
|
|
293
|
-
if ((!targets || targets.length === 0) && call.receiver && typeMap) {
|
|
294
|
-
const typeEntry = typeMap.get(call.receiver);
|
|
295
|
-
const typeName = typeEntry
|
|
296
|
-
? typeof typeEntry === 'string'
|
|
297
|
-
? typeEntry
|
|
298
|
-
: typeEntry.type
|
|
299
|
-
: null;
|
|
300
|
-
if (typeName) {
|
|
301
|
-
const qualified = `${typeName}.${call.name}`;
|
|
302
|
-
targets = stmts.findNodeByName.all(qualified);
|
|
293
|
+
if (cls.implements) {
|
|
294
|
+
for (const t of stmts.findNodeByName.all(cls.implements).filter((n) => IMPLEMENTS_TARGET_KINDS.has(n.kind))) {
|
|
295
|
+
stmts.insertEdge.run(sourceRow.id, t.id, 'implements', 1.0, 0);
|
|
296
|
+
edgesAdded++;
|
|
297
|
+
}
|
|
303
298
|
}
|
|
304
299
|
}
|
|
305
|
-
return
|
|
300
|
+
return edgesAdded;
|
|
301
|
+
}
|
|
302
|
+
// ── Call edge building ──────────────────────────────────────────────────
|
|
303
|
+
function makeIncrementalLookup(db, stmts) {
|
|
304
|
+
return {
|
|
305
|
+
byNameAndFile: (name, file) => stmts.findNodeInFile.all(name, file),
|
|
306
|
+
byName: (name) => stmts.findNodeByName.all(name),
|
|
307
|
+
isBarrel: (file) => isBarrelFile(db, file),
|
|
308
|
+
resolveBarrel: (barrelFile, symbolName) => resolveBarrelTarget(db, barrelFile, symbolName),
|
|
309
|
+
nodeId: (name, kind, file, line) => stmts.getNodeId.get(name, kind, file, line),
|
|
310
|
+
};
|
|
306
311
|
}
|
|
307
|
-
function buildCallEdges(stmts, relPath, symbols, fileNodeRow, importedNames) {
|
|
312
|
+
function buildCallEdges(db, stmts, relPath, symbols, fileNodeRow, importedNames) {
|
|
308
313
|
const rawTM = symbols.typeMap;
|
|
309
314
|
const typeMap = rawTM instanceof Map
|
|
310
315
|
? rawTM
|
|
@@ -314,19 +319,106 @@ function buildCallEdges(stmts, relPath, symbols, fileNodeRow, importedNames) {
|
|
|
314
319
|
e.typeName ?? e.type ?? null,
|
|
315
320
|
]))
|
|
316
321
|
: new Map();
|
|
322
|
+
// Phase 8.3f: seed typeMap[callee::restName] = { type: argName } from
|
|
323
|
+
// objectRestParamBindings × paramBindings, mirroring buildObjectRestParamPostPass.
|
|
324
|
+
// Scoped keys prevent same-name rest-param collisions when two functions in
|
|
325
|
+
// the same file both use `...rest` (#1358). The unscoped key is also seeded
|
|
326
|
+
// when only one callee uses a given rest name, preserving resolution when
|
|
327
|
+
// callerName is null (findCaller couldn't identify the enclosing function).
|
|
328
|
+
if (symbols.objectRestParamBindings?.length && symbols.paramBindings?.length) {
|
|
329
|
+
const restNameCallees = new Map();
|
|
330
|
+
for (const orpb of symbols.objectRestParamBindings) {
|
|
331
|
+
if (!restNameCallees.has(orpb.restName))
|
|
332
|
+
restNameCallees.set(orpb.restName, new Set());
|
|
333
|
+
restNameCallees.get(orpb.restName).add(orpb.callee);
|
|
334
|
+
}
|
|
335
|
+
for (const orpb of symbols.objectRestParamBindings) {
|
|
336
|
+
for (const pb of symbols.paramBindings) {
|
|
337
|
+
if (pb.callee === orpb.callee && pb.argIndex === orpb.argIndex) {
|
|
338
|
+
const scopedKey = `${orpb.callee}::${orpb.restName}`;
|
|
339
|
+
if (!typeMap.has(scopedKey)) {
|
|
340
|
+
typeMap.set(scopedKey, { type: pb.argName, confidence: 0.65 });
|
|
341
|
+
if (restNameCallees.get(orpb.restName).size === 1 && !typeMap.has(orpb.restName)) {
|
|
342
|
+
typeMap.set(orpb.restName, { type: pb.argName, confidence: 0.65 });
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
const seenCallEdges = new Set();
|
|
350
|
+
const lookup = makeIncrementalLookup(db, stmts);
|
|
317
351
|
let edgesAdded = 0;
|
|
318
352
|
for (const call of symbols.calls) {
|
|
319
353
|
if (call.receiver && BUILTIN_RECEIVERS.has(call.receiver))
|
|
320
354
|
continue;
|
|
321
|
-
const caller = findCaller(call, symbols.definitions, relPath,
|
|
322
|
-
const { targets, importedFrom } = resolveCallTargets(
|
|
355
|
+
const caller = findCaller(lookup, call, symbols.definitions, relPath, fileNodeRow);
|
|
356
|
+
const { targets: initialTargets, importedFrom } = resolveCallTargets(lookup, call, relPath, importedNames, typeMap, caller.callerName);
|
|
357
|
+
let targets = initialTargets;
|
|
358
|
+
if (targets.length === 0 && call.receiver === 'this' && caller.callerName != null) {
|
|
359
|
+
const dotIdx = caller.callerName.indexOf('.');
|
|
360
|
+
if (dotIdx > 0) {
|
|
361
|
+
const className = caller.callerName.slice(0, dotIdx);
|
|
362
|
+
const qualifiedName = `${className}.${call.name}`;
|
|
363
|
+
const qualified = lookup
|
|
364
|
+
.byNameAndFile(qualifiedName, relPath)
|
|
365
|
+
.filter((n) => n.kind === 'method');
|
|
366
|
+
if (qualified.length > 0) {
|
|
367
|
+
targets = qualified;
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
if (targets.length === 0 &&
|
|
372
|
+
call.receiver === 'this' &&
|
|
373
|
+
caller.callerName != null &&
|
|
374
|
+
symbols.definePropertyReceivers) {
|
|
375
|
+
const receiverVarName = symbols.definePropertyReceivers.get(caller.callerName);
|
|
376
|
+
if (receiverVarName) {
|
|
377
|
+
const typeEntry = typeMap.get(receiverVarName);
|
|
378
|
+
const typeName = typeEntry
|
|
379
|
+
? typeof typeEntry === 'string'
|
|
380
|
+
? typeEntry
|
|
381
|
+
: typeEntry.type
|
|
382
|
+
: null;
|
|
383
|
+
if (typeName) {
|
|
384
|
+
const qualifiedName = `${typeName}.${call.name}`;
|
|
385
|
+
const qualified = lookup.byNameAndFile(qualifiedName, relPath);
|
|
386
|
+
if (qualified.length > 0) {
|
|
387
|
+
targets = [...qualified];
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
if (targets.length === 0) {
|
|
391
|
+
// Narrow to function/method kinds only to avoid matching unrelated
|
|
392
|
+
// variables or classes that share a name in the same file.
|
|
393
|
+
const sameFile = lookup
|
|
394
|
+
.byNameAndFile(call.name, relPath)
|
|
395
|
+
.filter((n) => n.kind === 'function' || n.kind === 'method');
|
|
396
|
+
if (sameFile.length > 0) {
|
|
397
|
+
targets = [...sameFile];
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
}
|
|
323
402
|
for (const t of targets) {
|
|
324
|
-
|
|
403
|
+
const edgeKey = `${caller.id}|${t.id}`;
|
|
404
|
+
if (t.id !== caller.id && !seenCallEdges.has(edgeKey)) {
|
|
405
|
+
seenCallEdges.add(edgeKey);
|
|
325
406
|
const confidence = computeConfidence(relPath, t.file, importedFrom ?? null);
|
|
326
407
|
stmts.insertEdge.run(caller.id, t.id, 'calls', confidence, call.dynamic ? 1 : 0);
|
|
327
408
|
edgesAdded++;
|
|
328
409
|
}
|
|
329
410
|
}
|
|
411
|
+
if (call.receiver &&
|
|
412
|
+
!BUILTIN_RECEIVERS.has(call.receiver) &&
|
|
413
|
+
call.receiver !== 'this' &&
|
|
414
|
+
call.receiver !== 'self' &&
|
|
415
|
+
call.receiver !== 'super') {
|
|
416
|
+
const recv = resolveReceiverEdge(lookup, { name: call.name, receiver: call.receiver }, caller, relPath, typeMap, seenCallEdges);
|
|
417
|
+
if (recv) {
|
|
418
|
+
stmts.insertEdge.run(recv.callerId, recv.receiverId, 'receiver', recv.confidence, 0);
|
|
419
|
+
edgesAdded++;
|
|
420
|
+
}
|
|
421
|
+
}
|
|
330
422
|
}
|
|
331
423
|
return edgesAdded;
|
|
332
424
|
}
|
|
@@ -353,8 +445,9 @@ function rebuildEdgesForTargetFile(db, stmts, relPath, symbols, fileNodeRow, roo
|
|
|
353
445
|
let edgesAdded = buildContainmentEdges(db, stmts, relPath, symbols);
|
|
354
446
|
edgesAdded += rebuildDirContainment(db, stmts, relPath);
|
|
355
447
|
edgesAdded += buildImportEdges(stmts, relPath, symbols, rootDir, fileNodeRow.id, aliases, db);
|
|
356
|
-
const importedNames = buildImportedNamesMap(symbols, rootDir, relPath, aliases);
|
|
357
|
-
edgesAdded += buildCallEdges(stmts, relPath, symbols, fileNodeRow, importedNames);
|
|
448
|
+
const importedNames = buildImportedNamesMap(symbols, rootDir, relPath, aliases, db);
|
|
449
|
+
edgesAdded += buildCallEdges(db, stmts, relPath, symbols, fileNodeRow, importedNames);
|
|
450
|
+
edgesAdded += buildClassHierarchyEdges(stmts, relPath, symbols);
|
|
358
451
|
return edgesAdded;
|
|
359
452
|
}
|
|
360
453
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incremental.js","sourceRoot":"","sources":["../../../../src/domain/graph/builder/incremental.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"incremental.js","sourceRoot":"","sources":["../../../../src/domain/graph/builder/incremental.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import type { PipelineContext } from '../context.js';
|
|
2
|
+
/** Phase 8.5: confidence penalty applied to CHA-dispatch edges. */
|
|
3
|
+
export declare const CHA_DISPATCH_PENALTY = 0.1;
|
|
2
4
|
export declare function buildEdges(ctx: PipelineContext): Promise<void>;
|
|
3
5
|
//# sourceMappingURL=build-edges.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-edges.d.ts","sourceRoot":"","sources":["../../../../../src/domain/graph/builder/stages/build-edges.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build-edges.d.ts","sourceRoot":"","sources":["../../../../../src/domain/graph/builder/stages/build-edges.ts"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AA2CrD,mEAAmE;AACnE,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAouDxC,wBAAsB,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA0JpE"}
|