research30 min studyLesson 989 in Engineering

Artifact packaging and independent reproduction

Package the complete evidence path from immutable inputs to claim-linked results, and report exactly what independent execution established.

On this page

What you’ll understand

  • Enumerate code, data, configuration, and environment dependencies for each result.
  • Separate availability, exercisability, and independent validation of results.
  • Plan an affordable reproduction protocol with explicit oracles and limits.

An artifact is more than a source archive and a command that once worked on the authors’ machine. It is an evidence path from identifiable inputs through executable procedures to the tables and claims in a paper. Another investigator needs to discover its dependencies, estimate its cost, recognize success, and interpret discrepancies. Independent reproduction is strongest when its scope is explicit rather than hidden behind a badge or a familiar container image.

Package the dependency closure of each claimed result

Map every main figure or table to input identifiers, preprocessing, code revision, configuration, run commands, raw outputs, and analysis scripts. Include licenses, permitted data access procedures, expected hardware, required services, and resource estimates. Pin dependencies by immutable versions or content identifiers where feasible, including model weights and generated intermediates. A container packages some userspace dependencies but not the host kernel, device driver, accelerator behavior, external service state, or a dataset that the image downloads later. Record those boundaries.

Treat result generation as a dependency graph. A final plot is reproducible only if its required ancestors are available or can be reconstructed under the documented assumptions. Include random streams, warmup, retries, failed runs, and filtering rules rather than only polished aggregate files. Explain unavoidable proprietary or restricted components and provide a lawful surrogate where possible, naming which claims it cannot validate. Checksums detect accidental byte disagreement against a trusted expected digest; they do not authenticate authorship if an attacker can replace both the file and the digest.

Aneeded=⋃r∈RclaimedAncestors⁡(r) ∪ Rclaimed\mathcal A_{\rm needed}=\bigcup_{r\in\mathcal R_{\rm claimed}}\operatorname{Ancestors}(r)\ \cup\ \mathcal R_{\rm claimed}
This set expression includes result nodes and their transitive dependencies in the declared artifact graph. It is an inventory model, not proof that the inventory is complete, dependencies remain retrievable, or supplied code is safe and scientifically correct.↔ Scroll wide equations horizontally.

Make the independent procedure executable and interpretable

Provide a clean-environment setup, a small smoke test, and a full result-generation procedure. A smoke test can verify basic installation and data flow without reproducing the paper’s scale or statistical evidence. State expected durations, memory, storage, network access, and monetary costs before a reviewer starts. Provide oracles for task correctness and acceptable numeric variation. A command exiting successfully is insufficient if it loaded the wrong dataset or generated a cached reference plot instead of running the experimental treatment.

ACM-style artifact criteria distinguish public availability, evaluated functionality or reusability, and independently checked results. Use the definitions and version adopted by the specific venue, because terminology and review scope can differ. The ACM SIGSIM PADS 2024 criteria, for example, require a functional artifact to be documented, consistent, complete as feasible, and exercisable. An available archive alone does not establish those properties or validate every paper claim. Describe the actual checks performed and any inaccessible conditions rather than treating a badge as a blanket causal or correctness certificate.

Tfull=Tsetup+CRtrunT_{\rm full}=T_{\rm setup}+C R t_{\rm run}
Times are minutes in the example, C is the number of configuration cells, and R is independent runs per cell. The expression assumes serial execution, equal run times, and no retries or additional analysis cost; a real estimate should state deviations and resource allocations.↔ Scroll wide equations horizontally.

Use an independent report to expose assumptions

Ask a fresh operator to follow the written instructions without undocumented help, then record interventions that were required. Preserve environment manifests and raw outputs from the independent execution. Distinguish rerunning authors’ code, rebuilding it from source, independently implementing the method, and testing a new platform; these establish different evidence. Compare correctness and uncertainty-aware outcomes rather than demanding byte-identical plots when the experiment permits variation. A discrepancy may expose a hidden dependency, a legitimate scope difference, or an error that should revise the claim.

