Commit graph

2 commits

Author SHA1 Message Date
trvon
46698cd87d
docs: state resolution rules and limits as the code now implements them
Some checks failed
build / build-linux (pull_request) Successful in 1m3s
build / build-macos (pull_request) Has been cancelled
build / release (pull_request) Has been cancelled
The audit found README claims the code did not back: resolution was said
to respect lexical namespace everywhere (Python/Swift matched a
repo-wide unique name, Rust types their leaf name), "ambiguous targets
stay external" (not for rival using-directives or #else stubs), Dart
imports were said to resolve (no Dart symbol ever did across files), and
"C/C++" hid that C went through the C++ grammar.

The README now describes the fixed behaviour and its remaining limits:
per-language visibility rules (Python imports, Swift module-wide names,
Dart imported libraries without show/hide), Rust type identity by
declaring file, preprocessor alternatives excluded from resolution,
using-directive ambiguity, the C grammar for .c, Fold report
validation and producer-gated symbolic lane, lossy UTF-8 decoding,
diagnostic counts and empty-scan reporting, check recomputing metrics,
low call-site coverage on large C++ code, no virtual-override fan-out,
and unrecognized Catch2 TEST_CASE bodies. The research note lists the
pinned C grammar.
2026-09-24 20:21:29 -06:00
trvon
3fec92f10c
feat: make source graphs accurate across C++ JS TS Dart and Rust
Some checks failed
build / build-linux (push) Successful in 1m3s
build / build-macos (push) Has been cancelled
build / release (push) Has been cancelled
Use pinned grammar frontends and scoped heuristic resolution to recover declarations and prevent false dependencies. Constrain filesystem traversal and normalize Fold root aliases.

Add exact multilingual fixtures, seventeen regression tests, and a three-repeat benchmark to the quality gate.
2026-09-04 23:05:06 -06:00