Trail already holds that Vendor Alpha sits on PO-1234, that PO-1234 belongs to Marketing, and that Marketing invoices over $25,000 need Director approval. Four hops from a document that names none of them.

Trail vs RAG
14 examples of how Trail compares with RAG and Raw Prompting.
Selected process
A supplier invoice looks simple until POs, departments, thresholds, exceptions and approval chains determine what should happen next.
The $42K invoice lands on the Director's desk — and nobody had to tell the agent about the PO, the department or the $25K rule.
Trail already holds that Vendor Alpha sits on PO-1234, that PO-1234 belongs to Marketing, and that Marketing invoices over $25,000 need Director approval. Four hops from a document that names none of them.

Sees only the invoice. It has no idea the PO, the department or the approval rule exist unless somebody pasted all three in first.
Might retrieve some of that context. Miss one link — the PO, the department, the policy — and the invoice routes to the wrong approver with nothing to show something was missing.

A 6% invoice gets paid, because the agent is working from the current version of the variance rule — not the number it used to be.
The MSA is still the governing contract. What changed is one number inside it: Jack Stevens, the Finance Manager who owns the Vendor Alpha contract, raised the allowed price variance from 4% to 8% on 3 Feb 2025. Trail holds that as one rule with a version history, so the agent reads 8% and the invoice clears instead of bouncing back for a re-issue.

Knows about neither contract unless both were pasted in — and then it has no basis for deciding which one wins.
Retrieves the MSA and misses the addendum, or returns both with no notion of which supersedes. Either way the stale 4% limit rejects a valid invoice.

Two AP policies contradict each other, and Trail says so while you are loading the second one.
One policy forbids auto-approving international suppliers; another auto-approves anything under $20,000. Trail detects that a single document can satisfy both and asks the owner to set precedence before either rule goes live.

Sees only the policies you included, so it may never learn that a contradicting rule exists somewhere else in the company.
Retrieves one policy and not the other. Even holding both, it picks one and proceeds — it has no notion that a contradiction needs a human.

The one invoice where the vendor name and the address disagree comes to AP as a question, not as a payment.
Payment terms are held per entity: Amazon Inc. at 1800 Lake Street is Net 30, AWS at 1 Seattle Way is Net 60. An invoice arrives naming Amazon at 1 Seattle Way. No rules conflict — the evidence does — so Trail stops and shows AP exactly which two facts point different ways.

Built to answer, so it answers. It picks Net 30 or Net 60 as confidently as it would on a clear-cut invoice, and nothing in the output hints it was a coin flip.
Pulls whatever looks most similar — the “Amazon Inc.” name match — and applies Net 30 without noticing the address belongs to a different legal entity.

Three single lines, in three different documents, are worth $20,000 on one invoice — and Trail hands the agent exactly those three.
Vendor Alpha’s 2% early-payment discount only applies if the invoice is over $250,000 (buried in the MSA), covers hardware only (Pricing Schedule) and is paid within 10 days (Payment Terms Addendum). Each condition is one line across 20 documents and 4,120 pages.

Somebody has to already know the discount depends on three clauses in three documents, find them, and paste them in. If you knew that, you would not need the agent. Dump in all 20 instead and you are hoping the model spots three lines in hundreds of pages — and nobody finds out when it misses.
It finds text that looks like the question, and “process this Vendor Alpha invoice” looks nothing like a dollar threshold or a 10-day window. The three lines have nothing in common with each other either, so no single search pulls all three. Two out of three is the dangerous outcome.

Your most experienced reviewer explains an exception once, and the agent knows it next week.
An invoice is flagged for a PO variance. The reviewer knows Steel Bar 145 moves with the market and allows 8% for that item from that vendor. Trail turns the correction into a proposed rule, routes it to the owner, and applies it once approved.

It forgets. The reviewer explains the exception, the agent accepts it for that one invoice, and the next Steel Bar 145 invoice is flagged all over again. The knowledge lived in the conversation, not anywhere the agent can reach next week.
It cannot take the correction at all. Its knowledge comes from documents that already exist, and no contract says Steel Bar 145 fluctuates — that is in the reviewer’s head. Writing it up makes it one more passage competing to be retrieved, with nobody checking it against the variance rule already on the books.

Finance changes the EU billing entity once, and three teams stop being able to get it wrong.
From 1 October, EU invoices from Vendor Alpha must be processed under Vendor Alpha Germany GmbH. Vendor Onboarding needs the record updated, the Payments Agent needs to pay the right legal entity, and the Accrual team’s ChatGPT agent needs to book against it too.

The rule lives inside each agent’s setup, so the change has to be made three times, by three teams, in three places. One person on holiday and the Accrual agent keeps booking against Vendor Alpha Inc. all quarter — nobody notices until someone reconciles the books.
Each team has its own document store, so the new policy has to be uploaded everywhere and the old version pulled out of everywhere. Miss that second step and both versions sit there looking equally valid. You can no longer say which entity a given agent is using.

1,900 tokens an invoice instead of 128,000 — the same decision, at 1.5% of the context.
Without a context layer you re-send the same contracts and SOPs on every one of 50,000 monthly invoices. Trail sends the handful of rules that apply to the invoice in front of the agent.

