Restructured src to more logical heirachy

This commit is contained in:
2026-02-09 16:22:05 +00:00
parent 7e63e6ea45
commit fcbde7c689
35 changed files with 0 additions and 0 deletions
+27
View File
@@ -0,0 +1,27 @@
# CLI Package
Command-line interface for pathway data refresh operations.
## refresh_pathways.py
Main CLI module for refreshing pre-computed pathway data from Snowflake to SQLite.
**Key Functions:**
- `refresh_pathways()` — Orchestrates full pipeline: fetch from Snowflake, transform via tools/data.py, generate pathway charts, insert to SQLite
- `insert_pathway_records()` — Bulk inserts using parameterized queries with `INSERT OR REPLACE` (handles overwrites via UNIQUE constraint)
- `log_refresh_start()`, `log_refresh_complete()`, `log_refresh_failed()` — Tracks refresh status in pathway_refresh_log table
- `get_default_filters()` — Loads available trusts, drugs, directories from CSV files
**CLI Arguments:**
- `--chart-type [all|directory|indication]` — Which pathway types to refresh (default: all)
- `--dry-run` — Test without database changes
- `--minimum-patients N` — Pathway nodes with <N patients filtered out (default: 5)
- `-v, --verbose` — Enable debug logging
**Usage:**
```bash
python -m cli.refresh_pathways --chart-type all
python -m cli.refresh_pathways --chart-type indication --dry-run -v
```
**Note:** Module uses sys.path bootstrap at top to enable `python -m cli.refresh_pathways` from project root.