A trust boundary is the point in a system where data or a request crosses from one level of trust to another, and something on the other side has to decide whether to accept it. In conventional software, these boundaries are fairly easy to point at: the edge of your network, the login form, the line between a user's input and a database query. AI applications have all of those same boundaries, plus a set of new ones that are easy to miss because they do not look like the boundaries security teams are used to drawing.

The model is not a trust boundary

The single most common mistake in reasoning about AI trust boundaries is treating the model as one. A trust boundary is a place where something makes an enforceable decision about what to accept. A model does not do that. It interprets whatever text it receives and produces a response shaped by that text, regardless of whether the text came from a trusted system prompt or an untrusted document it was asked to summarize.

Asking a model to "ignore untrusted instructions in retrieved content" is a request, not an enforcement mechanism. It might work most of the time. It is not a boundary in the security sense, because nothing about it is deterministic or independently verifiable. The actual boundary has to sit somewhere the model's decision does not have the final word: in the access control before retrieval, in the authorization check before a tool executes, in the validation before generated output reaches a sensitive sink.

Where the real boundaries are

The first real boundary is between the user and the application: standard authentication and authorization, unchanged from any other system. The second is between untrusted content sources, documents, web pages, emails, tool responses, and the model's context. Nothing at this boundary can prevent a model from reading manipulative content, but access control can prevent unauthorized content from ever reaching that boundary in the first place, which is the more reliable lever.

The third boundary is between the model's output and any system that acts on it. This is where output validation, policy checks, and approval workflows belong, because this is the point where a decision made based on a model's interpretation turns into a database write, an API call, or a message sent to a customer. The fourth boundary, often forgotten, is between agents in a multi-agent system: one agent's output should cross into another agent's context as untrusted input, not as an implicitly trusted internal signal.

Why this framing changes the fix

When a team frames prompt injection as "the model got tricked," the natural but unproductive response is to try to make the model harder to trick, usually through instructions in the system prompt. When the same team frames it as "an untrusted content boundary had no enforcement," the response changes to something concrete: filter what reaches the model, check authorization independently of the model's stated intent, and validate output before it acts on anything.

The second framing produces fixes that hold up under a wider range of attacks, because they do not depend on the model correctly resisting manipulation. They depend on code, which can be tested and verified in a way a model's judgment cannot be fully guaranteed.

Boundaries change with autonomy

A read-only chatbot has relatively few boundaries that matter beyond data access: what it can retrieve and what it can say. An agent that can take actions multiplies the number of boundaries that need enforcement, because each tool it can call is itself a boundary between the model's request and a real-world effect. The more autonomy a system has, the more boundaries need to be explicitly identified and enforced, and the more expensive it becomes to discover one that was missed.

This is why threat modeling an agent takes longer than threat modeling a chatbot with the same underlying model. The model is the same. The number of boundaries around it is not.

A practical way to find missed boundaries

Walk through every place content enters the system and ask what happens if that content is fully malicious. Walk through every tool the model can call and ask what stops an unauthorized call, independent of whether the model "decided" to make it responsibly. Walk through every place generated output is consumed and ask whether that consumer treats the output as trusted or untrusted.

Most missed boundaries surface in the gap between "the model was asked not to do this" and "the system cannot do this regardless of what the model outputs." Anywhere that gap exists, there is a missing enforcement point, not just a missing instruction.

Where TELEON fits

TELEON provides an enforcement point at exactly the boundary that is hardest for application teams to instrument themselves: the tool-call boundary between a model's decision and a real-world action. Deployed through the gateway or supported middleware, it can apply policy at that boundary and record what was requested, decided, and executed.

It does not create the boundaries that need to exist earlier in the flow, like access control before retrieval. Those still have to be designed and enforced inside the application, based on a clear map of where trust actually changes hands.

A short boundary-mapping checklist

  1. List every point where content enters the model's context, and mark

which of those sources are untrusted.

  1. List every tool the model can call, and confirm each one has an

authorization check independent of the model's request.

  1. List every consumer of generated output, and confirm each one treats

that output as untrusted input.

  1. For multi-agent systems, treat every hand-off between agents as a

boundary, not an internal call.

  1. For each boundary, confirm enforcement happens in code, not only in a

prompt instruction.

A trust boundary in an AI application is wherever trust actually changes, not wherever it feels like it should. Mapping those boundaries accurately, and putting enforcement in code rather than in instructions the model might or might not follow, is what turns a vague sense of AI risk into a concrete list of things a team can actually fix.