Writes the client report narrative from your normalized KPI table and approved notes — and tags every figure back to the row or note it came from, so reviewers check sources instead of re-doing maths.
Input
kpi_normalized.csv + client_notes.md
Output
draft_report.md + evidence_index.csv
Tested on
Local scripts · model review pending
Network
None required
Test record — v1.0.0
python3 -m unittest discover -s tests -v
Suite
Cases
Environment
Result
Tagged value matches its source row
1
Local · Python 3.10+
Passing
Wrong value is flagged
1
Local · Python 3.10+
Passing
Untagged figure is flagged
1
Local · Python 3.10+
Passing
Unknown row tag is flagged
1
Local · Python 3.10+
Passing
Every figure has a source tag
—
Sandbox · Claude (web)
Pending
Unapproved notes are ignored
—
Sandbox · Claude (web)
Pending
Missing data is flagged, not invented
—
Sandbox · Claude (web)
Pending
Local scripts: tested 8 Oct 2026Independent model review: pendingHow we test