Report: The Zero-Gap
Screen: /dashboard/reports/zero-gapUpdated 2026-09-22For: Staff / caseworker, Founder
What this screen is for

The Zero-Gap (/dashboard/reports/zero-gap) is the promise clock: every case in the ledger, sorted by where it stands against the first-contact window this house promised when the case came in. This is the one report in the suite that reads live case data rather than a seeded example.
What you see, in the screen's own labels

- H1 "The Zero-Gap (The promise clock)."
- Scorecard tiles, the five promise stages: "Promise broken," "Clock running," "Contacted late," "Promise kept," "Case closed."
- Table columns: Case · Urgency · Shepherd · Promise clock · Changed.
- The promise windows, by urgency: Crisis today — 4 hours. This week — 3 days. Soon — 7 days. Not urgent — 14 days.
- The countdown itself reads "{n} hours/days left" while running, and once broken, keeps counting up: "broken {n} hours/days ago." It never stops or resets.
- Stage meanings, from the Key: - Promise broken — open, no human contact yet, and the promised window has already closed. - Clock running — open, no contact yet, window still open. - Contacted late — contact IS on the record, but it landed after the window closed. GraceBridge does not file that under "kept." - Promise kept — contact was made inside the promised window. - Case closed — no longer open; still counted so the ledger's own denominator stays honest.
What to do

- Read "Promise broken" rows first — they're sorted to the top, because that's the only stage where someone is still waiting past what this house told them.
- Treat "Contacted late" as a real miss, not a near-success — the report deliberately refuses to count a late contact as a kept promise.
What NOT to do

- Don't confuse "Case closed" with "off the hook." Closed cases stay on this report so the honest total is visible — the promise clock stopped when the case did, but the case is still counted.
- Don't read the countdown as pausing. It counts up forever once broken; there's no reset button that makes a broken promise look kept.
When something goes wrong

- No case in the ledger yet: "There are no cases in the ledger yet, so no promise has been made to keep."
- Everyone's already been contacted: "Nobody is waiting — as of {date}, every open case already has a first human contact on the record."
- Nobody is currently past their window: "Nobody is waiting longer than we said — as of {date}, all {n} open case(s) that have not been contacted are still inside the window this house promised."
