The repository’s source code, tests, fixed-seed protocol data and versioned records are the primary reproducibility artifacts. This guide summarizes the commands in the project README; use a clean local clone and follow the cautions below.
The project uses Python with NumPy and SciPy for numerical work.
pip install numpy scipy
python -c "import phi_genesis; print('OK')"
For editable installation and tests:
pip install -e . pytest
pytest -q -m "not nightly"
The README reports that the fast suite can take roughly 2–3 minutes on one CPU core, with the level-8 test dominating. Nightly tests are excluded by this command.
python -m phi_genesis.selection_protocol_v121 stepA
python -m phi_genesis.selection_protocol_v121 stepB
stepA regenerates the null pools using seeds fixed in the code; the README estimates about 15 minutes.stepB runs the evaluation and should be compared with protocol_data/results_v1_2_1.json.stepA rewrites protocol_data/null_pools_v1_2_1.json. If you want to preserve the committed file exactly, perform the reproduction on a separate working copy.python protocol_data/op2_window_bias.py table
python protocol_data/op2_window_bias.py sliding
python protocol_data/op2_chord_estimator.py 8 9
The window-bias script uses the cached numerical inertia counts documented by the project. The chord-estimator command compares levels 8 and 9 for the documented estimator.
For a reproducible report, include:
A passing test suite validates the tested code paths, not every scientific interpretation in the repository. Numerical results should always be reported with their level, estimator, parameter range and known limitations.