The brief that knows where to look first
A brief built only from the sources a human approved, with a citation on every field and the claims problems caught before a creative hour is spent.
An independent health and wellness communications agency in the Research Triangle, about 140 people, 3 practice areas, with operations centralized under one ops lead only a few months ago. Just over half the book is moving from time-and-materials to fixed fee this year. Under the old model, an afternoon spent hunting for the right context before a brief billed to the client. Under the new one, it comes out of the ops lead’s own margin, on every job.
Before
Ask an account supervisor what the hard part of a brief is and it’s never the writing. The writing is an hour. The hard part is everything before it: which of the people on the account actually has the client thread, which channel carries decisions and which one is banter, which folder in the document store holds this year’s SOW and which one holds last year’s, sitting right next to it with last year’s rate on it.
The good supervisors know. They know it the way you know which stair creaks: from years on the account, in their heads, nowhere else. Nobody in the building would call prioritizing sources a process. It felt like an art, and the art walked out the door every time someone changed accounts.
The cost shows up late. A reviewer catches the stale rate, or an audience the product isn’t approved for, and the brief gets rebuilt. On time-and-materials, that rebuild billed. On fixed fee, it’s margin dollars, and a regulatory problem caught after creative starts costs a round of creative on top.
They had tried the sensible things. The professional HCP practice had a refined brief template, so the plan was to hand it to the other 2 practices. It didn’t take, because a template tells you what fields to fill, not where the truth for each field lives. The obvious AI move had the opposite problem: paste in an inbox and a folder, and a model writes a fluent brief from whatever it’s given. The stale SOW reads exactly as fluently as the current one. And there was an in-house applied-AI team, 2 people and an open role, with a backlog that already ran past the year.
What was done
We didn’t start with a model. In fact no model runs anywhere in the build. We started by asking the ops lead and one account supervisor to write down, for a single account, where the truth lives.
That document is the source map, and it’s the whole idea. It lists the places to read in priority order: the job in the project tracker, the current SOW folder, the current brand folder with the approved claims library, the last 3 approved briefs, the supervisor’s inbox filtered to this account and the last 45 days, and the account’s working channel. It also lists what never gets opened, each with a reason: the archived time-and-materials SOW, the superseded brand core, unapproved drafts, the account director’s inbox full of cc copies, the social channel, the agency-wide channel. A human approves it, and the system refuses to run on a map without an approver’s name on it.
The judgment gets written down once, then executed every time. That’s the trade.
Then the brief. Every field is built from a line the system found in a mapped source, and every field carries its citation: file and line, plus the message id for mail and chat. An item with no source isn’t written. After assembly, every citation is re-read cold from disk and checked against the line it names, so the trail can’t drift from the files.
Then the claims pre-screen, run against the brand’s approved-claims library before anyone opens a layout file. This isn’t a review of finished creative; we’ve built that elsewhere. This one screens the brief, before a creative hour is spent. On the seeded job, the client’s own email asked for a headline that said the product stops episodes, a subject line leading with the efficacy statistic, and an audience widened to pediatric specialists the product isn’t indicated for. All of it landed in the draft, because it was really in the client thread. All of it got flagged, with the rule it breaks and the line it came from.
Then review, in the agency’s own order: account director, medical and regulatory lead, creative director. Some notes edit this brief. Some should outlive it: land every MLR submission on the client’s review day, no statistic in a subject line for this brand, people living with the condition, not sufferers. Those become standing preferences in the account brain, and v2 is regenerated from the sources with them enforced. A control copy assembled without the preference store brings the old phrasing straight back. That’s how you know the rule is doing the work.
The wobble
We got the shape of the agency wrong before we wrote a line of code. In the discovery conversations this build draws on, we walked in assuming there was a company-wide SOP for briefs, and that the practice areas would differ at the edges but not in the middle. The buyer corrected us in the room. Centralized operations was only months old. There was no shared SOP. The practice areas differed far more than they matched: one ran a refined template, one ran an informal checklist, one barely used either. Our plan to build for every practice area at once collapsed on the spot. We rebuilt it as one practice area done deep, the one with the refined template, and an architecture where each other area gets its own account brain and source map when the people who know it write one. Narrower than we pitched, and the only version that would have worked.
After
Measured on our build, with seeded data, not on anyone’s floor. On the seeded job, 9 of 9 brief fields carry provenance, and all 66 citations were re-read from disk and verified with 0 failures. The claims screen raised 4 flags on the first draft, 3 high and 1 medium, and 0 after review.
What we haven’t measured matters as much. Time per brief before this system: not measured, and the hours in the seeded briefs are fiction. Human review time: not measured; review here is simulated. Accuracy on real, messy inboxes: not measured. The claims screen catches what its rules describe and nothing else; it’s a pre-screen, not MLR. The before-and-after number an ops lead actually wants needs a real pilot with timed human intake.
The texture is where the change lives. Where to look stops being re-derived on each job; it’s answered once per account, with a name and a date on it. When a supervisor moves accounts, the map stays. The stale SOW never gets read, because nobody has to remember to skip it. The client’s off-label ask surfaces at the brief, where it costs a phone call, instead of at MLR, where it costs a round. A reviewer’s note that should hold for the account stops being something the next supervisor has to hear twice.
And the estimate field shows the fixed fee against the account’s trailing actual hours before the job starts, which is the one number the ops lead is now judged on.
What it required
The ops lead as sponsor, personally approving each source map. The system executes the map; it doesn’t learn one. If nobody senior will put their name on where the truth lives, there’s nothing to run.
The supervisors had to spend the hours writing down what they carry in their heads, including the uncomfortable part: which inbox is noise and which colleague’s folder nobody trusts.
The medical and regulatory lead had to write the claims rules as rules, not instincts.
And the in-house AI team had to let us ship alongside them, into the tracker and document store they already own, so their backlog got shorter instead of competing with ours. The rest of the practice areas are theirs to extend, on the same architecture, one map at a time.