report.py mixed DB-reading generation with string formatting: the four render_*_report(run_id, session) functions each re-fetched via generate_report, so the HTML/Markdown/JSON formatting was welded to storage and could not be unit-tested from a plain dict. Extract the formatting into a new pure report_render module whose renderers take the already-built report dict (no session, no storage import). Migrate every caller to generate-then- render, delete the old coupled renderers with no back-compat shim, and drop the _aggregate_runs middle-man alias in favour of metrics.aggregate_runs. |
||
|---|---|---|
| .. | ||
| agents | ||
| channels | ||
| config | ||
| evaluation | ||
| model_protocols | ||
| scenarios | ||
| services | ||
| storage | ||
| utils | ||
| web | ||
| __init__.py | ||
| model_gateway.py | ||
| models.py | ||
| task_registry.py | ||
| version.py | ||