Target branch: feature/issue-1-registry-refactor (based off develop)
All PRs for this work should target this branch, not main.
Parent PRD
#1
What to build
Change create_task in nanny/core.py to return a Task NamedTuple holding both the handler and the built config. Update all callers (inputgen.py, validator.py, aggregator.py) to pass config explicitly to handler domain functions. Remove dynamic format_string registration from nanny/core.py — callers use config.format_string() directly. Remove handler.config mutation.
Acceptance criteria
Blocked by
User stories addressed
- User story 6
- User story 15
Parent PRD
#1
What to build
Change
create_taskinnanny/core.pyto return aTaskNamedTuple holding both the handler and the built config. Update all callers (inputgen.py,validator.py,aggregator.py) to pass config explicitly to handler domain functions. Remove dynamicformat_stringregistration fromnanny/core.py— callers useconfig.format_string()directly. Removehandler.configmutation.Acceptance criteria
TaskNamedTuple withhandler: TaskHandlerandconfig: ConfigBasefieldscreate_taskreturnsTaskinstead of a handler with config baked ininputgen.pypasses config explicitly tohandler.build_input_params(config)and usesconfig.format_string()/config.runiddirectlyvalidator.pypasses config explicitly tohandler.create_outfile_catalog(config)aggregator.pypasses config explicitly tohandler.build_aggregator_params(config, average)format_stringregistration innanny/core.pyremovedBlocked by
User stories addressed