pub fn finalize_file_provenance(
file_blob: ContentHash,
line_count: u32,
ranges: impl IntoIterator<Item = OriginRange>,
) -> Result<FileProvenance, BlameSliceError>Expand description
Assemble FileProvenance from finalized ranges without holding history.
Ranges are sorted, checked for exact coverage, and coalesced when adjacent ranges share the same origin.