← Back to the demo
This document was generated by the close itself and is shown exactly as
produced (draft status and all). How it fits in the workflow is explained on the main page.
QA Report: EventCo Budget vs Actual & Rolling Forecast
Generated by agents/qa_agent.py. This agent never reads data/ground_truth.md. Every check below cross-references the pipeline's own outputs against each other, the same way a reviewer would on a real, unseen monthly close with no answer key.
Status
8 passed, 0 failed, 0 skipped.
Human sign-off required. This report, and the assembled pack it accompanies, are drafts. Nothing in this pipeline is sent to anyone automatically. A human reviewer must read this report and the pack, and explicitly approve before either is distributed.
Consistency checks
- PASS: all 20 material variance row(s) carry a legitimate explanation type: 4 evidence-cited, 14 labeled analyst input, 2 explicitly open
- PASS: all 34 variance-flagged row(s) are accounted for in the forecast normalization audit trail
Data governance checks
Confirms the project's core control principle: only the Narrative Agent may call an external AI provider, and only with already-aggregated summary data, never the raw dataset, never client-identifying transaction detail.
- PASS: no agent other than narrative_agent.py references an external AI provider
- PASS: narrative_agent.py's file reads are scoped to the two aggregated report files only
Narrative grounding checks
- PASS: All 15 monetary figure(s) in the narrative trace back to a source figure within 0.5%/EUR15,000
- PASS: All 17 percentage(s) in the narrative trace back to a source figure within 1.0 pp
- PASS: narrative preserves the honesty language (3 source rows had no driver)
- PASS: excluded data-error row is mentioned without being framed as a business event