ConceptAdvancedResponsible AI & Advanced Practice / Responsible AI as a product requirement / #16
What documentation should accompany a model deployed in a regulated context?
SPARK the product is Palisade Pay, the buy-now-pay-later underwriting model inside Palterfen's checkout
Palterfen is an online retailer. Palisade Pay is the model built into its checkout that approves or declines a shopper's buy-now-pay-later request in under a second. Dashiell Kettner is the product manager who owns Palisade Pay, and the documentation that has to exist alongside it, since consumer credit decisions are a regulated space.
The direct answer
Ship a living decision record with the model, not a one-time launch memo: the exact model version behind every decision, the eval set that version was checked against, the specific reasons behind a decline in plain language, and a named path to appeal. A model card written once at launch and never touched again isn't documentation, it's a photograph of a system that keeps moving.
Do this, in order
Pin the exact model version to every single decision, not just to the launch.Why: models get quietly updated, and a decision record with no version pin can't be reproduced or defended.
Name the eval set that version was actually checked against.Why: a pass rate with no named eval set behind it is a number nobody can verify.
Record the real reason behind a decline, not just the score.Why: "your score was 41" answers nothing a regulator, or a shopper, can act on.
Give every declined shopper a real, named way to ask a human to look again.Why: a decision nobody can contest isn't a decision, it's a verdict.
Update the record every time the model changes, on a fixed schedule, not only when someone remembers to.Why: a record that goes stale the moment the model retrains is worse than no record, since it looks current and isn't.
Leave the live per-decision dashboard and the full retraining logs for later.Why: neither answers "why was this one shopper declined," which is the actual question a regulator asks first.
How to answer this, stage by stageSix moves. Say your structure early, since "documentation" sounds like a checklist question until you ground it in one shopper.
Stage 1
Ground the question in one real decision
Say it like this
"I'll answer this for Palisade Pay, a buy-now-pay-later model built into an online retailer's checkout. It approves or declines credit in under a second, and consumer credit is regulated."
Why this works
"Documentation" is an abstract word until it's attached to one shopper who just got declined.
Stage 2
Name the framework
Say it like this
"I'll use SPARK. Situation, the workflow today. Payoff, what habit we want. Anchor, the one design decision. Risk, what breaks if we're wrong. Keep out, what we don't build yet."
Why this works
Signals this is a designed artifact, not a list improvised on the spot.
Stage 3
Reframe what documentation is actually for
Say it like this
"This isn't paperwork for its own sake. It's the answer to one question: six months from now, can anyone explain why this specific shopper got this specific decision?"
Why this works
Separates a real requirement from a compliance ritual nobody ever expects to be read.
Stage 4
Give the concrete anchor
Say it like this
"The anchor is a living decision record, pinned to every single decision: the exact model version, the eval set it passed, the plain-language reason, and who to ask for a second look."
Why this works
This is the actual answer. Four concrete fields, not a vague promise to "be transparent."
Stage 5
Prove it survives being wrong
Say it like this
"When Palisade Pay quietly shipped a retrained version last spring, nobody had pinned which version had declined a batch of shoppers a regulator later asked about. It took three weeks to even confirm which model made those calls."
Why this works
A compressed real failure, showing the anchor isn't decoration, it's what that three-week scramble needed and didn't have.
Stage 6
Say what's out of scope, and close
Say it like this
"I wouldn't build a live public dashboard of every score on day one, that's a distraction. The four fields in the decision record are what a regulator, or a declined shopper, actually needs, and that's where the effort goes first."
Why this works
Shows judgment about scope instead of listing every possible artifact to sound thorough.
Let's learn
What happens the first time a regulator asks why one specific shopper, by name, got declined eight months ago?
Palterfen built Palisade Pay to approve or decline a buy-now-pay-later request the instant a shopper hits checkout, using income signals, order history, and a few dozen other features, no human in the loop for the vast majority of decisions.
Knowledge spark: what's a model card?
A short written summary of a model: what it does, what data trained it, how well it performs, and its known limits. Most teams write one once, at launch, and then never open the file again.
At launch, Palisade Pay had exactly one document: a two-page model card, written the week before ship, describing the version that had just passed its pre-launch eval.
How many of a regulator's six standard questions the record could answer, before vs. after
The launch card could answer what the model was built to do. It couldn't answer why one specific decision, made months later on a different model version, went the way it did.
At its worst, a version of Palisade Pay quietly retrained and shipped in March, using an updated income-verification signal, with no note anywhere linking that version to the decisions it was making. Nobody thought to update the two-page card. It looked the same as it always had.
The decision I would take back
We treated the model card as a launch artifact, something you write once to get through review, because at launch that felt like the whole job. That made sense when there was only one version of the model anyone had ever shipped. It stopped making sense the first time the model retrained quietly and nobody could say which version had made a specific decision three months back.
What I would leave alone: a live, public, per-decision dashboard showing every score in real time isn't worth building on day one. It answers a question almost nobody is actually asking, and it's a lot of engineering effort pointed at the wrong problem.
The gap was never about having "enough" documentation. It was about having a record that moved when the model moved, instead of one frozen at launch while the model kept changing underneath it.
The lesson: documentation for a regulated model isn't a one-time deliverable you file away. It's a system that has to update every time the thing it's describing does, or it quietly stops being true.
Now here is the same thing as a story
The short version above is what you'd say defending this design in a compliance review. Read this one for how the gap actually got found.
Dashiell Kettner keeps a printed model card clipped inside a binder on his desk, the same one from Palisade Pay's launch eighteen months ago, a little sun-faded at the edges from sitting near the window.
The whole decision happens in under a second, with nobody in the loop. That's exactly why the record around it has to do more work, not less.
For most of a year, that binder was enough. Regulators asked general questions, about the training data, about overall approval rates, and the two-page card answered them fine.
Then Palisade Pay's engineering team shipped a quiet retrain in March, swapping in an updated income-verification signal meant to catch a category of fraud that had been slipping through. Nobody flagged it as a documentation event. It felt like ordinary maintenance.
Same declined shopper, same regulator's question. The only difference is whether a record was built to answer it.
Eight months later, a state regulator's routine review pulled a sample of March declines and asked Palterfen to explain the reasoning behind one of them, a shopper declined for a request just under Palisade Pay's usual approval line.
Dashiell's team spent three weeks just confirming which model version had actually made that call, since nothing in the launch card said when the March retrain happened, what changed, or which decisions it covered.
A record that only opens once, at launch, has no second milestone to update at. The quarterly re-check is the piece that was missing.
Time to answer a regulator's question about a live decision, across the last six audits
Each retrain that went undocumented added a little more time to the next audit's answer. By audit six, three weeks to answer one question.
With the living decision record in place, that same March decline now takes about a minute to explain: the exact model version pinned to the decision, the eval set it had just passed, the plain-language reason for the decline, and the appeal path the shopper was actually offered.
Four fields. Every one of them was the exact thing the three-week scramble was missing.
The old model card described the system once, at the moment it was proudest of itself. The new record describes every decision, at the moment it was actually made.
I treated the card as a launch deliverable because that's when everyone was in the room asking for it. It took a three-week scramble to answer one regulator's question about one shopper to see that a model that keeps changing needs a record that keeps changing with it.
SPARK, the record as a designed anchorNot a compliance form. SPARK is what makes the record something the team actually keeps current instead of writing once and forgetting.
S
Situation. The workflow before any record exists.
A shopper checks out, the model scores and decides in under a second, no human touches the decision.
Grounds the anchor in a real workflow instead of an abstract regulatory requirement.
P
Payoff. The habit we actually want.
Any team member should be able to answer "why was this decision made" in minutes, without hunting down whoever remembers the March retrain.
The record's real job is building this habit, not satisfying a reviewer once.
A
Anchor. The one concrete design decision.
A living decision record, pinned to every decision: model version, eval set, plain-language reason, appeal path. Updated on a fixed schedule, not by memory.
The hardest step, and the answer to the actual question.
R
Risk. What breaks the first time we're wrong.
A quiet retrain, like the March one, that nobody thinks to log as a documentation event.
Designing for this risk is what the fixed-schedule update requirement is actually for.
K
Keep out. What we don't build yet.
A live public per-decision dashboard, a dedicated appeals team, full retraining logs for every experiment. All real, none of them day one.
Shows judgment about where the effort goes first.
All three are reasonable things to eventually build. None of them answer "why was this one shopper declined," which is the question that actually shows up first.
The recap, one line per letter: situation is the sub-second, human-free checkout decision, payoff is anyone answering "why" in minutes, anchor is the living decision record with its four fields, risk is the quiet retrain nobody logs, and keep out is the dashboard and the appeals team, both real, both later.
And if you want to be sure it really works, try it somewhere elseSame five letters, a textile mill instead of a checkout. A completely different industry, and here the anchor isn't a decision record, it's a defect log tied to a safety certification.
Corrigan Mills uses an AI vision model to flag defective batches of children's-clothing fabric before certification, since flammability and choking-hazard standards are regulated. Greta Manzano manages the model, and flags surface on a shared tablet three inspectors pass between them on the floor.
Mapped onto SPARK: situation is a fabric roll moving past a camera at full line speed, with an inspector glancing at a flag rather than checking every inch by hand. Payoff is an inspector trusting a flag enough to pull only the flagged sections, not re-checking the whole roll out of habit. Anchor is a per-batch certification record: which model version flagged it, which physical defect category triggered the flag, and a photo of the actual flagged section, all attached to the batch's certification paperwork before it ships. Risk is a model update that changes what counts as a flaggable defect without anyone updating what the certification record claims it's checking for. Keep out is a live company-wide defect dashboard, since a regulator asks about one certified batch at a time, not a running average across every roll.
Corrigan Mills needs the same top-right pieces as Palisade Pay, just renamed: model version pin becomes flag-version pin, reason codes become defect-category codes.
Swap the trigger and it still runs.
Speed: an interviewer caps you at sixty seconds. Say "a living decision record, pinned per decision, with the model version, the eval set, the reason, and an appeal path," and stop.
Cost: there's no headcount this quarter to build automated record generation. Say so honestly, and start with a required manual log entry per model change, even a spreadsheet row, since a slow record beats no record.
The model gets better, for real: if Palisade Pay's overall approval accuracy improves, that's still not a reason to skip logging the version, a rarer decline can still be the one a regulator picks to ask about.
Where people run it wrong.
They write a thorough model card once, at launch, and treat "documentation" as a box already checked forever.
They log the score but not the reason, so the record answers "what" and never "why."
They build an impressive live dashboard nobody asked for instead of the four boring fields a regulator actually needs.
How to use it live. When someone asks what documentation should accompany a regulated model, don't list artifacts. Ask yourself one question first: could this record answer, for one specific decision made months ago, exactly why it happened. If it can't, it isn't documentation yet, it's a launch souvenir.
Flashcards (tap any card to flip it)
1 · THE FRAMEWORK
What framework fits "what documentation should accompany a model deployed in a regulated context"?
Tap to flip
ANSWER
SPARK: situation, payoff, anchor, risk, keep out. The anchor is the living decision record itself.
2 · THE PEOPLE
Who is this answer about?
Tap to flip
ANSWER
Dashiell Kettner, product manager for Palisade Pay, who keeps the original launch model card clipped in a binder on his desk.
3 · THE HABIT
What did the team stop doing once the launch card felt "done"?
Tap to flip
ANSWER
They stopped treating a model retrain as a documentation event, so a quiet March update never got logged anywhere near the card.
4 · THE ANCHOR
What's the one concrete design decision this answer is built around?
Tap to flip
ANSWER
A living decision record pinned to every decision, holding the model version, the eval set, the plain-language reason, and the appeal path.
5 · THE OLD DECISION
What decision would you take back?
Tap to flip
ANSWER
Treating the model card as a one-time launch artifact, since that made sense only while there had only ever been one version of the model.
6 · THE NUMBER
Fill in the blank: by the sixth audit, answering a regulator's question about one decision took ___ days.
Tap to flip
ANSWER
21 days. It started at 1 day and climbed as more undocumented retrains piled up.
7 · THE REPLAY
Same March decline, with the living decision record in place. What changes?
Tap to flip
ANSWER
It takes about a minute to pull the exact model version, eval set, reason, and appeal path, instead of a three-week scramble to even confirm which version made the call.
8 · CROSS PRODUCT TRANSFER
Section 4 runs SPARK again on a different product. Which product, and what's the anchor there?
Tap to flip
ANSWER
Corrigan Mills' textile defect-detection model. The anchor there is a per-batch certification record tied to the flag's model version and defect category.
Check yourself Score: 0 / 0
True or false
1. True or false: a model card written at launch and never updated satisfies the requirement this answer describes.
True
False
Show hint
Look at the bar chart comparing the launch card to the living decision record.
Show answer
False. The launch card could answer only 2 of 6 standard regulator questions, since it describes the system once and never updates as the model changes.
Multiple choice
2. Why did it take three weeks to explain one March decline?
A. The regulator asked an unusually hard legal question.
B. Nobody had pinned which model version made that decision, since the March retrain was never logged as a documentation event.
C. The shopper's account had been deleted.
D. Palisade Pay doesn't keep any decision data at all.
Show hint
Look at the line chart tracking time-to-answer across six audits.
Show answer
B. The quiet March retrain was treated as routine maintenance, not a documentation event, so nothing tied that decision to a specific model version.
Fill in the blank
3. Fill in the blank: the living decision record holds four fields: model version, eval set, reason, and ___.
Show hint
Look at the labeled parts diagram, "What the record must hold."
Show answer
Appeal path. Who a declined shopper can actually ask for a second look, not just a score they can't act on.
Short answer, name the reversal
4. What old decision does this answer take back, and why did it make sense when it was made?
Show hint
Look at "the decision I would take back."
Show answer
Model answer: Treating the model card as a one-time launch deliverable. It made sense while there had only ever been one version of the model in production.
Short answer, where it wouldn't matter
5. Name something this answer deliberately does not build on day one.
Show hint
Look at the "keep out" step and its icon list.
Show answer
Model answer: A live public dashboard of every score, a dedicated appeals team, or full retraining logs. All reasonable eventually, none of them answer "why was this shopper declined."
Short answer, apply it yourself
6. Pick an app that's ever approved or declined something about you automatically. If you asked the company why, right now, do you think they could actually tell you?
Show hint
Think about whether the company could name the exact version of their system and the exact reason, not just a generic policy.
Show answer
Model answer: Most people guess no, because most companies can point to a policy but not to the specific version and reason behind one specific decision, which is exactly the gap this answer targets.
Before you close the answer
Why this works
Tests whether you understand documentation as a living system tied to a moving model, instead of a static compliance artifact you write once to pass a review and never touch again.
Follow-up traps
"Isn't updating the record every time the model changes going to slow the team down?" Response: the update is a required field in the deploy process, not a separate meeting, so it adds minutes, not weeks, and it's the only thing standing between a one-minute answer and a three-week scramble.
"Why not just log everything, every feature value, every intermediate score?" Response: that's a live dashboard, which this answer deliberately keeps out for later. Logging everything without naming a reason still leaves a regulator asking "why," unanswered.
If pressed
Palisade Pay's real fix ties the version pin to the deploy pipeline itself, so a new model version cannot go live without a matching decision-record entry already created, making the update structurally required rather than something a person has to remember.
From U2xAI Academy
From answering questions to owning outcomes.
A live workshop where you ship a working AI agent, defend a launch decision, and walk away with a portfolio recruiters can't wave off, not just more questions to study.