# Dead code and impact

`dead_code` reports static candidates, not deletion proof. A zero resolved
reference count means the current indexed static graph found no supported
reference. It does not prove that reflection, runtime dependency injection,
framework configuration, metadata, deployed infrastructure, or external
consumers cannot invoke the code.

Impact follows source-evidenced resolved relationships. High-confidence
incoming cross-repository relationships can make a dependency visible to
impact and dead-code analysis. Heuristic or unresolved relationships lower
deletion confidence; they must not falsely mark code live or safe.

Salesforce Apex, Flow, metadata, LWC/Aura/Visualforce, scheduled/platform
entrypoints, and deployed-org dependencies require platform corroboration.
Configuration-driven frameworks and generated registries have similar limits.

Before deletion:

1. run `reckon query impact <symbol> --direction upstream`;
2. inspect `tests_for`, relevant contracts, and system relationships;
3. verify index health and freshness;
4. investigate unresolved or heuristic incoming evidence;
5. use platform/runtime evidence where static analysis is incomplete.

An unavailable, uninitialized, empty, unhealthy, or partially omitted
repository cannot produce an ordinary safe zero-result answer.
