A dcc_data object bundles the dataset with its metadata, the
level-0 read report, and an append-only provenance chain. Every DCC
stage (detect, execute, report) receives and returns this container;
stages append to the provenance chain and never rewrite it (raw data is
immutable; cleaning produces new versions).