The modular instrument gives a small manifest-sensitive transcript. Reset, set both m=16 and a=5, predict residue fifteen after three Steps, then Step three times. Separately Reset, set both m=16 and a=3, predict residue nine after three Steps, then Step three times. It starts at zero and adds a modulo m once per Step. This exact additive toy is not a hash, random generator, or artifact evaluator. It shows that omitting a configuration parameter can change an otherwise reproducible procedure’s result; matching one transcript does not establish a complete dependency inventory.

Budget the full reproduction separately from the smoke test

An artifact has twelve configuration cells, three independent runs per cell, and two minutes per run on one declared machine. Setup takes twenty minutes. Compare the full serial procedure with a smoke test of two cells and one run per cell.

  1. The full study requires 12×3=36 runs. Timed execution alone takes 36×2=72 minutes under the assumed equal durations.

  2. Adding setup gives 20+72=92 minutes before extra analysis or retries. A reviewer with only sixty minutes cannot complete this full serial protocol as specified.

  3. The smoke test needs 2×1×2=4 execution minutes, or 24 minutes including setup. Its success can demonstrate basic exercisability, but it does not reproduce all twelve cells or the three-run uncertainty evidence.

The result

A smaller runnable demonstration is useful when its evidentiary limits and the cost of the full procedure are clear.

Explore the model

Interactive lab

Interactive lab · modular

A configuration field belongs to the reproduction manifest

Reset, set both m=16 and a=5, predict residue fifteen after three Steps, then Step three times. Separately Reset, set both m=16 and a=3, predict residue nine after three Steps, then Step three times. This additive orbit is not a checksum, random generator, or artifact-review system.

A configuration field belongs to the reproduction manifestAddition modulo m starts at zero: rₙ = na mod m. Playback advances two additions per second. The orbit has period m/gcd(m,a), including period one for a = 0. This is not a cryptographic security test or a primality algorithm. Current readings: Residue r0: 0; Orbit period · m/gcd(m,a): 12; Distinct residues visited: 1 of 12. All parameters are adjustable with the labeled controls below.Repeated addition modulo 12: the current residue is 0, and the orbit period is 12.01234567891011+ 5mod 12An additive orbitn = 0rₙ = 0Period = 12Cycle starts at 0:0 → 5 → 10 → 3 →8 → 1 → 6 → 11 →4 → 9 → 2 → 7 → 0Exact residues · two additions per second
Additive orbitCurrent residue / next edge
Residue r0
0
Orbit period · m/gcd(m,a)
12
Distinct residues visited
1 of 12
t = 0 s

Addition modulo m starts at zero: rₙ = na mod m. Playback advances two additions per second. The orbit has period m/gcd(m,a), including period one for a = 0. This is not a cryptographic security test or a primality algorithm. Parameter changes pause playback and recompute the model at the current elapsed time. Reset restores both parameters and returns time to zero. Playback starts paused. Adjust either parameter, then choose Play or Step.

Look forRecord the inputs and parameters that determine the claimed computation.

Check your understanding

What does a successful two-cell smoke test establish for a twelve-cell, repeated-run artifact?

Try it yourself

A full serial protocol has eight cells, four runs per cell, 1.5 minutes per run, and twelve minutes of setup. Compute the planned total and name one reason actual elapsed time could be higher.

Take a moment to make a prediction or work it out on paper. Open a hint when you need one.

Give me a hint

Count all cell-run combinations, then add setup rather than multiplying it into every run.

Compare with the solution

There are 8×4=32 runs, taking 32×1.5=48 minutes. Including setup gives sixty minutes. Retries, dependency downloads, analysis, hardware allocation delays, or longer-than-assumed runs can increase elapsed time; those costs should be measured and reported rather than hidden.

Take it with you

  • Package the dependency path from inputs and environment to claim-linked outputs.
  • Availability, functionality, reuse, and independent result checks have distinct scopes.
  • A reproduction report should state what was executed, what matched, and what remained inaccessible.

Read further

Original sources and deeper explanations to follow at your own pace.

Optional progress, saved in this browser when available. Revisit any lesson at any time.

Lesson not marked complete.