CAIN-42 CAIN Studio

Evidence library · niche

Identity, authority & delegation

Who an agent is, what it may do, and who allowed it. 964 tested invariants.

Last reviewed 2026-10-01

964 of 964 held

Where this niche's rules come from

Test families in this niche

capability (54) · handshake (54) · authorization_binding (49) · aip (48) · revocation (26) · credential (25) · domain (21) · service_passport (21) · non_authority (18) · binding (16) · lease_v2 (15) · protected_key (14) · research (13) · state_machine (11) · cross_domain (11) · delegation (11) · kernel (11) · delegation_attenuation (9) · replay_revocation (9) · moat (9) · risk (6) · failure_class (6) · root_of_trust (6) · telemetry (5) · action (5) · action_binding (4) · config_key (4) · knowledge_revocation (4) · primitive (4) · agency_graph (4) · relationship (4) · delegation_receipt (3) · reassessment (3) · capability_passport (3) · authority_graph (3) · integrity (3) · consistency (3) · soc (3) · lease (3) · operation_kind (3) · event_kind (3) · exhaustion_mode (3) · gap_detector (3) · profile (3) · graph (3) · approval (2) · offline (2) · registration (2) · scientist (2) · radar (2) · federation (1) · intent (1) · tenancy (1) · cross-domain (1) · passport (1) · stage (1) · operation_state (1) · status (1) · environment_query (1) · ip (1) · competitive_gap (1) · authority_algebra (1) · minimum_authority (1) · systemic (1)

Where these come from

Rules 151–300 of 964

