Ask that in an operating review and you get four answers, all of them correct.
Commercial means open order value. What customers have committed and not yet received.
The plant means units — tons, cases, pallets, whatever they run on. And the value behind them, because there is a KPI on each.
Finance counts what has shipped and not yet been invoiced. The plant stopped counting that the moment the truck left the yard.
The controller means outstanding performance obligations. That one is not an opinion. It is a revenue standard, and it may exclude things everyone else in the room is counting.
Nobody there is confused. Each of them knows which number is theirs, and has known since their second week.
Then somebody asks how much of it is past due.
Past due against what? The date the customer asked for. The date you first confirmed. The date standard lead time would have produced. Three numbers, three different stories about whether you have a problem, and every one of them defensible.
And none of it has ever caused any trouble.
The screen never accepted the question
Open any standard report or transaction and the ambiguity disappears — not because SAP resolved it, but because the screen never accepted the question in the first place.
There is a report for open orders. A different one for deliveries due. The revenue figure comes out of a period-end process with its own rules and its own owner, and nobody confuses it with a shipping report because you have to go somewhere else entirely to get it. If you want past due measured against first confirmed date rather than requested, you change a selection field. Deliberately. Having already decided which one you meant.
And every dashboard your company built was specified by somebody who had to state exactly which reading they meant, reviewed by somebody who argued about it, and approved before it was built. Your definitions are not undocumented. They are documented in requirements, in specs, in tickets, in the selection variants somebody saved and named. They are just not documented anywhere a system can read them, and never in one place.
None of that was a limitation anyone worked around. It was the design — and it is the design in every enterprise system ever built. Every screen your company configured, every variant it saved, every dashboard it approved is your company’s vocabulary encoded as software: your definitions, your operating culture, your language, made into a thing with a transaction code in front of it.
Interface design has spent its whole history eliminating ambiguity rather than interpreting it. Role-based screens. Layout variants. Transactions that answer one question and refuse the rest. A scheduler and a controller need different things from the same data, and the entire discipline of enterprise UX exists to make sure neither of them is ever asked what they meant.
You do not tell the screen what you want. The screen already decided, by knowing who you are and why you are there.
A field label is immune to language, too. It is a fixed target, the same target in every locale, because it is not language — it is a coordinate. It does not care that Portuguese and Mandarin divide the world differently, that Spanish encodes formality in ways that change who a sentence is addressed to, that two regions use the same word for different things and each is certain theirs is standard, that your company invented terms nobody outside it would recognize, or that the person asking is in a hurry and phrases things their own way.
An AI assistant has none of that. It gets a sentence — and natural language is not a coordinate.
Where the resolution actually lived
A sentence, and nothing else. No role, no transaction, no selection screen.
So the ambiguity is still there. It never went anywhere. It was being resolved somewhere else, and most organizations have forgotten they are doing it.
Some of it is written down. In the functional spec behind a report, where somebody had to state which date the aging was measured against. In the pricing specification that says what counts toward the commission basis. In the transport description, the change request, the design decision log from a project that closed in 2019. In the test scripts, where somebody wrote down the expected result and therefore the definition. In the selection variant somebody saved and named Backlog — Ops, which is a definition nobody would recognize as one.
Your definitions are in there. Scattered across systems that do not talk to each other, written in the language of whichever project produced them, never indexed, never assembled, and never once reconciled against each other.
The rest lives in people. It lives in training. It lives in the fact that the plant and the controller open different reports, and each of them knows which number is theirs. It lives in the moment a new hire asks what the backlog is and somebody who has been there eleven years says when this group says backlog we mean unshipped units, and if finance is in the room they mean value including what has shipped but not billed, and if anyone says past due you need to ask against which date.
That sentence is one of the most important pieces of information in your company, and it exists nowhere. Not in a functional spec. Not in a configuration table. Not in any document your auditors have ever asked to see. The dashboard requirement captured one reading for one report. The map was never drawn.
It has also never needed to be, because it was only ever required by humans, who picked it up by working there.
And notice that one of those readings is not a preference. Open order value and unshipped units are an operational disagreement — both defensible, neither wrong. Outstanding performance obligations is an accounting standard with a rule behind it. An assistant returning open order value to somebody who meant performance obligations has not picked a side in a departmental argument. It has answered a regulated question with an unregulated number.
What actually moved
The specific thing that changed is narrower than the general excitement about AI suggests.
Go to a stock requirements list. You type a material and a plant. If you type the wrong material you get a perfectly correct answer to a question you did not mean to ask, and everybody in the building understands whose error that was. Nobody has ever opened a ticket asking IT to fix the system so it knows which material they meant. The parameter was your job. The system’s responsibility began after the parameter was supplied, and that boundary was absolute.
Ask conversationally and the system derives the parameter. Which measure. Which state. Which baseline date.
That derivation is now a system behavior. And system behaviors have defects.
The screen made you decide. The sentence lets you not.
It will arrive as a ticket
So here is what happens, and it will happen in the first month.
Somebody opens a ticket saying the assistant reported the wrong backlog. The ticket is specific, the screenshot is attached, and the person is right that the number is not the number they wanted.
It will be routed to whoever supports the interface. That person will check the service, confirm the data is correct, confirm the call was correct, and find no defect — because there is not one. The assistant answered a different question than the one the user believed they were asking, which is something that has happened between two humans in your company every day for thirty years and has always ended in a short conversation.
Now it ends in a queue.
And nobody in that queue owns the fix, because the fix is not code. Your organization already decided what backlog means — repeatedly, in specs and reports and transports. What it has never decided is which of those decisions applies when somebody asks in a sentence, and whether the answer is the same for everyone who asks.
That is not a support ticket. That is a vocabulary exercise nobody has ever had to fund, arriving disguised as a defect and routed to people with no authority to resolve it.
The part worth sitting with
None of this is new ambiguity. Every bit of it has been sitting in your organization since the day you went live, resolved quietly and constantly by people who learned the answer from other people.
What is new is that it is no longer being resolved on the way in. It is being resolved by a system, consistently, at scale, according to a reading nobody chose — and for the first time, being wrong about it produces an artifact with a ticket number.