You are paying to re-send the same material forever. Every invoice carries the full MSA, the pricing schedule and the SOPs, and the model reads all of it to use three lines. Do that 50,000 times a month and you are paying for the same hundreds of pages 50,000 times over.
Retrieval trims it, but not as much as you would hope. Because it cannot be sure it grabbed the right passage, the safe move is to send more — bigger chunks, more of them. You buy a dozen passages so the two that matter are probably in there, and the padding is what drags accuracy down.

Three teams each keep their own copy of the approval limit. In Trail it is one record, with one owner, that every team and every agent reads.
AP’s spreadsheet says $20,000, the Procurement SOP says $25,000, and an agent prompt from 2023 still says $15,000 — not because anyone disagreed, but because there was nowhere for the rule to actually live. Trail is that place: the limit is one governed record, and the scattered copies stop being the source. The same shift means you can ask for every approval rule touching Vendor Alpha and get all four, however many documents they were originally written into.

Nothing settles the disagreement. The $15,000 limit is baked into an agent someone wrote two years ago and nobody has opened since; the spreadsheet and the SOP live with the teams that made them. Three numbers, all in use, and no owner for the question — until an invoice is approved at the wrong level.
It treats all three as equally valid and returns whichever matches best that day. It has no concept of “this one is approved and those two are stale” — that is a governance judgment, and RAG only does similarity. Ask for every approval rule on Vendor Alpha and you get a few passages, with no way to know what did not come back.

Tax owns tax rules, AP owns invoice rules, Treasury owns payment rules — and the clerk cannot move a $500K threshold.
Everyone can still give feedback on any rule; feedback routes to the owner. Only the owner can change what a rule says, and the change is recorded.

Nothing has an owner. Whoever can edit the prompt can change any rule in it — the VAT treatment, the $500K approval threshold, all of it, in the same text box. There is no distinction between fixing a typo and raising an approval limit, and no record that the second thing happened.
Permissions are about who can read a file, not who can change what a rule says. Upload a new version of the policy and it is live — no approval step, no owner sign-off, and no way to see that the tax rule the Tax team wrote was quietly overwritten. Worse, if the old version is still in the store, both are in play.

The AP Manager changes the policy herself, on the afternoon it changes.
She knows exactly how invoices should be handled and has no interest in editing prompts or filing tickets. Trail lets the business team manage the business rules while the AI team manages the agent.

Every policy change becomes an engineering ticket. She knows what needs to change, but the rule is buried in a wall of instructions she cannot safely touch — so she files a request, waits, and hopes the engineer got the nuance right. In practice the small changes never get made, and people stop trusting the agent.
Uploading a document feels like something anyone can do. But she has no way to check whether her new policy changed the agent’s behaviour, whether the old version is still competing with it, or why the agent did something odd on one invoice. When it goes wrong she cannot debug it, so she escalates.

The CFO asks why the AI approved a 6% variance, and the answer is a record rather than a story.
Trail can show the rule that was applied, the version it was on, the contract clause it came from, who approved it — and the rules it considered and did not use.

It can tell you a story about why it approved the invoice, but the story is generated after the fact and there is no way to check it. It might say “the contract allows 8%” whether or not it read that clause. You are offering an explanation you cannot verify, which is the same as having no answer.
You can see which passages were retrieved, so you know roughly what the model was looking at. That is not the same as knowing what it relied on, or that the 8% figure was current rather than superseded. And if the right passage was never retrieved, the model still produced a confident answer built on whatever was.

Six months later the auditor asks why 8% was allowed, and the rule shows its own history.
Every edit is a row: the timestamp, the person and their role, the before-and-after value, the document it was cited from, the invoice that prompted it, who approved it — and the invoices decided under each version.

There is no history. Whatever the prompt says today is all you have — if it reads 8% now, nothing shows it once said 4%, when it changed, or who changed it. Unless somebody kept the old version in a code repo, the answer to the auditor is “we think it was updated last spring.”
A document store tells you what documents exist, not what the agent was doing six months ago. The amendment is in there somewhere, but you cannot show that the agent was applying it on a given date, or that the original 4% contract was not still being retrieved alongside it.

The exception was written with an expiry date on it, so it stopped applying on 1 July without anyone having to go and find it.
Vendor Alpha was allowed to skip the 3-way match under $50,000 until 30 April. In Trail that end date is a field on the rule, not a sentence inside an instruction — so the rule retires itself, the rule manager is told that invoices are still hitting the conditions it covered, and the whole episode stays on the record.

A prompt has no sense of time. “Until June 30” is just words in the instructions — nothing stops applying the exception on 1 July, and nothing tells anyone it should have stopped. Six months of invoices skip the 3-way match and you find out during an audit.
The exception memo stays retrievable long after it expired, looking exactly as authoritative as it did in March. Retrieval ranks on relevance, not validity, so an invoice that matches keeps pulling it up. And even once someone notices, you cannot easily answer which invoices used it and what happened downstream.

6 processes are worked end to end here. Bring yours and we'll run the same fourteen against your own contracts, policies and exceptions.
Want the whole argument in one call? Talk to us →