fasthep-curator
fasthep-curator provides dataset inspection, metadata extraction, validation, and schema generation utilities for FAST-HEP workflows.
The Python import namespace is:
import fasthep_curator
Scope
fasthep-curator is responsible for:
- dataset inspection
- branch discovery
- schema generation
- metadata extraction
- validation helpers
- workflow diagnostics
- runtime error reporting helpers
- caching of inspection artifacts
It is the dataset and metadata management layer of the FAST-HEP ecosystem.
Relationship to fasthep-flow
fasthep-flow provides:
- workflow compilation
- orchestration
- execution planning
- backend interfaces
fasthep-curator provides:
- dataset metadata
- source schemas
- validation utilities
- dataset inspection tooling
- diagnostics and reporting helpers
In practice, most HEP users will use both packages together.
Recommended companion packages
-
fasthep-flow- workflow language and execution engine
-
fasthep-carpenter- HEP analysis transforms
- histogramming
- event processing
-
fasthep-render- plotting
- tables
- reports
-
fasthep-cli- the unified
fasthepcommand-line interface
- the unified
Alternatively, install the meta package:
pip install fasthep
Installation
Install directly:
pip install fasthep-curator
Development environment:
pixi install
pixi run ci
Minimal example
Example dataset inspection:
datasets:
DYJets:
files:
- /data/example.root
source:
type: root_tree
tree: Events
Example metadata artifact:
source_schema:
events:
pt: float
eta: float
phi: float
ROOT Schema Inspection
Curator provides the reusable Python schema-inspection API. Command-line access is exposed through the central FAST-HEP CLI.
Inspect a ROOT TTree interactively:
fasthep inspect schema input.root --tree Events
The default output is a readable table with field name, logical dtype, shape, and ROOT storage type.
Extract a pasteable YAML list for keep: or drop: workflow parameters:
fasthep inspect schema input.root \
--tree Events \
--include 'GenJet*' \
--include 'GenMET*' \
--include 'Generator_*' \
--format yaml-list
Generate a starter hep.align_schema document:
fasthep inspect schema input.root \
--tree Events \
--include 'GenJetAK8_*' \
--format alignment
Field filters use shell-style glob matching. Repeated --include options are
unioned in source field order; repeated --exclude options remove matches
after includes:
fasthep inspect schema input.root \
--tree Events \
--include 'Gen*' \
--exclude 'GenPart_*'
The same inspection implementation is available from Python:
from fasthep_curator.api import inspect_root_tree_schema
schema = inspect_root_tree_schema("input.root", tree="Events")
Design principles
fasthep-curator focuses on:
- reproducible metadata
- reusable inspection artifacts
- declarative validation
- cached schema discovery
- workflow diagnostics
- experiment-agnostic interfaces where possible
The package intentionally separates dataset/metadata management from workflow orchestration and analysis execution.
Documentation
Main FAST-HEP documentation:
API documentation for this package:
Repository
Main FAST-HEP repository and project links:
Contributing
Contribution guidelines, development setup, and project-wide documentation are maintained centrally in the main FAST-HEP repository.
Legacy branch
Earlier prototype implementations are preserved in legacy repositories and branches.
The current repository contains the split-package FAST-HEP architecture.
Status
FAST-HEP is currently in active pre-alpha development.
Interfaces may evolve rapidly while the package split and stabilization work continues.
Metadata
Release files for fasthep-curator 2026.8.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fasthep_curator-2026.8.1.tar.gz | 17.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fasthep_curator-2026.8.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 40.1 kB
Release files / fasthep_curator-2026.8.1.tar.gz
| Download URL | fasthep_curator-2026.8.1.tar.gz |
|---|---|
| Size | 17.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
41e6b070a31376efd6093ce837cae50d8f9272d24a3e28881a1797da32c17179
|
|
BLAKE2b-256 checksum How to use checksums |
48bf7ff441d4513cdf6e2b648c3a9b050c540a89ca564ed5ffa09327374d5943
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 19, 2026.
Transparency logRelease files / fasthep_curator-2026.8.1-py3-none-any.whl
| Download URL | fasthep_curator-2026.8.1-py3-none-any.whl |
|---|---|
| Size | 22.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2fb4c8addfc95fd76bd0f8c27d4abba21f39aeb951ee535054e0e243fbc817c7
|
|
BLAKE2b-256 checksum How to use checksums |
6342bf82b4208db8a116a80abd70488225a620bbc7c908ca8a3cdc9bb3dff2cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 19, 2026.
Transparency log