{
 "schema": "cainstudio.conformance.v1",
 "statement": "Self-run conformance: tests run by the key holder against this deployment and tenant. Not a certification, audit or third-party assurance. PASS = the property held for these inputs at this time.",
 "target": "https://clawx.click",
 "run_id": "cainconf-d8a97570",
 "sdk": "cainstudio 0.6.0",
 "python": "3.14.4",
 "started_at": 1791115124.169,
 "seconds": 34.12,
 "verdicts": {
  "rig": "CAIN-PARTIAL",
  "openshell": "CAIN-CONFORMANT",
  "memvault": "CAIN-CONFORMANT",
  "scitt": "CAIN-CONFORMANT"
 },
 "cross_tenant": "CAIN-CONFORMANT",
 "overall": "CAIN-PARTIAL",
 "counts": {
  "PASS": 31,
  "FAIL": 0,
  "ERROR": 1,
  "SKIPPED": 0
 },
 "checks": [
  {
   "id": "RIG-01",
   "product": "rig",
   "property": "agents register with a locally generated Ed25519 key; CAIN sees only the public key",
   "required": true,
   "result": "PASS",
   "detail": "registered parent and narrower child",
   "ms": 5965.5
  },
  {
   "id": "RIG-02",
   "product": "rig",
   "property": "delegation cannot add actions the parent lacks",
   "required": true,
   "result": "PASS",
   "detail": "HTTP 400: child actions ['write'] exceed the parent's",
   "ms": 356.9
  },
  {
   "id": "RIG-03",
   "product": "rig",
   "property": "delegation cannot widen resource scope",
   "required": true,
   "result": "PASS",
   "detail": "HTTP 400: child scope '/' is outside every parent scope",
   "ms": 496.6
  },
  {
   "id": "RIG-04",
   "product": "rig",
   "property": "a token cannot be minted outside the agent's scopes",
   "required": true,
   "result": "PASS",
   "detail": "HTTP 400: resource '/etc/passwd' is outside cainconf-d8a97570-parent's scopes",
   "ms": 210.6
  },
  {
   "id": "RIG-05",
   "product": "rig",
   "property": "a token cannot be minted for an action the agent lacks",
   "required": true,
   "result": "PASS",
   "detail": "HTTP 400: action 'write' is not granted to cainconf-d8a97570-parent",
   "ms": 289.0
  },
  {
   "id": "RIG-06",
   "product": "rig",
   "property": "token lifetime is bounded (a 1-day TTL is refused)",
   "required": true,
   "result": "PASS",
   "detail": "HTTP 400: max_ttl_seconds must be within [1, 300]",
   "ms": 2089.9
  },
  {
   "id": "RIG-07",
   "product": "rig",
   "property": "a token is single use: the legitimate use verifies, a replay is refused",
   "required": true,
   "result": "ERROR",
   "detail": "CainUnavailable: could not reach CAIN at https://clawx.click: The read operation timed out",
   "ms": 11051.7
  },
  {
   "id": "RIG-08",
   "product": "rig",
   "property": "a stolen token without the agent's private key is useless, and the failed attempt does not burn the holder's token",
   "required": true,
   "result": "PASS",
   "detail": "proof-of-possession signature does not verify against the agent's registered key",
   "ms": 4090.8
  },
  {
   "id": "RIG-09",
   "product": "rig",
   "property": "a request-bound token cannot authorize a different request",
   "required": true,
   "result": "PASS",
   "detail": "request hash differs from the call this token was minted for",
   "ms": 517.2
  },
  {
   "id": "RIG-10",
   "product": "rig",
   "property": "revoking an agent revokes its delegates and all their unspent tokens",
   "required": true,
   "result": "PASS",
   "detail": "parent revoke revoked the child and its unspent token; child cannot mint",
   "ms": 3074.8
  },
  {
   "id": "RIG-11",
   "product": "rig",
   "property": "the identity audit log's hash chain verifies",
   "required": true,
   "result": "PASS",
   "detail": "intact",
   "ms": 311.0
  },
  {
   "id": "OSH-01",
   "product": "openshell",
   "property": "a sandbox policy can be registered for a test agent",
   "required": true,
   "result": "PASS",
   "detail": "policy: ls, cat, echo under /tmp",
   "ms": 277.0
  },
  {
   "id": "OSH-02",
   "product": "openshell",
   "property": "a command the policy allows is allowed",
   "required": true,
   "result": "PASS",
   "detail": "ls /tmp allowed",
   "ms": 306.3
  },
  {
   "id": "OSH-03",
   "product": "openshell",
   "property": "binaries outside the allowlist are refused (by name or by path)",
   "required": true,
   "result": "PASS",
   "detail": "6/6 refused",
   "ms": 513.8
  },
  {
   "id": "OSH-04",
   "product": "openshell",
   "property": "shell control, redirection and expansion syntax is refused (; && | $( ` newline > < & $VAR)",
   "required": true,
   "result": "PASS",
   "detail": "11/11 refused",
   "ms": 1546.3
  },
  {
   "id": "OSH-05",
   "product": "openshell",
   "property": "forbidden paths, traversal, home-relative paths and paths outside the allowed set are refused",
   "required": true,
   "result": "PASS",
   "detail": "5/5 refused",
   "ms": 453.6
  },
  {
   "id": "OSH-06",
   "product": "openshell",
   "property": "an agent with no registered policy cannot run dangerous commands",
   "required": true,
   "result": "PASS",
   "detail": "3/3 refused",
   "ms": 272.6
  },
  {
   "id": "MEM-01",
   "product": "memvault",
   "property": "a benign memory write is accepted and gets an id",
   "required": true,
   "result": "PASS",
   "detail": "ALLOW",
   "ms": 575.8
  },
  {
   "id": "MEM-02",
   "product": "memvault",
   "property": "known prompt-injection text is not stored as usable memory (quarantined or denied)",
   "required": true,
   "result": "PASS",
   "detail": "QUARANTINED,QUARANTINED",
   "ms": 120.9
  },
  {
   "id": "MEM-03",
   "product": "memvault",
   "property": "quarantined memory is never returned by search",
   "required": true,
   "result": "PASS",
   "detail": "1 results, 0 quarantined",
   "ms": 62.5
  },
  {
   "id": "MEM-04",
   "product": "memvault",
   "property": "one agent cannot read another agent's private memory",
   "required": true,
   "result": "PASS",
   "detail": "0 results from another agent's namespace",
   "ms": 42.8
  },
  {
   "id": "MEM-05",
   "product": "memvault",
   "property": "retrieved RAG chunks are screened: injection removed, benign text kept",
   "required": true,
   "result": "PASS",
   "detail": "1 safe, 1 quarantined",
   "ms": 38.3
  },
  {
   "id": "MEM-06",
   "product": "memvault",
   "property": "a memory has provenance and passes its integrity check",
   "required": true,
   "result": "PASS",
   "detail": "provenance present, integrity verified",
   "ms": 99.9
  },
  {
   "id": "SCT-01",
   "product": "scitt",
   "property": "a recorded statement's receipt verifies offline (inclusion proof + Ed25519 checkpoint, pinned keys)",
   "required": true,
   "result": "PASS",
   "detail": "in log log_8847d7a552451d605259e64d at tree size 127",
   "ms": 150.4
  },
  {
   "id": "SCT-02",
   "product": "scitt",
   "property": "a receipt does not verify for different content",
   "required": true,
   "result": "PASS",
   "detail": "body does not match the logged digest",
   "ms": 0.2
  },
  {
   "id": "SCT-03",
   "product": "scitt",
   "property": "tampered receipts (checkpoint, root, proof, index) are rejected",
   "required": true,
   "result": "PASS",
   "detail": "4/4 tamperings rejected",
   "ms": 0.9
  },
  {
   "id": "SCT-04",
   "product": "scitt",
   "property": "a receipt does not verify under someone else's key",
   "required": true,
   "result": "PASS",
   "detail": "checkpoint signature invalid or key not pinned",
   "ms": 0.3
  },
  {
   "id": "SCT-05",
   "product": "scitt",
   "property": "the log is append-only: a locally verified consistency proof links our receipt's checkpoint to a later one",
   "required": true,
   "result": "PASS",
   "detail": "tree 127 -> 128 is append-only (RFC 9162, checked locally)",
   "ms": 86.4
  },
  {
   "id": "XT-01",
   "product": "tenancy",
   "property": "another tenant cannot fetch this tenant's evidence receipt",
   "required": true,
   "result": "PASS",
   "detail": "receipt: 404 (indistinguishable from absent)",
   "ms": 63.7
  },
  {
   "id": "XT-02",
   "product": "tenancy",
   "property": "another tenant cannot read this tenant's memory",
   "required": true,
   "result": "PASS",
   "detail": "memory: 404 (indistinguishable from absent)",
   "ms": 63.3
  },
  {
   "id": "XT-03",
   "product": "tenancy",
   "property": "another tenant cannot see this tenant's agents",
   "required": true,
   "result": "PASS",
   "detail": "agent: 404 (indistinguishable from absent)",
   "ms": 37.5
  },
  {
   "id": "XT-04",
   "product": "tenancy",
   "property": "another tenant cannot revoke this tenant's agents (and cannot tell they exist)",
   "required": true,
   "result": "PASS",
   "detail": "refused (400), same answer as a non-existent id, agent still ACTIVE",
   "ms": 595.2
  }
 ],
 "cleanup": {
  "agents_revoked": 3,
  "memories_revoked": 3,
  "errors": 0
 },
 "side_effects": "test agents and memories (revoked by cleanup), one sandbox policy for the test agent, evidence statements (append-only log; they stay)",
 "report_sha256": "dae1d49f38d1c8912658701cc5a00e74686c830290d47bb254fc552aec0f165b"
}