← ANTI-PATTERNS

Provenance Deferred

Documentation, pinning, and sharing postponed until after the claim ships — and often forever

Principle violated

Provenance is part of the claim — deferring commits and refs until after publication is tier laundering by schedule.

Short-termismLocal optimisationMisaligned incentivesMissing principle

Provenance deferred is the anti-pattern of treating lineage — READMEs, lockfiles, dataset version commits, run configs, model cards, audit trails — as follow-up work to be done after the result is published, deployed, or presented. The claim ships on schedule; the chain is “TODO.”

It persists because deferral is rational under short-termism and local optimization: the deadline that scores is the submission date, not the rerunnable package. Misaligned incentives rarely punish missing docs until replication fails years later — by then non-propagating refutation may already apply.

Poor documentation is not always laziness. It is often structural: no slot in the workflow where provenance blocks release; no reviewer who checks Dockerfile SHA against paper claims.

In software systems

Merge to main without updating model card. Deploy without recording image digest in the commit event. Experiment configs live in a notebook cell; “we’ll export to MLflow later.” Technical debt labels hide ruptured provenance chain as backlog grooming.

In human organisations

“Data and code available upon reasonable request” — request comes, reasonable never defined. Methods sections describe intent, not pins. Lab handover loses the one person who knew which script produced Figure 3.

In socio-technical systems

Preprint culture accelerates claims; reproducibility packages lag by months or never arrive. Publication over provenance rewards the gap. Artifact withholding is the extreme end of permanent deferral.

Why it persists

Short-termism — ship now, document never. Local optimization — my sprint closes when the API returns 200, not when lineage is queryable. Missing principle — teams lack document before apply for derivations, not only for policies. Misaligned incentives — nobody promoted for lockfiles.

Principled alternatives

Provenance at bind time. Treat dataset version, environment image, and config as L0 before the training run or publication bind — Event Sourced Science.

Experiment architecture — pre-commitment, separate streams, outcome linkage (term).

Epistemic harness — containers, lockfiles, and registries that make deferral visible breakage, not polite backlog.

Commitment boundary — consequential deployment requires artifact refs in the commit record, not a slide footnote.

Relation to ML reproducibility crisis

Cultural “poor documentation” and architectural “missing commits” are the same wound at different layers. Fixing culture without gates (provenance deferred → still defer) fails; fixing architecture without incentive alignment fails slower. Both required: see ML reproducibility crisis.