
- CustomerBoth operators follow one shared trace of the incident.
- SpecialistAn outside specialist diagnoses and proposes, under its own authority.
- ProviderThe provider admits the repair it approves and refuses a broader one.
Vision
04Cooperation Across CompaniesCooperation Across Companies
Let independent systems
work together.
Connect independently operated agent systems so they can contribute to shared work while each company controls its own resources.

Contents

Inspect the disclosure, revision, and operation record
A customer discloses one invoice trace. A specialist can diagnose it. The service provider alone decides whether the proposed repair may run. Each retains control of its own work.
This authored incident uses a local configuration model. No live federation or deployed service is changed. Customer identity, invoice contents, and credentials remain outside the disclosed trace.
invoice.request / original_response_ms=3600 timeout_ms=1000 / initial_result=timeout
Executed proposals: none. Retained effects: 0. Customer observation: outstanding.
Download this scenarioDownload handoff worksheetUseful capabilities live in different places.
Agentic operating systems can cooperate across companies. One organization can contribute knowledge or services to another’s work while retaining its own models, infrastructure, and resource decisions. A shared job becomes a relationship between independently controlled systems, with explicit terms for what crosses each boundary.
Chio supplies the authority and evidence contracts for those exchanges. Each company chooses which peers and issuers it trusts, exposes selected work, and admits requests under its own controls. Delegated authority and signed records give the participants something precise to enforce and inspect at each handoff.
A shared incident illustrates the relationship. The customer supplies evidence of a failure; a specialist receives selected diagnostics and proposes a repair. It never acquires a provider deployment grant. The provider evaluates the repair under its own controls, and the customer checks whether the service recovered. Each decision stays with the organization that owns the resource.
Be precise about what crosses the boundary.
The trace, proposal, and operation evidence cross different organizational boundaries. Each exchange names a sender, a receiver, and a bounded payload; the remaining information stays with its owner. The customer can disclose a diagnostic bundle without exposing every customer record. The provider can accept a proposal without giving away its production credentials.
A useful handoff also names the requested operation, the authority it requires, an acceptable result, and the evidence of completion. For a metered service, it names who owns accounting and which settlement profile applies. An authenticated connection and a cost ceiling do not supply cross-company escrow, so a handoff that needs escrow has to arrange it separately.
Write these responsibilities into the downloaded handoff worksheet in terms both operators can inspect, then map them to the protocol and records the application uses. The worksheet is a design note for that mapping; it defines no wire format.
Cooperation can include a refusal.
The first proposal raises both the invoice and the export timeouts. The disclosed trace concerns only invoices, so the provider asks for a narrower change. The revision raises the invoice timeout from 1,000 to 5,000 ms and leaves exports alone. The provider’s refusal narrowed the proposal before approval.
The customer then compares its 3,600 ms request with the applied limit. A second observation at 6,200 ms can still fail, even though the provider applied the repair successfully. Disagreement and incomplete recovery are ordinary states of the undertaking: each participant knows which work can proceed independently and which step waits on someone else’s decision. A revised proposal returns to that decision boundary instead of inheriting the old authorization.
A shared application can combine contributions from several companies while each company authorizes its own part. Signed task and governance artifacts can name those contributions and their required commitments. Where bilateral co-signatures are required, both kernels sign the same canonical bytes, and one participant’s signature cannot replace the other’s.
A contribution can cross an organizational boundary while authority over the underlying resource stays put.
Let the relationship change without losing its history.
For each request, the receiver applies the current trusted state required by its admission rules. Past cooperation does not satisfy those checks. Ending participation means attending separately to outstanding grants, existing sessions, unfinished work, and retained records.
Revocation shows what current trusted state has to mean. In the federation guide’s captured run, an authority signs epoch roots over the capabilities it has revoked, and a bounded receiver installs a root into the kernel’s revocation view only when four conditions hold. The signature verifies. The root is at most 5,000 ms old. The key set delivered with it rebuilds exactly the signed root. Its epoch is strictly greater than the installed one. Each condition closes a specific gap: without the rebuild, a receiver could install a subject list the authority never signed, and without the epoch order, a replayed older root could restore a revoked capability.
Before any root arrives, the kernel denies: its view holds only an empty sentinel issued at time zero, and the kernel will not consult a snapshot that old, so silence from the authority never reads as permission. Revocation does not reverse earlier execution. The call admitted under the first snapshot ran once; after the second snapshot, the same call is denied and the handler count stays at one.
Moment 4: revoked capability: DENY; handler calls 1. The complete key set rebuilds the second root, which installs. κ is now revoked, and the call never reaches the handler.
In Rust · revocation.rs:2121 lines
verifier.verify_epoch_root(&root.root, &root.signature)?;
verify_fresh_epoch_root(
&root.root,
clock,
FreshnessConfig {
max_staleness_ms: 5000,
offline_grace_ms: 0,
},
)?;
// …
let rebuilt = replica.epoch_root();
if rebuilt.root_hash != root.root.root_hash || rebuilt.leaf_count != root.root.leaf_count {
return Err("subject set does not match signed root".into());
}
// …
view.install_if_newer(RevocationSnapshot {
epoch: root.root.epoch,
root_hash: root.root.root_hash,
issued_at_unix_ms: root.root.issued_at_unix_ms,
revoked,
})?;
5b8bec41: one capability κ, one bounded receiver, five moments in order. The spacing carries no duration. This receiver rebuilds the full accumulator from the supplied key set; large or persistent deployments need their own durable authority history, authenticated delivery, and restart recovery.Revocation oracleA timeout does not say what happened.
A requester’s timeout leaves acceptance, authorization, execution, and result retention unresolved. Each requires evidence from the peer.
Use the operation’s supported status, reconciliation, or recovery path before submitting equivalent work again, and preserve the uncertainty until evidence resolves it. Local independence remains valuable during an interruption, but it does not make another participant’s unknown result disappear.
Revocation governs later admissions.
Revocation refuses new admissions. It does not undo an effect that already happened, recall information already disclosed, or settle work already in flight. The captured receiver rebuilds the full accumulator from the supplied key set and uses capability IDs as its explicit subject namespace; large or persistent deployments need their own durable authority history, authenticated delivery, and restart recovery.
None of these mechanisms supplies cross-company escrow or resolves a disputed result, and the local captures do not qualify an arbitrary multi-company deployment. Agreements, accounting, and each operator’s own controls remain work every company does for itself.
Make it yours
Follow the shared incident investigationWhat to build
Bind the repair to its approval
and check the result at the customer.
In the incident-response example, inspect the exact repair and its approval binding. Retain the provider operation and the customer health observation separately; compare them with your downloaded handoff worksheet.