Brief
United American Construction is a storm-restoration contractor in Illinois. Over fourteen sprints we built them an intake channel, a pipeline carrying real financials, a follow-up engine, a voice agent, a carrier hold-call agent, and a digital manager that assembles a daily operating report. Every one of those components passes its tests. The flattering version of this case study writes itself, it is true, and it is also the version every agency writes. The honest version is better: everything under our control is green, and everything that requires a human habit — ours or the client's — is at or near zero. The engine now has a fuel line, a fuel pump, a filter and a gauge. No fuel has gone through it. There are no outcome claims here, because there are no outcomes yet.
Two headline numbers, corrected
The 38-consecutive-morning-reports figure means generated, not delivered. The digital manager assembled an owner's operating report on 38 consecutive days, and the system is recorded as live with delivery dormant: the owner alert webhook was unset, so reports and their gate tasks were written to the database and went no further. The build worked; the delivery leg was never plugged in, which is our defect, not the client's. And the contracted-value headline does not survive contact with the field it is computed from: the internal record describes contracted value as having crossed a million dollars, that precise figure could not be corroborated, and contracted is not collected. Of 45 approved jobs, 3 carry a real approved value — counted by reading the approved-value column job by job during the 360-plan review. Any contracted-value headline built on that field is a floor over a mostly-empty column, and presenting a floor as a result is the exact behaviour this practice exists to avoid.
Green Is Not Adopted
The framework the review ran on, in four steps. One: split the scoreboard into what you control and what requires a human habit — the controlled side holds fourteen sprints of passing infrastructure; the habit side holds the number that carries the whole story, zero vendor messages ever received on the number built to receive them, established by reading both inbound message tables end to end and attributing every row to the handset or probe that produced it. Two: for every zero on the habit side, establish the chain of the ask — who asked, whom, through which channel, and whether it landed. Three: count only what could have been acted on — eight approval tasks sat undecided, but five predate the fix that made approvals reachable at all, so three is the defensible number and three is what gets reported. Four: treat small gates as rehearsals for expensive ones — if a one-tap approval sits for six days now, it will sit for six days when it is an adjuster appointment, and that one costs the job.
The load-bearing unknown
The largest zero in the estate is the vendor lead flow, and the reason it is zero is not established. What is known: the number exists, it is monitored, and nothing from the vendor has ever landed on it. What is not known is who was asked to switch the destination, through which channel the request travelled, and whether it ever reached the dispatcher who actually sends the leads. The vendor declined and the request never arrived are different findings with different remedies — one is a commercial problem answered with a different arrangement, the other a coordination problem answered with a named recipient, a written request and a read receipt. Nothing measured so far distinguishes them, so the next action is to establish the chain of the ask before proposing any remedy at all.
Whose gap this is
There is a version of this document that lists the client's unfinished items and stops. We are not writing that one, for a reason that is operational rather than diplomatic. Be careful with the word asked: they were asked and did not act is a very different conversation from the request never reached the person who could act, and getting it wrong in front of a client spends trust to buy an excuse. And the clause that has to be in this piece: if the answer turns out to be I didn't know I was supposed to do anything, that is a framing failure on our side, not the client's. Building a system that requires a habit, and not making the habit obvious, is a design defect with a person-shaped symptom. The alert webhook that was never set is the same category of error, and it was entirely ours.
What is not yet proven
No business outcome is claimed — not lead volume, not conversion, not revenue; the systems are built and the inputs have not arrived. The reason for the vendor-lead zero is unknown, and the two candidate explanations carry different remedies. Contracted value is not a verified figure and contracted is not collected. The three undecided approvals are a small sample — three data points establish that a tap can sit, not a pattern. And delivery of the daily report is a recent capability, not a track record: the 38-day run measures generation.
If you are being sold an automation programme, the question worth asking is not what it can do. It is which parts require somebody to change what they do on a Tuesday morning, and how that change will be counted. Ask for that list before anything is signed. On this engagement we will keep publishing ours, adoption gap and all, on the same schedule as the parts that work.