Overview
Most observability tells you that a service returned errors. It rarely tells you the thing your customer noticed: the work you owed them did not finish on time. Delivery reliability closes that gap. You tell WHAWIT when a unit of work starts, which steps it goes through, and when it is due. WHAWIT assembles those signals into a single record, notices when one goes missing, ranks what keeps breaking, and — where you allow it — retries the failure automatically.What a delivery is
A delivery is one unit of work your business owes a customer, from start to finish. The word is deliberately generic. In practice it is whatever your product promises:
Three properties make it different from a request or a span:
- It spans services and teams. A delivery fails if any step fails, no matter which team owns that step. Your customer does not care where the boundary was.
- It has a deadline. A delivery that succeeded four hours late is not a success.
- It is the unit the customer counts. Not requests, not errors — deliveries.
Step names are yours.
order, pick, ship — or anything else. WHAWIT does not
impose a pipeline; it records the one you describe. See
Configure for your business.Why an error rate is not enough
A 99.98% success rate on your API says nothing about whether the 12 payroll runs due at 09:00 actually filed. Aggregate error rates hide three things a delivery view surfaces:- Silence. The worst failure emits nothing at all — a job that never ran, a queue that stalled. There is no error to count. A deadline that passes with no result is the only signal that catches it.
- Business weight. One failed delivery for a large customer and one failed health check are the same line in an error rate. They are not the same event.
- Who was at fault. A destination that rejected bad credentials is a customer configuration problem; a timeout in your own egress is yours. Both look like “errors” until they are attributed.
The on-time signal
Every delivery can carry a deadline,expectedBy. When it resolves, WHAWIT compares the two and records whether it was on time.
If a delivery has no deadline — you did not send one and no default is configured — it is simply not tracked for timeliness. Nothing breaks; you just do not get an on-time number for it.
When a deadline passes and no result has arrived, WHAWIT marks the delivery missed and raises an incident through the normal incident lifecycle: triage, escalation policy, on-call schedule, and any Jira or OpsGenie sync you already have. A missed delivery is not a separate alerting stack — it is an incident like any other.
Without human intervention
The headline metric is the percentage of deliveries that arrived on time with nobody stepping in. A delivery counts toward that numerator when all of the following hold:- it succeeded,
- it was not late, and
- nobody recovered it by hand — either nothing was needed, or automated recovery handled it.
WHAWIT reports both numbers side by side — with and without human intervention — because
the gap between them is the work that automation can remove.
What the number does not include
Two rules keep the metric honest, and both can surprise you the first time:- Only production traffic counts. Deliveries tagged
testorinternalare excluded from every KPI. Load tests cannot inflate your reliability, and a broken staging pipeline cannot deflate it. - A day with no traffic has no percentage. It is reported as no data, not as 100%. A quiet weekend should not look like a perfect one, and it should not average into your trend as if it were.
Decomposition
The headline number tells you where you are. The decomposition tells you what to do next. WHAWIT breaks the shortfall down by kind of work, by fault attribution, by whether the failure was transient or permanent, and by error signature — each ranked by how many deliveries it cost you. The top row of that table is the highest-value fix available.What you get once deliveries are flowing
Delivery board
Every delivery with its step timeline, what failed and where, on-time status and links
to the underlying traces.
Reliability dashboard
The hands-off on-time rate over time against your target, with the decomposition of
everything below it.
Failure modes
Recurring error signatures ranked by the deliveries they cost — a prevention backlog
rather than a log search.
Judgment queue
The failures automation could not clear, with the agent’s read on each one and the two
actions that resolve it: retry or escalate.
Next steps
1
Send outcome events
Instrument your pipeline with the SDK or the HTTP endpoint. See
Send outcome events.
2
Describe your business
Tell WHAWIT what your units of work are called, which steps they should have, and when
they are due. See Configure for your business.
3
Automate the recovery
Register an endpoint WHAWIT can call to re-drive a failed delivery, under a policy you
control. See Auto-recovery and failure modes.

