RoyAalekh's picture
refactored project structure. renamed scheduler dir to src
03a506a
### Data Module — Parameters, Defaults, and Case Generation
Directory: `scheduler/data/`
This package is responsible for loading configuration/parameters, exposing default parameter tables, and (optionally) generating synthetic cases. These inputs are used by both the core scheduler and the simulation engine.
#### Files overview
- `config.py`
- Purpose: Data/config structures and helpers to read configuration (e.g., TOML under `configs/`).
- Typical contents: typed config models, IO utilities to load/validate values, and a central place to map file paths to parameter tables.
- Interactions: Consumed by dashboard utilities, simulation runner, and EDA.
- `param_loader.py`
- Purpose: Load parameter tables required by the scheduler and simulation from CSV/JSON defaults or project artifacts.
- Inputs (defaults): files under `scheduler/data/defaults/`, including:
- `adjournment_proxies.csv` — signals/statistics used to approximate adjournment likelihood.
- `case_type_summary.csv` — frequencies and basic properties by case type.
- `court_capacity_global.json` — nominal/maximum capacity settings.
- `stage_duration.csv` — typical durations per stage.
- `stage_transition_entropy.csv` — transition uncertainty by stage.
- `stage_transition_probs.csv` — Markov transition probabilities between stages.
- Outputs: in‑memory DataFrames/objects consumed by `core` and `simulation`.
- `case_generator.py`
- Purpose: Produce synthetic cases consistent with the parameter distributions for use in simulations or demos.
- Interactions: Reads parameters via `param_loader.py`; emits `core/Case` instances ready for ripeness evaluation and scheduling.
- `__init__.py`
- Purpose: Package initialization; may expose convenience imports for loader/generator utilities.
#### Data sources
- Project data: `Data/*.parquet` and derived artifacts in `reports/figures/*` (e.g., cleaned parquet, params CSVs).
- Defaults: `scheduler/data/defaults/*` bundled with the package as fallback/configuration baselines.