Reply to Sau-sanger and AlvaroChF
I think this also connects to a broader point about how we should design for increasingly capable agents.
I don’t think we can rely on the model becoming “good” enough that it will always choose the intended path.
The more important requirement is that the system remains improvable even when the model makes a mistake, chooses an unexpected path, or finds a shortcut.
For that, the system needs to record not only what the model did, but also the conditions and scope surrounding the action:
-
What did the user actually authorize?
-
What constraints did the provider declare?
-
Which conditions were externally verified?
-
Which values were model-inferred?
-
Which required conditions were never declared?
-
Which process invariant or tool constraint was missing?
This distinction matters because a failure may have very different causes.
It may be a model failure, but it may also reveal a tool-contract vulnerability, an insufficient provider constraint, or an unspecified user scope.
Without provenance, all of these can simply be attributed to “the model.”
I also don’t think this approach solves every form of agent misbehavior. If a model eventually acts against the user’s instructions or deliberately tries to evade external constraints, this boundary alone is not a complete solution.
What it does provide is a deterministic boundary for what can be authorized, together with a record of where the relevant conditions came from.
That makes failures attributable and therefore improvable.
So I see the purpose of this approach less as “make the model behave correctly” and more as:
the model can fail, but the boundary must remain inspectable, attributable, and improvable.
The goal is not to assume that every unexpected behavior can be prevented. It is to make each failure reveal which part of the system — model, tool contract, provider constraints, or user-defined scope — needs to be improved.