IDRuleBundleResult
META-P001every compiled candidate routes every execution path through AUTHORIZATION (all depth-2 candidates)E23held
META-P007every compiled candidate has bounded credentials (all depth-2 candidates)E23held
META-P012no candidate's sandbox result carries authority (all depth-2 candidates)E23held
META-P016no candidate diff carries authority (all depth-2 candidates)E23held
META-P017no candidate unknown-scan carries authority (all depth-2 candidates)E23held
META-P020every dependency report carries no authority (all depth-2 candidates)E23held
META-L001META-001 SELF-KNOWLEDGE IS NOT AUTHORITYE23held
META-L003META-003 SELF-IMPROVEMENT IS NOT SELF-AUTHORIZATIONE23held
META-L004META-004 INTELLIGENCE GAIN IS NOT AUTHORITY GAINE23held
META-L005META-005 CAPABILITY DISCOVERY IS NOT CAPABILITY PERMISSIONE23held
META-L006META-006 ARCHITECTURE DISCOVERY IS NOT DEPLOYMENT AUTHORIZATIONE23held
META-L008META-008 REASONING ABOUT GOVERNANCE IS NOT AUTHORITY OVER GOVERNANCEE23held
META-L009META-009 DISCOVERING A POLICY WEAKNESS IS NOT PERMISSION TO EXPLOIT ITE23held
META-L010META-010 DISCOVERING AN E8 WEAKNESS IS NOT PERMISSION TO BYPASS E8E23held
META-L011META-011 DISCOVERING A CAIN BUG IS NOT PERMISSION TO MODIFY GOVERNANCE STATEE23held
META-L012META-012 MODEL IMPROVEMENT MUST NOT SILENTLY CHANGE AUTHORITYE23held
META-L013META-013 ARCHITECTURE REPLACEMENT MUST NOT SILENTLY CHANGE AUTHORITYE23held
META-L014META-014 MEMORY RESTRUCTURING MUST NOT SILENTLY CHANGE AUTHORITYE23held
META-L020META-020 EMERGENT CAPABILITY MUST REMAIN GOVERNEDE23held
META-L024META-024 ROLLBACK RESTORES THE GOVERNED STATE, NOT REVOKED AUTHORITYE23held
META-S-dim-authorization_integritygovernability dimension 'authorization_integrity' drops when its property is violatedE23held
META-S-dim-authority_boundednessgovernability dimension 'authority_boundedness' drops when its property is violatedE23held
META-S-registry-revokedregistry state REVOKED has no self-loop and PRODUCTION only via CANARYE23held
META-S-unknown-unknown_capabilitythe self-unknown engine surfaces unknown_capability as a first-class stateE23held
META-S-unknown-unknown_authority_paththe self-unknown engine surfaces unknown_authority_path as a first-class stateE23held
META-S-quorum-noneboard signers [] authorize iff at least 2 of 3E23held
META-S-quorum-0board signers [0] authorize iff at least 2 of 3E23held
META-S-quorum-1board signers [1] authorize iff at least 2 of 3E23held
META-S-quorum-2board signers [2] authorize iff at least 2 of 3E23held
META-S-quorum-01board signers [0, 1] authorize iff at least 2 of 3E23held
META-S-quorum-02board signers [0, 2] authorize iff at least 2 of 3E23held
META-S-quorum-12board signers [1, 2] authorize iff at least 2 of 3E23held
META-S-quorum-012board signers [0, 1, 2] authorize iff at least 2 of 3E23held
META-S-sandbox-planimproving the plan component does not lower plan capabilityE23held
META-S-sandbox-retrieveimproving the retrieve component does not lower retrieve capabilityE23held
META-S-sandbox-verifyimproving the verify component does not lower verify capabilityE23held
META-S-sandbox-reasonimproving the reason component does not lower reason capabilityE23held
META-S-cascade-modellosing 'model' never widens authorityE23held
META-S-cascade-contextlosing 'context' never widens authorityE23held
META-S-cascade-memorylosing 'memory' never widens authorityE23held
META-S-cascade-retrievallosing 'retrieval' never widens authorityE23held
META-S-cascade-reasonerlosing 'reasoner' never widens authorityE23held
META-S-cascade-plannerlosing 'planner' never widens authorityE23held
META-S-cascade-simulatorlosing 'simulator' never widens authorityE23held
META-S-cascade-criticlosing 'critic' never widens authorityE23held
META-S-cascade-verifierlosing 'verifier' never widens authorityE23held
META-S-cascade-decisionlosing 'decision' never widens authorityE23held
META-S-cascade-authorizationlosing 'authorization' never widens authorityE23held
META-S-cascade-actionlosing 'action' never widens authorityE23held
META-S-cascade-auditlosing 'audit' never widens authorityE23held
META-S-cascade-evidencelosing 'evidence' never widens authorityE23held
META-S-cascade-rollbacklosing 'rollback' never widens authorityE23held
META-S-self-model-authoritythe self-model refuses and does not store an authority assertionE23held
NET-I001discovery cannot create authorityE24held
NET-I002communication cannot create authorityE24held
NET-I003negotiation cannot create authorityE24held
NET-I004contract cannot create authorityE24held
NET-I005reputation cannot create authorityE24held
NET-I006payment cannot create authorityE24held
NET-I007coalition cannot create authorityE24held
NET-I008federation cannot create authorityE24held
NET-I009trust cannot create unlimited authorityE24held
NET-I010capability advertisement cannot create authorityE24held
NET-I011child authority ⊆ delegated authorityE24held
NET-I012cross-domain authority ⊆ local ∩ remote policyE24held
NET-I013trust translation cannot silently increase authorityE24held
NET-I014protocol translation cannot silently increase authorityE24held
NET-I015identity translation cannot silently increase authorityE24held
NET-I016revoked identity cannot transactE24held
NET-I017revoked capability cannot executeE24held
NET-I018expired contract cannot authorizeE24held
NET-I019expired evidence cannot authorizeE24held
NET-I025rollback cannot resurrect revoked authorityE24held
NET-I026economic resources cannot mint authorityE24held
NET-I027reputation cannot mint authorityE24held
NET-I028arbitration cannot mint unlimited authorityE24held
NET-I032A2A consequential delegation reaches E8E24held
NET-I037revocation outage cannot expand authorityE24held
NET-I038identity outage cannot expand authorityE24held
NET-I039evidence outage cannot expand authorityE24held
NET-I040protocol downgrade cannot expand authorityE24held
NET-I042unknown identity remains unknownE24held
NET-I043unknown capability remains unknownE24held
NET-I050mixed trust states coexist (high identity, low behaviour, unknown security)E24held
NET-I051hiring grants exactly the minimum authorityE24held
NET-I055a legitimate two-hop delegation chain narrowsE24held
NET-I058the MachineSystemBOM has all sections and no authorityE24held
NET-I059legitimate shared memory carries provenance and no authorityE24held
NET-I062no non-authority input is read by the authority functionsE24held
NET-I065a revoked or expired delegation is not liveE24held
NET-P-http-GEThttp GET: an authorization always comes from an E8 commitE24held
NET-P-http-POSThttp POST: an authorization always comes from an E8 commitE24held
NET-P-http-PUThttp PUT: an authorization always comes from an E8 commitE24held
NET-P-http-DELETEhttp DELETE: an authorization always comes from an E8 commitE24held
NET-P-rest-GETrest GET: an authorization always comes from an E8 commitE24held
NET-P-rest-POSTrest POST: an authorization always comes from an E8 commitE24held
NET-P-grpc-Querygrpc Query: an authorization always comes from an E8 commitE24held
NET-P-grpc-Mutategrpc Mutate: an authorization always comes from an E8 commitE24held
NET-P-websocket-subscribewebsocket subscribe: an authorization always comes from an E8 commitE24held
NET-P-websocket-publishwebsocket publish: an authorization always comes from an E8 commitE24held
NET-P-event_bus-emitevent_bus emit: an authorization always comes from an E8 commitE24held
NET-P-message_queue-enqueuemessage_queue enqueue: an authorization always comes from an E8 commitE24held
NET-P-cli-catcli cat: an authorization always comes from an E8 commitE24held
NET-P-cli-runcli run: an authorization always comes from an E8 commitE24held
NET-P-browser-navigatebrowser navigate: an authorization always comes from an E8 commitE24held
NET-P-browser-click:submit_paymentbrowser click:submit_payment: an authorization always comes from an E8 commitE24held
NET-P-browser-click:submit_orderbrowser click:submit_order: an authorization always comes from an E8 commitE24held
NET-P-browser-typebrowser type: an authorization always comes from an E8 commitE24held
NET-P-computer_use-screenshotcomputer_use screenshot: an authorization always comes from an E8 commitE24held
NET-P-computer_use-click:submit_ordercomputer_use click:submit_order: an authorization always comes from an E8 commitE24held
NET-P-computer_use-click:submit_paymentcomputer_use click:submit_payment: an authorization always comes from an E8 commitE24held
NET-P-computer_use-terminal:runcomputer_use terminal:run: an authorization always comes from an E8 commitE24held
NET-P-computer_use-file:writecomputer_use file:write: an authorization always comes from an E8 commitE24held
NET-P-local_ipc-call:readlocal_ipc call:read: an authorization always comes from an E8 commitE24held
NET-P-local_ipc-call:writelocal_ipc call:write: an authorization always comes from an E8 commitE24held
NET-P-cloud_api-Describecloud_api Describe: an authorization always comes from an E8 commitE24held
NET-P-cloud_api-Updatecloud_api Update: an authorization always comes from an E8 commitE24held
NET-P-cloud_api-Terminatecloud_api Terminate: an authorization always comes from an E8 commitE24held
NET-Q-revoked-terminalREVOKED has no outgoing transitionE24held
NET-F-unknown-localfactor 'local' unknown makes authority emptyE24held
NET-F-narrows-localfactor 'local' narrows authorityE24held
NET-F-unknown-remotefactor 'remote' unknown makes authority emptyE24held
NET-F-narrows-remotefactor 'remote' narrows authorityE24held
NET-F-unknown-delegatedfactor 'delegated' unknown makes authority emptyE24held
NET-F-narrows-delegatedfactor 'delegated' narrows authorityE24held
NET-F-unknown-contract_scopefactor 'contract_scope' unknown makes authority emptyE24held
NET-F-narrows-contract_scopefactor 'contract_scope' narrows authorityE24held
NET-F-unknown-policyfactor 'policy' unknown makes authority emptyE24held
NET-F-narrows-policyfactor 'policy' narrows authorityE24held
NET-F-unknown-riskfactor 'risk' unknown makes authority emptyE24held
NET-F-narrows-riskfactor 'risk' narrows authorityE24held
NET-F-unknown-capabilityfactor 'capability' unknown makes authority emptyE24held
NET-F-narrows-capabilityfactor 'capability' narrows authorityE24held
NET-F-unknown-resourcefactor 'resource' unknown makes authority emptyE24held
NET-F-narrows-resourcefactor 'resource' narrows authorityE24held
NET-F-unknown-timefactor 'time' unknown makes authority emptyE24held
NET-F-narrows-timefactor 'time' narrows authorityE24held
NET-F-unknown-contextfactor 'context' unknown makes authority emptyE24held
NET-F-narrows-contextfactor 'context' narrows authorityE24held
NET-C-agent-a-delegateagent-a/delegate is VERIFIED only while its evidence is freshE24held
NET-C-agent-b-delegateagent-b/delegate is VERIFIED only while its evidence is freshE24held
NET-T-low-identity_trustidentity_trust UNKNOWN fails a low-consequence actionE24held
NET-T-medium-identity_trustidentity_trust UNKNOWN fails a medium-consequence actionE24held
NET-T-high-identity_trustidentity_trust UNKNOWN fails a high-consequence actionE24held
NET-O-identity-provideridentity-provider outage denies instead of trustingE24held
NET-O-revocation-providerrevocation-provider outage denies instead of trustingE24held
NET-L02NET-L02 TRUST IS NOT AUTHORITYE24held
NET-L03NET-L03 AUTHORITY IS NOT AUTHORIZATIONE24held
NET-L04NET-L04 AUTHORIZATION IS NOT EXECUTIONE24held
NET-L07NET-L07 NEGOTIATION IS NOT AUTHORIZATIONE24held

1 2 3 4 5 6 7

Other niches

Consensus & distributed systems · Attacks, threats & containment · Evidence, receipts & proofs · Memory, data & privacy · Prediction, world models & simulation · Transactions, markets & economics · Tools, MCP, protocols & adapters · Autonomy, control loops & recovery · Policy, law & governance · Trust & reputation · Supply chain, registry & lifecycle · Benchmarks, coverage & performance · Core guarantees

Try CAIN-42 on your own agents

Create a free account and every new account starts with a 7-day trial of the full platform. Or try the sandbox first, with no account at all.

Create a free account →  ·  Try the sandbox  ·  See the whole ecosystem