Air Canada's $812 Lesson: When Chatbots Eat Their Own Garbage
E1

Air Canada's $812 Lesson: When Chatbots Eat Their Own Garbage

Air Canada's $812 Lesson: When Chatbots Eat Their Own Garbage

This is Part 1 of our 16-week series on Context Degradation—the hidden failure modes that break AI systems before anyone notices. The $812 Chatbot Catastrophe

In February 2024, Air Canada lost a small claims court case that should terrify every enterprise deploying AI chatbots.

Here's what happened:

Jake Moffatt's grandmother died. He needed to fly from Vancouver to Toronto for the funeral. Before booking, he asked Air Canada's chatbot about their bereavement fare policy.

The chatbot responded confidently:

"Air Canada offers reduced bereavement fares. You can book at the regular price and submit a refund request within 90 days of travel."

Moffatt booked. He flew. He submitted his refund request.

Air Canada denied it.

The policy the chatbot described didn't exist. Air Canada's actual bereavement policy required approval before booking, not after. The chatbot had hallucinated a policy—or more precisely, it had ingested outdated documentation from years earlier when such a policy may have existed.

Moffatt sued. The tribunal ruled in his favor. Air Canada's defense—"the chatbot is a separate legal entity responsible for its own actions"—was rejected as "remarkable."

Final judgment: $812.02 in damages plus tribunal fees.

Why This Matters More Than $812

Air Canada got lucky. This was small claims court over a few hundred dollars.

But the failure mode is universal. Every enterprise RAG system—every chatbot grounded in company documents—faces the same risk:

Your AI doesn't know when its sources are garbage.

Vector similarity doesn't timestamp. Embedding models don't verify currency. Retrieval systems don't distinguish between:

Current policy documents Deprecated drafts someone forgot to delete Three-year-old PDFs from a previous policy regime Test documents that were never meant for production

To the retrieval system, these all look the same. High cosine similarity. Relevant to the query. Served to the user with full confidence.

The POISONING Problem

In our framework for context degradation, Air Canada's failure is a textbook case of POISONING—when noise (incorrect, outdated, or corrupted information) contaminates the context that an AI system uses to generate responses.

POISONING isn't about malicious adversaries (though that's possible too). It's about the mundane reality of enterprise data:

Stale documents that nobody archived Conflicting versions across SharePoint folders Training data from before a policy change User-generated content that was never verified

The AI system has no mechanism to detect that it's eating garbage. It retrieves. It generates. It's wrong.

Why Current Approaches Fail
"We'll just update the knowledge base regularly"

How regularly? Daily? Hourly? What about the document that was supposed to be updated but wasn't? What about the department that maintains their own SharePoint site and forgot to tell IT?

Freshness policies don't prevent stale data from being retrieved. They assume perfect organizational hygiene. Show me an enterprise with perfect organizational hygiene.

"We'll add metadata and filters"

Great. Now you need every document tagged with validity dates, policy versions, and deprecation flags. You need someone to maintain those tags. You need retrieval to respect them.

And when a document doesn't have metadata (because it was uploaded before your metadata schema existed), what happens? It gets retrieved anyway.

"We'll use guardrails on the output"

Guardrails catch offensive language, PII exposure, and competitor mentions. They don't catch "this policy was accurate in 2019 but not in 2024."

Output guardrails are reactive. By the time you're checking the output, you've already generated a confident, wrong answer.

What a Certificate Would Have Caught

Context Quality Certificates measure the quality of retrieved context before generation—not after.

In the Air Canada case, a proper certificate would have flagged:

Source age anomaly: The bereavement policy document was years old in a frequently-updated policy domain Consistency conflict: The retrieved content conflicted with more recent policy documents in the same corpus High noise signal: The context showed characteristics of deprecated content (legacy formatting, outdated references, missing current compliance language)

Any of these signals would have triggered one of several responses:

Don't generate: Flag for human review instead Hedge the response: "This may be outdated—please verify with customer service" Request better retrieval: Pull from verified sources only

None of these happened because Air Canada's chatbot had no pre-generation quality measurement.

The Uncomfortable Truth

Every enterprise chatbot deployed today is one stale document away from its own Air Canada moment.

The question isn't if your knowledge base contains outdated, incorrect, or contradictory information. It does. The question is whether your system can detect it before generating a confident answer.

Right now, for most enterprises, the answer…

Read the full article →