Resource updates
This page documents utilities used to download and update shared resources required by PhEval workflows.
Purpose
Resource update utilities are used to:
- Ensure identifier mappings are up to date
- Maintain consistency across benchmarking runs
- Reduce errors caused by outdated or missing reference data
Keeping resources updated is recommended, particularly when running new experiments or comparing results across time.
Updating shared resources
The update command downloads and refreshes shared resources used by PhEval and its plugins.
This includes:
- The MONDO SSSOM mapping file from the Monarch Initia
- The HGNC complete gene set from the HGNC download site
Example: update all resources
pheval update
The command will download the latest versions of the supported resources and store them in PhEval’s configured data directory.
When to run resource updates
You should consider running pheval update when:
- Installing PhEval for the first time
- Starting a new benchmarking experiment
- Updating PhEval or plugin versions
Running updates explicitly helps ensure clarity about which resources are being used.
Resource provenance and reproducibility
When tools are executed via pheval run, information about shared resources is automatically recorded in the run metadata.
Each run produces a results.yml file that captures, among other details:
- The tool and tool version
- The execution timestamp
- The corpus used
- The download dates of shared resources
Example:
tool: <TOOL_NAME>
tool_version: <TOOL_VERSION>
config: <TOOL_CONFIG>
run_timestamp: <TIMESTAMP>
corpus: <CORPUS_NAME>
mondo_download_date: <MONDO_DOWNLOAD_DATE>
hgnc_download_date: <HGNC_DOWNLOAD_DATE>
tool_specific_configuration_options: null
By recording resource download timestamps alongside each run, PhEval enables:
- Tracing which ontology and mapping versions were in use
- Comparison of results across runs performed at different times
- Transparent reporting and reproducibility
As long as results.yml files are preserved alongside benchmarking outputs, manual tracking of resource versions is not required.
Updating resources using pheval update should therefore be treated as an explicit experimental choice and interpreted in the context of the recorded run metadata.
How resource updates fit into a workflow
A typical workflow involving resource updates might look like:
- Install PhEval
- Update shared resources using
pheval update - Prepare input data and corpora
- Run tools via plugin-provided runners
- Benchmark and analyse results