The Character That Broke Our Whole System (And What We Built Instead)
The workflow looked finished. Every box on the screen was wired, every credential connected. Then the run stopped halfway through, on the step that reads the AI’s output, with an error nobody wanted to see.
We traced it back to a single stray character in the AI’s output. One worker had written a week of draft content, formatted it the way we asked, and somewhere in the punctuation it produced something our system could not parse. It was a formatting problem, and it took down the whole run.
That is the part nobody tells you about building with AI. The failures are rarely dramatic. They are small, boring, and they happen at the exact spot you were not watching.
What we were building
610 is rebuilding its own operations around AI workers, and each one does a single job and reports back in the same format every time. One worker drafts a week of content from a written brand profile. Another will eventually handle other repeatable tasks. The idea is simple: narrow jobs, consistent output, a human checking the work before anything goes live.
Everything these workers know lives in one Postgres database, nineteen tables, row level security on every single one. No worker has access to more than it needs. No worker stores a password anywhere. Credentials live in a password manager, full stop.
The workers themselves run as scheduled n8n workflows. On paper this all sounds tidy. In practice, the first runs were a lesson in how many ways a tidy plan can snag.
What broke
The content worker was the first one live, and it was also the first one to teach us something. The early drafts technically worked. They were formatted correctly, they hit word counts, and they were also full of phrases nobody at 610 would ever say out loud. Too many posts sounded like they were announcing themselves. Too many stories led with the same kind of opening. The workers had no sense that a law firm managing partner and a property management owner needed two different posts, not one post copied twice.
We did not discover this by guessing. We read the drafts. Every banned phrase on our list, every rule about writing a different reader for each channel, came from sitting down and marking up what the AI actually produced. The rulebook is a record of mistakes we already caught.
Then came the technical break. A single character in the formatted output was enough to fail the entire batch. That is the risk of asking an AI to hand back something structured and hoping it behaves. Hope is not a validation strategy.
What we fixed
The fix was structural. We moved to structured output that the API itself validates before anything downstream ever sees it. If the format is wrong, it gets caught right there, not three steps later in a workflow that has already moved on. That single change removed an entire category of failure. We stopped trusting the AI to police its own formatting and let the system do that job instead.
The voice problems took longer to fix than the technical one. You cannot validate tone the way you validate a data structure. That took actual reading, actual red pen, a running list of words and constructions that were quietly banned one at a time as we caught them in the wild.
What it cost
It cost time we did not plan for, mostly in review. Every post still gets read by a person before it goes anywhere. That has not changed and will not change. It is too early to say how much that review time will shrink.
We have not published results from this system yet, because it is still being built. A chief of staff layer is planned next, something Matt will talk to by phone for a daily briefing instead of digging through a dashboard.
Why any of this matters if you are not building software
If you run a law firm or a local business and you are looking at AI tools, the lesson has little to do with Postgres tables or n8n workflows. Ask what happens the first time the tool gets something wrong. Does it fail loud and early, where a human catches it before a client sees it? Or does it fail quiet, three steps downstream, after it already went out the door?
That is the question worth asking before you turn any AI system loose on work with your name on it.
What would you want to know before you let an automated system touch something client facing?