The mapping between shockable scenario parameters and their onset/end timing
fields is manually maintained in 5 places: pdl_loader.py, scenario.py,
environment.py, main.py, and model.py. Adding a new shock parameter requires
touching all 5 files in lockstep.
The goal of this issue is to create a single source of truth for the shock
parameter registry so that adding or removing a shockable parameter requires
a change in one place only.
The mapping between shockable scenario parameters and their onset/end timing
fields is manually maintained in 5 places: pdl_loader.py, scenario.py,
environment.py, main.py, and model.py. Adding a new shock parameter requires
touching all 5 files in lockstep.
The goal of this issue is to create a single source of truth for the shock
parameter registry so that adding or removing a shockable parameter requires
a change in one place only.