README limits now describe include-closure C++ lookup, declared-receiver member resolution, Rust macro re-parsing, unresolved reasons, and metrics.resolution, plus the remaining adapter gaps. The roadmap records candidate edges, the Fold compiler call lane, and compile_commands/Cargo module resolution as next stages; literature notes cite the call-graph and name-resolution papers found through paperbridge. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
3.1 KiB
3.1 KiB
Roadmap
Seed: v0.1
- Versioned graph JSON.
- Fast lexical multi-language preview.
- Pinned default C++/JS/TS/Dart/Rust grammar extraction, source-relative imports, scoped heuristic resolution, and an exact labeled regression benchmark.
- Dart classes, functions/methods, imports, inheritance, and local calls.
- Focused P4_16 lexical structures, scoped transitions/apply/action calls, and positive plus clean-negative fixtures.
- Qualified p4c v1.2.5.16 diagnostic-envelope import with Imported evidence and fail-closed symbolic-adapter status.
- Explicit P4 parser-state/control-apply cycle, reachability, and unresolved dependency metrics with clean negatives.
- Default-disabled Tree-sitter P4 pilot with pinned grammar/query identity, parallel Syntactic/Heuristic evidence, a versioned availability/setup probe, and a written non-promotion decision.
- Deterministic schema-v2 structural diff over compatible schema-v4 buildings,
with inspectable before/after facts and optional
brick checkcount gates. - Schema-v1 repository-relative forbidden-dependency policy with exact scope,
fail-closed wire values, and complete matched-edge evidence in
brick check. - Read-only MCP 2025-06-18 stdio queries for dependency impact, SCC cycles, weak-graph bridges, and complete evidence over validated schema-v4 JSON.
- Fold SARIF/native finding overlay.
- Interactive Cytoscape building.
- Transparent structural indicators and deterministic tests.
Next: compiler-grade relationships
- Adapter contract for YAMS graph JSON and Fold ProjectCallGraph/fact IDs.
- Qualification gate for real machine-readable P4 verifier contracts and separate p4c-graphs structural evidence.
- Expand and qualify Tree-sitter/compiler frontends per language while keeping them separate evidence backends; do not promote the P4 pilot until macro and multi-project labeled-corpus gates pass.
- Overload/alias/dynamic-dispatch ambiguity represented as candidate edges
(schema 5); today ambiguity is an External target with reason
ambiguous. - Fold
ProjectCallGraphandfold-rustMIR call export, imported as a separate Imported call lane with per-file Heuristic/Imported agreement. compile_commands.jsoninclude paths and Cargo workspace/mod-tree module resolution for the heuristic C++/Rust resolvers.- Namespace/package clustering and richer versioned policy rule kinds beyond the seed forbidden-dependency boundary.
Later: behavior and symbolic structure
- Fold summary/counterexample overlays at function/block/operation levels.
- Runtime trace heat maps kept separate from static reachability.
- Rich diff visualization and rename-candidate analysis layered over the stable JSON diff without changing its identity semantics.
- Richer MCP filters, pagination, unstable-wall interpretation, and remote transports layered over the seed read-only stdio query surface.
Quality campaign
- Labeled multi-language relationship corpus with positive and clean negatives.
- Precision/recall per edge kind and backend.
- Layout usability tasks and graph-size/latency/RSS benchmarks.
- Default changes only after repeated baseline/candidate artifacts and written promotion decisions.