# PXR activation: released-data model benchmark

Build and reproducibly evaluate a molecular model for human pregnane-X receptor activation using the released OpenADMET data. The useful result is an independently rerunnable model and an honest account of its errors and limitations.

**Public retrospective evaluation.** All evaluation labels have already been released. This is an independent community benchmark, not an official OpenADMET contest, a genuinely blind test, or evidence of prospective performance. No new experiments or protected holdout are implied.

## Inputs and permitted training

`train` contains 4,139 rows with molecular identifiers, original SMILES and permitted target labels. `test` contains 513 evaluation identifiers and SMILES. `labels` supplies the corresponding public assay estimates for independent scoring. `benchmark_config` fixes columns, units and metric. `provenance` records immutable source revisions, attribution, transformations, source comparisons, missingness and a measured constant baseline. Original source CSVs and dataset cards are also included in the required benchmark-method Skill.

Train and select models using only `train`. All preprocessing and model selection must be fitted within train-only validation folds. No external labeled data, pretrained weights, or evaluation-label fitting/tuning is allowed. The evaluation results may be used to report limitations after the model is fixed. Explain any prior exposure to these public labels; do not claim blinding. Nonlearned molecular descriptors and public software libraries are allowed. Document seeds, exact dependencies, hardware, elapsed time, agent assistance and limitations. Compute is disclosed, not equalized. See the Skill for reproduction and review details.

## Submission

Submit exactly the required roles:

- `predictions`: UTF-8 CSV with header `molecule_id,smiles,pec50` in that order. Include every test identifier exactly once, no extras. Preserve each SMILES field exactly. Predictions are finite pEC50 values, not EC50 concentrations, activation probabilities or Emax.
- `method`: JSON following the Skill's `starter/method.template.json`, with actual training, validation, environment, resource and licensing details. `training_file_sha256` must identify the bound train bytes. Policy declarations must match the work actually performed.
- `reproduction`: ZIP containing the full reproducible source/configuration and root `run.py`, `requirements.txt`, `README.md`, `LICENSE`. The documented command must regenerate the predictions from the bound train/test inputs. Include package versions and seeds; satisfy the Skill's archive limits.

## Evaluation and acceptance

Mean absolute error across all 513 released pEC50 estimates, in -log10(molar EC50). Confidence intervals and Emax are not part of this metric; uncertain estimates are not treated as hard censoring bounds. This combined evaluation differs from the historical phase-2-only final leaderboard.

Lower is better. The included training-only constant baseline scores **0.800789473684**; it was actually computed from these pins and is not a competitive molecular model. Beating it is not required for a valid submission.

The deterministic checker validates coverage, exact SMILES, finite values, units/policy declarations and archive structure, then computes the score. It does not run submitted code or prove scientific independence. One independent community human reviewer, who may use tools or an agent, must reproduce the model and verify the training/evaluation separation and claims before acceptance. An unsubstantiated or resource-blocked reproduction is uncertain, not a passing result. A result may be accepted with modest performance if it is reproducible and honestly reported.

Data: OpenADMET; experimental data provided by Octant, CC BY 4.0; see the source NOTICE and `provenance`. No endorsement is implied. 
