Files
codebase-memory-mcp/src
Martin Vogel 443ad5c93c feat(pipeline): consume LSP-resolved calls in pass_calls
Phase 9.5 of Python LSP integration. Cross-language pipeline change
benefiting Go, C/C++, and Python LSPs simultaneously.

resolve_single_call now checks result->resolved_calls first. When the
LSP populated an entry whose caller_qn matches the textual call's
enclosing function, whose callee_qn ends with the textual callee's
short name, and whose confidence meets CBM_LSP_CONFIDENCE_FLOOR (0.6),
the resolver emits the edge using the LSP-resolved callee QN and
strategy. Otherwise it falls through to the existing
cbm_registry_resolve textual matcher unchanged.

The floor of 0.6 lets every standard LSP strategy through:
  - lsp_direct (0.95)
  - lsp_method (0.9)
  - lsp_module_attr (0.92)
  - lsp_super (0.88)
  - lsp_constructor (0.85)
  - lsp_interface_resolve (Go LSP, ~0.85)
while filtering best-effort guesses such as
lsp_module_attr_unresolved (0.55) — those fall back to the registry.

Highest-confidence wins when multiple LSP entries exist for the same
(caller, short_callee) pair. The floor is fixed in v1; promote to an
env knob if telemetry shows tuning is necessary.

All 2866 prior tests stay green; no LSP / pipeline / integration / Go /
C++ / Python regressions.
2026-05-09 00:26:20 +02:00
..
2026-04-15 23:56:03 +02:00