Skip to main content

Module source_ingest

Module source_ingest 

Source
Expand description

code.ingest L1 (manifest edges) + L1.5 (import-scan edges) core pipeline (ADR-085 Amendment 2 B3-B6). L2 Scanner/Extractor is out of scope (PR-2).

Identity (B4): every entity this pipeline creates has a uuid5-derived id, so re-ingesting the same path is a pure upsert — no dedup lookups are needed to avoid duplicate rows. Edge ids are likewise uuid5-derived from their endpoints, so re-creating the same edge is also an idempotent upsert. B6 cross-repo resolution and B5 staleness stamping are both driven off this determinism: an unresolved specifier records only the information needed to recompute its target’s id later, and the synchronous re-resolve pass (reresolve_pass) does exactly that.

Structs§

CodeSourceIngestOptions
CodeSourceIngestReport
Outcome counters for one code.ingest call, mirroring git.digest’s IngestReport shape (ADR-088 Amendment 1 precedent).

Enums§

CodeSourceIngestError

Functions§

run_code_ingest
Run one L1 + L1.5 ingest pass over opts.path into the runtime rt (already bound to the caller-selected target database — B7 target selection happens in the verb handler, not here).