Skip to content

Authority Negotiation, format v1 (draft)

Status: draft. Vector: spec/xybern-formats-v1/vectors/negotiation.json. Reference: Negotiation, Ontology Federation, A2A, AuthZEN.

Key Meaning
format "xybern-negotiation-v1"
negotiation_id neg_ and sixteen hex characters
requester {workspace_id, agent_id, org, passport_id, charter_hash, intent{contract_id, objective}}
responder {workspace_id, agent_id, name, passport_id, charter_hash, intent{contract_id, objective}}
purpose why the parties work together, at most 1000 characters
requested the authority asked for: {action_families, argument_bounds, budgets, resources}
link_id the federation link, when the parties are in different organisations
inputs what the intersection was computed from: the requester's authority, the responder's boundary, the federation cap, bridge translation reports
intersection the resulting grants, never wider than any input (INV-001)
assurance {purpose{requester, responder}, authority{requester_hash, responder_hash, intersection_hash}, liability{instruction, execution, decisions}, downstream_delegation{allowed, max_depth}}
ttl_seconds, created_at, expires_at the negotiation's own window

Each party signs {party, workspace_id, body_hash} with its issuer key (ES256; an external party supplies its public key). Only a body with both signatures issues the Session Warrant, an ordinary xybern-warrant-v1 whose body carries negotiation.negotiation_id and negotiation.body_hash; the warrant is valid only while the negotiation is active. An execution attested under it produces a xybern-mutual-receipt-v1 entry in both parties' vaults.