Manual json.dumps() scattered throughout the codebase is error-prone.
- Pydantic models with auto-serialization (simplest)
- Define InvestigationOutcome, JobResult as Pydantic models
- Repository methods accept models, handle model.model_dump_json() internally
- Type-safe, IDE catches errors
And do this elsewhere