Extend the provenance system to capture not just parent-child artifact relationships but
the processing steps between them. When an experiment is extracted from a paper, the
provenance should record: "Paper 12345 was processed by extraction-agent using
llm_structured_extraction method with schema v2, producing experiment artifact X."
This creates a full audit trail of how every artifact was constructed.
artifact_links captures derives_from, cites, extends relationshipsprovenance_chain JSON in artifacts captures parent artifactsprocessing_steps table or extended artifact_links metadata:source_artifact_id — input artifacttarget_artifact_id — output artifactstep_type — extraction, analysis, aggregation, transformation, validation, debateagent_id — which agent performed the stepmethod — what method/tool was usedparameters — JSON of method parametersstarted_at, completed_at — timinginput_hash, output_hash — for reproducibility verification
record_processing_step() function called during artifact creationGET /api/artifact/{id}/processing-history — full transform chaina17-24-REPR0001 — Reproducible analysis chains use processing stepsd16-24-PROV0001 — Provenance demo showcases processing lineage