Principles from "Agentic Code Reasoning" (Meta, 2026). Apply these to ALL code modifications:
- Read before concluding — never assume what code does. Read the actual file, check imports, check local definitions. A function name you recognize may be a custom local override.
- Cite evidence — when explaining code behavior, reference
file:line. No hand-waving. - Premises before analysis — state WHAT the code does before reasoning about WHETHER it's correct. This prevents assumption-jumping.
- Check alternative hypotheses — before concluding a fix is correct, actively try to disprove it: search for other callers, shadowed names, edge cases. State what you searched and what you found.
- Trace, don't guess — for non-trivial changes, trace at least one concrete execution path through the modified code (input → function calls → output).