Tracking issue for making the twin-validation report reproducible for any study (from a dogfooding session on Pew W154 microdata). Full plan in the driving study's REPRODUCIBILITY_PLAN.md.
Correctness guards
Structured report-data export
Ergonomics
Also
The F8 guard is landed; the rest are in progress on the same branch.
Tracking issue for making the twin-validation report reproducible for any study (from a dogfooding session on Pew W154 microdata). Full plan in the driving study's
REPRODUCIBILITY_PLAN.md.Correctness guards
--heldout-questions <all items>silently produced covariate-only twins (emptyobserved_answers) with no warning, a different/weaker experiment. Now errors with a--allow-empty-contextopt-in. (done: branchfeat/report-data-and-guards)twin-validatecollapses arms by model label —twin_bootstrap.py:_group_rowskeys predictions by(model_label, question), so two jobs with the same model but different strategy/context merge and can't be separated. Key byjob_id/approach.--metricdefaults tonll); optional: default tonll_vs_empirical.Structured report-data export
twin-validate --report-data report_data.jsonemitting: skill scores (per model×question×reference, with CIs), baseline diagnostics (features, XGBoost hyperparameters, training rows, skill vs uniform), per-question marginals (real vs twin vs baseline), and example predictions. Today all of this must be reconstructed by hand frombootstrap.json+ raw predictions + readingtwin_baseline.py+ parsingzwill_report.html.Ergonomics
edsl-runprintsInitializing.../Progress:to stdout before the JSON envelope, sojson.load(stdout)fails).--jobs,--models,--heldout-questions).Also
The F8 guard is landed; the rest are in progress on the same branch.