Expand description
Confidence for call-graph edges (Plan competitive-harvest t-013).
Static call edges are stored as bare symbol_id lists with no confidence.
This adds a sidecar layer: each edge accumulates runtime confirmations (the
asd tracer observing the caller actually invoke the callee) on top of a
static prior, and a confidence is derived the same way effect confidence is
in t-001 — reusing RuntimeEvidence::derive_confidence.
Two provenances:
- static-known — the edge is in the static call graph (prior
STATIC_PRIOR); runtime confirmation raises it, absence never lowers it (a path simply not exercised is not evidence the edge is wrong). - runtime-only — the tracer observed a call the static walker missed
(dynamic dispatch, reflection, callbacks). It definitely happened, so it
starts at
RUNTIME_ONLY_PRIORand confirmations push it up fast. These are the high-value rows: real edges absent from the static graph.
The sidecar lives at /asd/v1/index/edge-evidence/<from>/<to>, leaving the
hot-path callees/callers lists untouched.
Structs§
- Edge
Evidence - Accumulated evidence for one directed call edge.
Constants§
- RUNTIME_
ONLY_ PRIOR - Prior for an edge seen only at runtime (missed by static resolution).
- STATIC_
PRIOR - Prior confidence for an edge present in the static call graph.