I finished 24 WIMPER social drafts, then rewrote all 24 because the first versions sounded written instead of spoken.
At the same time, I increased one content reconciler from daily to every 30 minutes. I did not add another publisher, and I did not let 366 overdue follow-ups escape a pipeline with unresolved identity problems.
What Got Built
- I separated WIMPER social content into two partner lanes. One bank is for traditional medical and group-benefits brokers. The other is for principal-led payroll and ASO owners. The finished draft-only package contains 16 X posts and 8 LinkedIn posts, with no public posting triggered by the work.
- I rewrote all 24 drafts into my spoken voice. The revision was not a light copy edit. It replaced language that read like marketing copy with shorter, plainer phrasing and then ran deterministic checks for length, prohibited claims, hashtags, and em dashes.
- I widened the payroll qualification definition without turning it into a general employee list. Qualified ownership can include a professional provider or an experienced in-house operator with direct authority over the system. General office and HR liaisons remain excluded.
- I made the canonical content publisher reconcile every 30 minutes. It had been running once daily. The faster schedule let the same authoritative path verify WIMPER Hawaii content item 229 after the live title became available, without creating a competing publisher.
- I kept revenue and pipeline work behind the existing gates. The system produced its daily artifacts and added deterministic delivery of weekday medical-broker research to my Gmail. It did not reopen sending or mutate uncertain pipeline records.

What Broke (And How I Fixed It)
The most visible failure was the social copy.
The first pass had the right subject matter and the wrong mouth. It sounded like something written for me rather than something I would actually say. That difference matters because an agent can satisfy a topic brief, avoid prohibited claims, and still produce work that creates review debt instead of saving time.
I did not preserve the first drafts just because 24 completed items looked productive. I rewrote 16 X posts and 8 LinkedIn posts, then checked the revised bank with rules a script can verify: character length, claim restrictions, hashtags, and punctuation I do not use.
Voice itself is harder to turn into a pass-or-fail rule. The practical fix was to combine human correction with deterministic boundaries. I supplied the correction on how the writing should sound. The checks made sure later editing did not reintroduce known mechanical problems.
The audience definition also needed repair.
Medical brokers and payroll owners can both introduce an employer to WIMPER, but they do not arrive with the same incentive or vocabulary. A medical or group-benefits broker is thinking about the benefit relationship and the employer client. A payroll or ASO owner is thinking about system authority, operating fit, and an ongoing service relationship.
Blending those audiences would make every post more generic. I split the banks before continuing the rewrite. I also clarified that payroll ownership is not limited to one job title. A professional provider or an experienced in-house operator can qualify when that person has direct system authority. A general liaison does not qualify just because payroll appears somewhere in the person’s responsibilities.
A second failure came from evidence collection. GitHub’s commits API returned HTTP 401, which means the remote credential was rejected. Verified local git history supplied the seven-commit count. I named the fallback rather than filling the gap with an estimate.
The larger break remains unresolved.
The pipeline still has 68 duplicate-email identity groups, 47 stale contacted records, and 366 sequence touches that are due but held. Those are three different truth problems. Duplicate identities can cause the same person to exist more than once. Stale stages can make old activity look current. Due touches can make unsafe work appear urgent.
I kept mutation and sending closed. Twenty-four usable social drafts and ten publication or deployment receipts did not make uncertain outreach records safe.
The Lesson
Separate adjacent audiences before asking an agent to write.
Here is what I would tell someone building a content system: shared outcomes do not mean shared messaging. Write down each audience’s role, incentive, authority, and vocabulary first. If those four fields differ, give each audience its own bank and its own review criteria.
Treat voice correction as system input, not one-off editing.
When copy does not sound like you, do more than repair the sentence in front of you. State the correction plainly, rewrite the full affected batch, and add deterministic checks for every mechanical preference a script can enforce. Human judgment should own what “sounds like me” means; software should prevent already-settled errors from returning.
Increase cadence through one idempotent owner.
An idempotent process can run again without duplicating the action it already completed. When reconciliation is slow, speed up the one authoritative reconciler instead of creating another watcher or publisher. That improves response time without creating two systems that can both decide to publish the same item.
Creative progress does not clear operational gates.
Content output and pipeline safety are separate scoreboards. A full draft bank does not resolve duplicate identities. A live article does not repair stale stages. Require direct evidence for the gate controlling the next external action.

The Numbers
- Commits: 7 total (0 agent, 7 Matt)
- Agent jobs run: 22
- Prospects added: 0
- Emails sent: 0
- Social posts: 0
- Social drafts rewritten: 24 (16 X, 8 LinkedIn)
- Content publication and deployment receipts: 10
- Duplicate-email identity groups awaiting repair: 68
- Stale contacted records: 47
- Held sequence touches: 366
The important pair is 24 and 0.
Twenty-four drafts were produced and rewritten. Zero were posted. The work created a reviewable content bank, not permission for external action.
The other important number is 366. Those follow-ups are due according to time, but they are not safe according to the underlying records. A useful automation system has to understand that “ready on the calendar” and “cleared by evidence” are different states.
What’s Next
Review the two WIMPER social banks separately, then repair the 68 duplicate-email groups and reconcile the 47 stale contacted records before releasing any of the 366 held touches.