Skip to main content
Version: 0.0.4

agrag.ingestion.materialize.write_matches_and_materialize

write_matches_and_materialize(decisions:list[MatchDecision], *, graph_store:GraphStore, schema:GraphSchema, members:list[Entity], pending_job_id:str | None = None, tracer:Tracer | None = None) -> MaterializationResult

Persist matches and materialize their supplied connected component.

Callers fetch the bounded affected component before invoking this function. The resolved node is always recomputed from that current membership.

Parameters:

  • decisions (list[MatchDecision]) – The confirmed matches to persist.
  • graph_store (GraphStore) – Where matches and materializations are written.
  • schema (GraphSchema) – The schema the members belong to.
  • members (list[Entity]) – The component members the resolved node is computed from.
  • pending_job_id (str | None) – The in-flight Cutover Job's id, tagging the match edges and materialized nodes until that job commits. None writes untagged, for callers outside a job.
  • tracer (Tracer | None) – Passed to description summarization.

Raises:

  • ValueError – No decisions are supplied, or a decision references a member outside the supplied component.