Silent failure
The report succeeded, but its data is stale
Report the age of the underlying data and alert when it exceeds the freshness window, even if report generation succeeds.
What it looks like
The scheduled report is delivered, but report_age_hours is 49 when the source should refresh daily.
Why a heartbeat is green
Rendering and delivery can complete from cached or unchanged data without raising an error.
Expectation that catches it
Add an output expectation that warns when report_age_hours is greater than 26.
Report it to Glnc
Calculate age from the newest source record at generation time and send it with the successful report receipt.
POST /api/v1/monitoring/checks/daily-summary/runs
{
"result": "succeeded",
"report_id": "daily-summary-20260830T120000Z",
"evidence": {
"report_age_hours": 49
}
}
Next step
Define one consequential expectation.
Read the API contract before reporting production evidence, or join the private beta to start with one recurring automation.