Pages
The governance model
Approval is a policy, not a boolean: execute, route or block, and the human sits at decide.
Exosphere Agentic runs on Azure and integrates with the Microsoft AI platform, deployed into the customer's own tenant — so context, data and governance stay where they belong. In Exosphere Agentic, approval is a policy, not a boolean. Every proposed action, from an agent or a person, is checked against the operator's own rules by Exosphere, the judgment layer inside Exosphere Agentic, and comes out one of three ways: execute, route to the role with authority, or block.
Updated
Three outcomes, decided by your rules
- Execute. Inside policy, the action runs without waiting for anyone.
- Route. The action needs authority, so it goes to the role that holds it. That is not necessarily the person in the conversation. The approver is reached on an Adaptive Card in Microsoft Teams or in Sherpa Approvals, and the first decision wins.
- Block. A hard rule applies, and no approval overrides it. The block is recorded like any other outcome.
Thresholds are set per loop and per commercial exposure, not per model. The same rules bind people: cumulative exposure counts agents and people together, so no agent gets more latitude than the person it assists.
Approval is a control. Execution is a cost. Exos Systems
Execute, route or block
flowchart TD
A["Billing Sherpa<br/>proposes a credit"]
B["Care rep<br/>keys a credit"]
RU["Operator rules<br/>thresholds · routing · hard blocks"]
C["Operator policy corpus<br/>credit policy · authority matrix"]
P["Exosphere policy check<br/>value · segment · exposure · disputes"]
E["Execute<br/>inside policy"]
R["Route<br/>to the role with authority"]
K["Block<br/>hard rule, no override"]
H["Approver<br/>with authority"]
S["System of record<br/>via TM Forum Open APIs"]
U["Audit record<br/>actor · authority · clause cited"]
A --> P
B --> P
RU -->|"enforce"| P
C -.->|"grounds · cites the clause"| P
P -->|"allowed"| E
P -->|"needs authority"| R
P -->|"forbidden"| K
R --> H
H -->|"approves"| S
H -->|"declines"| U
E --> S
S --> U
K --> U
classDef exos stroke:#0077B6,stroke-width:2px
classDef human stroke:#009688,stroke-width:3px
classDef stop stroke:#E68A00,stroke-width:2px
classDef sor stroke:#7A8DA5,stroke-width:1px
class P,E,U exos
class B,H human
class K stop
class S sorDetect, understand, decide, act, confirm. The human sits at decide.
Every loop follows one path, and each stage maps onto the Sherpa envelope.
| Stage | Who | Envelope section |
|---|---|---|
| Detect | Sherpa agent on the Microsoft AI platform | Facts: only what was actually retrieved |
| Understand | Sherpa agent | Assessment: classification, confidence, and missing data stated |
| Decide | Exosphere policy check, plus the person with authority where policy routes | Recommendation: with the cited clause |
| Act | Exosphere, through governed TM Forum Open API calls | Action: only permitted steps |
| Confirm | Exosphere | Audit: one record from intent to outcome |
Control sits in the path of the call, not in the prompt. Sherpa agents never write on their own authority. Only Exosphere holds write scopes, and an outage stops writes rather than passing them through.
The human sits at decide
flowchart LR
subgraph SA["SHERPA AGENTS"]
D["Detect<br/>Facts"]
U["Understand<br/>Assessment"]
end
subgraph DC["DECIDE · RECOMMENDATION"]
P["Exosphere<br/>policy check"]
H["Person with authority<br/>Microsoft Teams card<br/>or Sherpa Approvals"]
end
A["Act · Action<br/>system of record"]
F["Confirm · Audit<br/>one audit record"]
D --> U
U --> P
P -.->|"only where<br/>policy routes"| H
H -->|"approve or<br/>decline"| P
P -->|"allowed or<br/>approved"| A
A -->|"actual<br/>outcome"| F
classDef exos stroke:#0077B6,stroke-width:2px
classDef human stroke:#009688,stroke-width:3px
classDef sor stroke:#7A8DA5,stroke-width:1px
class P,F exos
class H human
class A sorWhat the policy check resolves
Before deciding, Exosphere resolves the facts that matter to authority:
- the initiating principal's role and limit
- the action type and the loop it belongs to
- the value against the applicable limit
- the customer segment
- cumulative exposure, per contact and per period
- an open dispute or a bill on hold
- a vulnerability flag
The most restrictive outcome applies. Block outranks route, and route outranks execute. Anything unmatched or unresolvable goes to a person, and an unknown fact fails closed. Segregation of duties keeps a proposer from approving their own proposal.
Rules enforce. The corpus grounds. Each recommendation cites the clause of the operator's own credit policy or delegation-of-authority matrix that supports it.
| Situation (billing credit) | Outcome |
|---|---|
| Within the loop's execute limit, no flags raised | Execute |
| Above the execute limit, within a team leader's authority | Route to the team leader |
| Enterprise account above its own threshold | Route to the named account owner |
| Cumulative credits on one contact above the period limit | Route to the billing operations manager |
| Credit larger than the invoice, or forbidden by a hard rule | Block |
| A fact cannot be resolved, or no rule matches | Route to a person |
Illustrative policy, not commercial terms. Each operator sets its own limits and roles.
An approval binds to one exact action, once
- Signed, single-use, expiring. The approval request cannot be replayed, or stretched to cover a changed action.
- Re-validated at execution. Policy and data are checked again at the moment of action. If the facts have changed, the approval lapses and the proposal is evaluated afresh.
- Once per proposal id. Exosphere's orchestration writes each approved action exactly once. That idempotency is Exosphere's design, consistent with the TMF630 task and monitor patterns.
- Applied, refused or unconfirmed, never assumed. Under TMF630, a 202 Accepted means the request was taken, not that it took effect. An unconfirmed write is read back before it is reported, and it is never shown as success.
- Compensation follows the original approval. Multi-step work runs as a saga. If a later step fails, the cancellation (for example TMF622 cancelProductOrder, itself tracked through a monitor) runs under the approval that started it. A rejected cancellation escalates to a person.
The lifecycle: proposed, policy evaluated, then executed inside policy, awaiting a person, or blocked. Approved proposals are re-validated, executed once, and confirmed, refused, unconfirmed or compensated. Every path ends in the audit record. See propose, approve, execute for the sequence.
Anchored in the standards your estate already speaks
| Concern | Standard | What Exosphere adds |
|---|---|---|
| Who may act | TMF672 User Role Permission Management: roles, privileges, a CheckPermission task | Business authority on top: value, segment, exposure and the approver |
| When a person decides | TMF701 Process Management: tasks that need manual action | Routing to the role with authority, first decision wins |
| What happens next | TMF688 Event Management, TMF630 hub and listener | Audit lineage from intent to record |
| Long-running outcomes | TMF630 asynchronous, monitor and task patterns, with 403 for out-of-scope calls | Applied, refused or unconfirmed outcomes |
| Order compensation | TMF622 order states and cancelProductOrder | Compensation under the original approval |
| Gateway enforcement | AI-Native ODA Canvas ADR-004 Interaction Gateway (Proposed): identity, scope, policy rules | Business approval of individual actions, above the gateway |
| Governance pack per loop | IG1238 ethics statement per AI use case, IG1199 lifecycle checklists, TMF915 AI Management model contracts | A governance pack for each loop, structured the same way |
The Canvas gateway enforces identity and scope. Exosphere adds business authority above it. TM Forum's AI-Native direction gives people the ability to constrain, correct and terminate agents at any autonomy level, and Exosphere sets autonomy per action type. See earning autonomy.
Exos Systems is a TM Forum member and aligns to ODA. Standards bodies named here describe the context we work in; they are not an endorsement by those bodies.
Take the next step
See the loop run on synthetic accounts, or walk through the ontology with Exos Systems.