Scope
Agent-assisted checks on synthetic raw load counts, staging data quality, mart provider-month measures and QA view specifications — before a reporting table is trusted for narrative use.
- EXPECTED_SYNTHETIC_LOAD_COUNTS.md
- dq_register.csv
- linkage_analysis.csv
- 05_qa_views.sql (spec only — not deployed to live Azure)
- demo_provider_month_measures.csv
Assurance results
| Check | Figure / result | Comparator | Trend | Status | Human action |
|---|---|---|---|---|---|
| Row count reconciliation | CareCall 25,942; CareCase 3,631; Legendary 7,928; RosterFlow 40,926; Ledger 7,360 | source_manifest.csv expected counts | Stable at load | Pass — demo | BI lead confirm load completeness after any source refresh. |
| Missing business keys | 322 Mar cases without SourceContactId; 47 orphan CareCaseCaseId on contacts |
Feb: 123 without source; background orphan rate | Spike in Mar | Review required | Staging owner review join rules and extract inclusion flags. |
| Ambiguous call-to-case matches | 1,016 contacts with AMBIGUOUS linkage scenario |
4,754 direct CareCase matches | Structural | Flag — do not force match | Apply bridge table per linkage_resolution_strategy.md. |
| Expired user mappings | 9 LocalOps rows with ValidToDate in the past |
Active mapping population | Low volume | Tier confidence | Do not hard-fail joins; apply mapping confidence tier. |
| Date-boundary mismatches | 46 Dec 2025 IUCS contacts: ContactDate before CreatedDateTime date |
Negligible in other months | Localised to Dec | Flag not dedupe | Information lead confirm CareCall export window change (2025-12-04). |
| Extract change impacts | 3 extract log entries in period; CareCase inclusion rule change 2026-02-28 | Jan–Feb: no CareCase rule change | Mar divergence | Cross-reference volumes | Data owner confirm effective dates before operational narrative. |
| Reporting table caveats | Mart tagged _synthetic=TRUE; Jun 2026 partial month (4 cases) |
Full months Sep 2025–May 2026 | N/A | Caveat required | Performance lead sign-off; stock vs activity separation. |
Why this matters for mandatory reporting
In live NHS assurance, teams run similar checks before KO41a, MHSDS, SitRep or internal board tables are trusted: row counts against source, key integrity, linkage quality, mapping validity and extract-change impacts. An agent can draft and organise these checks from approved sources — but the accountable Information Lead, performance manager or submission owner must still confirm definitions, sign off exceptions and approve publication.
This synthetic example mirrors that pattern. It is not a substitute for statutory submission validation.
Downstream use
After assurance, reporting narratives should consume checked marts — see synthetic urgent-care warehouse analysis and the corrected provider-month brief.
qa.MonthlyContactCaseTrend view uses a simplified join; profiler volume_trends.csv is authoritative for month-on-month trends in this demo.
Audit trail (source paths)
site/warehouse-demo/sql/EXPECTED_SYNTHETIC_LOAD_COUNTS.mdsite/warehouse-demo/profile-output/dq_register.csvsite/warehouse-demo/profile-output/linkage_analysis.csvsite/warehouse-demo/sql/views/05_qa_views.sqlsite/warehouse-demo/marts/demo_provider_month_measures.csvsite/warehouse-demo/checkpoints/runs_2_5_internal_qa.md