36 — Tier-1 coarse reference scan on project create (CoarseScanner SPI +
Natural/Java scanners); durable ingestStatus lifecycle + warm concurrency cap.
40 — Unresolved-reference flag on placeholder nodes (search_identifier/inspect_node).
41 — Stale-source check: SourceHash per file, module_source/node_source return
STALE_SOURCE when the file on disk changed.
42 — Single refresh surface (REST/MCP/CLI) replacing ingest_all/ingest_module/
ingest-call-graph; ~20 ITs migrated. Full suite green (129 ITs + 55 unit).
- AstEdge now carries the source line of the relationship; both parsers
populate it and Neo4j persists it as a relationship property so the
same edge at different lines is no longer deduped.
- Expose lineNo in callers/callees and variable read/write API responses.
- NaturalParser recognizes DECIDE FOR/ON as a CONTROL_FLOW block.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>