--- name: expecon-replication-package description: Use when assembling the data, code, instructions, and experiment software for an Experimental Economics (ExpEcon) manuscript to meet the ESA reproducibility standard. Builds the deposit; it does not run the analysis or draft prose. --- # Replication Package (expecon-replication-package) ## When to trigger - You are preparing to submit and must attach **participant instructions** (required at submission) and a data/code appendix - The ESA **Data and Replication Policy** deposit (trusted repository) is not yet assembled - z-Tree / oTree code, raw session data, and analysis scripts are scattered and not runnable end-to-end - A referee or editor asks whether someone could **reproduce your numbers and re-run your experiment** ## What ExpEcon reproducibility actually requires Experimental Economics is an ESA journal, and since 2021 the **ESA Data and Replication Policy** requires authors to deposit, in a trusted online repository, the materials needed to **reproduce or replicate** the study (检索于 2026-06;以官网为准). Reproducibility here is stronger than at most economics journals because it has **two layers**: - **Reproduce the analysis** — raw data + cleaning + analysis code regenerate every table and figure. - **Replicate the experiment** — instructions + experiment software let another lab *re-run* the study. Treat the package as a deliverable engineered for both. ## The deposit, component by component 1. **Instructions** — the exact instructions subjects received, per treatment, in the original language (translation if relevant). These are **required at submission**, not just at acceptance; reviewers read them to check for deception and comprehension. 2. **Experiment software** — the **z-Tree `.ztt` treatment files** or the **oTree app** (full project, `settings.py`, requirements pinned). Include screenshots or the comprehension quiz as run. This is what makes re-running possible. 3. **Raw data** — session-level exports as collected (z-Tree `.xls`/`.sbj`, oTree CSV), with a codebook for every variable and the session/treatment/matching-group identifiers. 4. **Analysis code** — scripts (Stata/R/Python) that run from raw to results with a single master file; set and record the **random seed** for any simulation/permutation test. 5. **README** — repository map, software versions, run order, expected runtime, and a table mapping each exhibit in the paper to the script that produces it. 6. **Pre-registration / PAP link** — the registry entry and timestamp; for a Registered Report, the in-principle-acceptance Stage-1 protocol. 7. **Ethics / consent** — IRB approval reference and the consent procedure (and the explicit no-deception statement). ## Repository and hygiene - Deposit in a **trusted, persistent repository** (OSF, Harvard Dataverse, Zenodo, or OpenICPSR are commonly used by ESA authors) and cite the **DOI** in the paper. - Anonymize subject identifiers; never include payment records with identifying info. - Pin every dependency and software version; a package that does not run on a clean machine fails the policy. - Match repository contents to the paper exactly — no stale scripts, no figures the code cannot produce. ## A workable directory layout ``` /instructions treatment_A.pdf, treatment_B.pdf (+ translations) /software ztree/ *.ztt OR otree/ (full app, requirements.txt) /data/raw session exports as collected (.xls/.sbj or .csv) /data/clean analysis-ready files built by /code /code 00_master.* , 01_clean.* , 02_analysis.* , 03_figures.* /output tables + figures regenerated by /code README.md map, versions, run order, exhibit→script table ETHICS.md IRB ref, consent text, no-deception statement ``` The single rule the policy enforces in spirit: a stranger with a clean machine runs `00_master` and gets your paper's exact numbers, and another lab opens `/software` and `/instructions` and re-runs your experiment. ## The two-layer self-test 1. **Reproduce:** delete `/data/clean` and `/output`, run the master script, confirm every table/figure regenerates byte-for-byte (or value-for-value for stochastic steps with a fixed seed). 2. **Replicate:** hand `/software` + `/instructions` to a colleague who was not on the project and confirm they can launch a session and understand what subjects faced. ## Checklist - [ ] Participant **instructions** (all treatments, original language) included **at submission** - [ ] z-Tree `.ztt` / oTree app deposited so the experiment can be **re-run** - [ ] Raw session data + codebook + session/group/treatment IDs present - [ ] Master analysis script runs raw→results; seeds set for simulation/permutation - [ ] README maps every table/figure to the script that generates it; versions pinned - [ ] Pre-registration / PAP (or Stage-1 RR protocol) linked with timestamp - [ ] Trusted-repository DOI cited; data anonymized; IRB + no-deception statement included ## Anti-patterns - Promising the package "on request" or only at acceptance — ESA expects a real deposit, and instructions are due at submission - Depositing data but **not** the z-Tree/oTree code, so the experiment cannot be replicated - A "replication package" whose scripts do not reproduce the paper's exact numbers - Unpinned software versions / no seed, so permutation tests and figures are not reproducible - Identifiable subject data or payment records left in the repository ## Output format ```text 【Journal】Experimental Economics (ESA method flagship) 【Skill】expecon-replication-package 【Verdict】deposit-ready / incomplete 【Instructions】all treatments, at submission? [Y/N] 【Software】z-Tree .ztt / oTree app deposited (re-runnable)? [Y/N] 【Data + code】raw + codebook + master script (seeded) reproduce all exhibits? [Y/N] 【Repository】trusted-repo DOI; versions pinned; anonymized? [Y/N] 【Pre-reg / ethics】PAP/RR link + IRB + no-deception statement 【Next skill】expecon-referee-strategy ```