File size: 1,186 Bytes
bfe6079 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | """
Dataset registry and adapter layer for the DecoupleRpy agent.
This package provides a dataset-agnostic interface for loading, validating,
and routing biological datasets into the decoupleRpy analysis pipeline.
Architecture
------------
manifests/
YAML files describing each dataset (one file per dataset).
All dataset-specific knowledge lives here: source URL, data type,
condition columns, expected sample counts, contrast definitions, etc.
registry.py
Discovers and indexes manifests by dataset_id. The single source
of truth for "which datasets exist." Adding a new dataset means
dropping a YAML file into manifests/ — no code changes required.
manifest_schema.py
Validates manifest structure and provides typed access to manifest
fields. Keeps the schema in one authoritative place.
Adding a new dataset
--------------------
1. Create src/datasets/manifests/<dataset_id>.yaml following the schema
in docs/DATASET_ADAPTER_SPEC.md.
2. The registry auto-discovers it on next import.
3. Run tests/test_dataset_registry.py to verify.
"""
from .registry import DatasetRegistry, get_registry
__all__ = ["DatasetRegistry", "get_registry"]
|