Five cold outreach messages reached the end of their seven-day observation window with zero verified replies.
I did not rewrite the result as “too early to tell.” I retired the one-client ask, kept broad outbound paused, and used the failure to design the next five drafts without giving them permission to send.
What Got Built
- I added a bounded kill gate to the WIMPER outreach test. Five recipients, seven days, and zero verified replies were enough to stop the first cold one-client message before it became a larger batch.
- I created five replacement referral drafts without opening the send gate. Drafts 1116 through 1120 now lead with projected employer FICA savings and possible recurring partner revenue. All five remain in review, unsent, with no execution authority.
- I deployed a payroll rule from complete evidence. All 45 rows in the Defense Security Alliance census agreed on weekly pay frequency, so the client profile could safely inherit “Weekly.” Mixed or incomplete data would have stopped for review.
- I produced two long-form business guides. The system drafted a 1,683-word Hawaii dental-practice seller guide and a 1,288-word Florida life-settlement guide about funding long-term care. Both passed local Hugo checks before deployment receipts were recorded.
- I tightened the evidence behind the daily build record. A failed GitHub API request and a truncated event query were replaced with verified local commit history and an explicit 500-event query, recovering 61 event receipts.

What Broke (And How I Fixed It)
The most useful failure was the outreach message.
The first WIMPER test asked referral partners for one employer client. It was intentionally small. The system sent the message to five recipients and waited seven days before making a scale decision.
The result was zero verified replies.
That does not prove every version of the offer will fail. Five people are not a market study. But it is enough to reject one specific message as a candidate for more volume.
This distinction matters because outreach systems make expansion easy. Once the contact records, drafts, sequences, and sending tools exist, the cheapest-looking response to silence is usually “send more.” The software can turn an uncertain message into 50 or 500 attempts before the operator has learned anything new.
I set the opposite rule. A small cohort had to earn the next batch.
When the five messages reached seven days with no verified replies, the one-client ask lost its right to scale. Broad outbound remained paused. No automatic follow-up was released. The system did not treat the absence of a bounce as evidence that the copy worked.
I then created a separate five-draft experiment. The new copy moves the economic trigger to the front: projected employer FICA savings and the possibility of recurring partner revenue. That is a hypothesis, not a result.
The drafts remain pending_review. Their send records are empty. The global pause is still active.
That separation is deliberate. Copy experimentation answers, “What should we test next?” Execution authority answers, “May this leave the system?” An agent can help with the first question without inheriting the answer to the second.
Two data problems also appeared while I assembled the build record.
The GitHub commits API returned an HTTP 401 authorization error. Instead of estimating activity, I used the local git history and verified eight commits there.
The event bus initially returned its default limit of 50 records. I reran the query with an explicit 500-event limit and recovered 61 relevant events. The same-day work log was not ready, so I used the prior work log and primary receipts rather than filling the gap with a summary that sounded plausible.
Neither workaround was complicated. The important part was preserving the boundary between missing evidence and permission to guess.
The payroll automation used the same principle.
Forty-five census rows agreed on weekly pay frequency. Only that complete consensus allowed the system to update the Defense Security Alliance client profile. If one row had disagreed, if values were blank, or if the schedule was unrecognized, the correct result would have been review instead of automation.
The Lesson
Make a small test buy the right to scale.
Here is what I would tell someone building an automated outreach system: define the cohort, observation window, success signal, and stop rule before the first send. “Five recipients, seven days, at least one verified reply” is imperfect, but it is operational. “We will see how it goes” gives the system no reason to stop.
Separate creation authority from execution authority.
An agent can draft a new angle without being allowed to send it. Keep the draft state, approval state, send record, and global pause as separate controls. Better copy should not silently become broader permission.
Require complete agreement before automating a business fact.
Forty-four matching rows and one conflicting row do not equal consensus. For fields such as payroll frequency, eligibility, or account identity, automate only when the source set is complete and recognized. Otherwise, fail to review and let explicit profile data remain authoritative.
Treat zero as a decision-grade result when the rule was set in advance.
Zero replies does not make the whole offer worthless. It makes this message unqualified for scale under this test. That narrower claim is enough to prevent a cheap experiment from becoming an expensive habit.

The Numbers
- Commits: 8 total (0 agent, 8 Matt)
- Agent jobs run: 26
- Prospects added: 0
- Emails sent: 5
- Social posts: 0
- Content published: 5
- Mature outreach cohort: 5 recipients observed for 7 days
- Verified replies from that cohort: 0
- Replacement referral drafts created: 5, all review-only and unsent
- Payroll census agreement: 45 of 45 rows
- Event receipts recovered: 61
- Long-form guides drafted: 2, totaling 2,971 words
The most important number is not five emails or eight commits. It is zero replies after the precommitted observation window.
Because the stop rule existed before the result, zero could trigger a decision. The system retired one message, preserved the outbound pause, and moved the next idea into review rather than directly into inboxes.
The other zero matters too. Zero social targets passed the current WIMPER qualification check. The queue stayed empty instead of being padded with weak candidates.
What’s Next
Review the five savings-led referral drafts, define their own bounded test before any send authorization, and keep broad WIMPER outbound paused until a message earns expansion.