feat(01-04): add CLI entry point with setup and info commands

- Create click-based CLI with command group (--config, --verbose options)
- Add 'info' command displaying pipeline version, config hash, data source versions
- Add 'setup' command orchestrating full infrastructure flow:
  - Load config -> create store/provenance
  - Fetch gene universe (with checkpoint-restart)
  - Map Ensembl IDs to HGNC + UniProt
  - Validate mapping quality gates
  - Save to DuckDB with provenance sidecar
- Update pyproject.toml entry point to usher_pipeline.cli.main:cli
- Add .gitignore for data/, *.duckdb, build artifacts, provenance files
This commit is contained in:
2026-02-11 16:39:50 +08:00
parent e29d39d1dc
commit f33b048635
5 changed files with 378 additions and 1 deletions

View File

@@ -42,7 +42,7 @@ dev = [
]
[project.scripts]
usher-pipeline = "usher_pipeline.cli:main"
usher-pipeline = "usher_pipeline.cli.main:cli"
[tool.setuptools]
packages = ["usher_pipeline"]