Plan (optional)
Design spec: https://github.com/codellm-devkit/codeanalyzer-java/blob/main/docs/design/specs/schema-v2-l3-l4-design.md
Problem
The SDG (prior issue) lacks summary edges — the transitive actual_in → actual_out shortcuts at each call site that make later SDK slicing/taint context-sensitive without re-descending into callees. WALA computes HRB summaries lazily inside its Slicer and does not expose them cleanly, so we compute them ourselves (D7).
Scope boundary
The summary edge family only, over the L4 SDG. The analyzer is a pure graph provider — no slicing/taint. Includes the J_SUMMARY Neo4j overlay.
Goals
Caveats and known risks
- Cost / termination: k-limiting + bounded label sets are mandatory for the interprocedural fixpoint to terminate; the heaviest L4 unit.
- Watch memory (workers holding CFGs) more than CPU; never emit during parallel execution — collect then sort.
Definition of done
- A
summary edge exists for a known transitive flow (a → b → c and back). - An SCC of two mutually recursive functions reaches fixpoint (terminates) and its summary is identical across two runs.
summary present in both projections; -j N byte-identical to -j 1.
Plan (optional)
Design spec: https://github.com/codellm-devkit/codeanalyzer-java/blob/main/docs/design/specs/schema-v2-l3-l4-design.md
Problem
The SDG (prior issue) lacks
summaryedges — the transitiveactual_in → actual_outshortcuts at each call site that make later SDK slicing/taint context-sensitive without re-descending into callees. WALA computes HRB summaries lazily inside its Slicer and does not expose them cleanly, so we compute them ourselves (D7).Scope boundary
The
summaryedge family only, over the L4 SDG. The analyzer is a pure graph provider — no slicing/taint. Includes theJ_SUMMARYNeo4j overlay.Goals
summary(actual_in→actual_out) edges on the callablecache_dir, recording the facts each depends on (incremental re-analysis aspirational)J_SUMMARYNeo4j overlayCaveats and known risks
Definition of done
summaryedge exists for a known transitive flow (a → b → cand back).summarypresent in both projections;-j Nbyte-identical to-j 1.