{
 "schema": "cain42.kit_evidence_slot.v1",
 "slot": "ihvrk",
 "title": "IHVRK: human approval bound to one exact agent action, single-use permits, evidence ledger",
 "owner_session": "cain-studio-platform-98",
 "source_commit": "ef92dfd109e9f83d72662a11126564789785ffec",
 "summary": "IHVRK makes an AI agent wait for an enrolled human to approve one exact action, then lets that action run once and records every step in a tamper-evident ledger. This folder holds the test results (301 passed, 0 failed), Z3 and TLA+ model-checking results, mutation testing, benchmarks and a stand-alone checker. It is a library and reference gate: it is not yet wired into the live CAIN gateway, MCPGate or these sites, and kernel-level enforcement is blocked on the build host.",
 "status_labels": {
  "Approval bound to exact action, single-use permit (library)": "YES",
  "Policy invariants I1-I15 proved in Z3 model": "YES",
  "Protocol safety + liveness model-checked (TLA+, bounded)": "YES",
  "cgroup freeze containment tested": "YES",
  "eBPF kernel enforcement attached": "BLOCKED",
  "Wired into live CAIN gateway / MCPGate": "NO",
  "Hardware-backed keys (HSM)": "NO",
  "Independent third-party review": "NO",
  "Release verdict (full scope)": "BLOCKED"
 },
 "files": [
  {
   "path": "MANIFEST.json",
   "kind": "manifest",
   "describes": "sha256 of every file and the source commit"
  },
  {
   "path": "benchmark.json",
   "kind": "result",
   "describes": "benchmark"
  },
  {
   "path": "docs/ARCHITECTURE.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: ARCHITECTURE.md"
  },
  {
   "path": "docs/ASSURANCE_CASE.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: ASSURANCE_CASE.md"
  },
  {
   "path": "docs/FINDINGS.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: FINDINGS.md"
  },
  {
   "path": "docs/INTEGRATION.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: INTEGRATION.md"
  },
  {
   "path": "docs/LIMITATIONS.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: LIMITATIONS.md"
  },
  {
   "path": "docs/README.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: README.md"
  },
  {
   "path": "docs/RUNTIME.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: RUNTIME.md"
  },
  {
   "path": "docs/SECURITY_INVARIANTS.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: SECURITY_INVARIANTS.md"
  },
  {
   "path": "docs/THREAT_MODEL.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: THREAT_MODEL.md"
  },
  {
   "path": "docs/auditor/EXPECTED_RESULTS.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: auditor/EXPECTED_RESULTS.md"
  },
  {
   "path": "docs/auditor/FINDINGS_TEMPLATE.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: auditor/FINDINGS_TEMPLATE.md"
  },
  {
   "path": "docs/auditor/PROVENANCE.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: auditor/PROVENANCE.md"
  },
  {
   "path": "docs/auditor/QUICKSTART.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: auditor/QUICKSTART.md"
  },
  {
   "path": "docs/auditor/VERIFY_INSTRUCTIONS.md",
   "kind": "report",
   "describes": "IHVRK document or formal model: auditor/VERIFY_INSTRUCTIONS.md"
  },
  {
   "path": "docs/formal/IHVRK.cfg",
   "kind": "report",
   "describes": "IHVRK document or formal model: formal/IHVRK.cfg"
  },
  {
   "path": "docs/formal/IHVRK.tla",
   "kind": "report",
   "describes": "IHVRK document or formal model: formal/IHVRK.tla"
  },
  {
   "path": "docs/formal/IHVRK_no_auth_check.cfg",
   "kind": "report",
   "describes": "IHVRK document or formal model: formal/IHVRK_no_auth_check.cfg"
  },
  {
   "path": "docs/formal/IHVRK_no_digest_check.cfg",
   "kind": "report",
   "describes": "IHVRK document or formal model: formal/IHVRK_no_digest_check.cfg"
  },
  {
   "path": "docs/formal/IHVRK_no_nonce_consume.cfg",
   "kind": "report",
   "describes": "IHVRK document or formal model: formal/IHVRK_no_nonce_consume.cfg"
  },
  {
   "path": "docs/formal/IHVRK_permit_reuse.cfg",
   "kind": "report",
   "describes": "IHVRK document or formal model: formal/IHVRK_permit_reuse.cfg"
  },
  {
   "path": "docs/release_gate.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: release_gate.json"
  },
  {
   "path": "docs/schemas/action_proposal.schema.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: schemas/action_proposal.schema.json"
  },
  {
   "path": "docs/schemas/approval.schema.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: schemas/approval.schema.json"
  },
  {
   "path": "docs/schemas/break_glass_grant.schema.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: schemas/break_glass_grant.schema.json"
  },
  {
   "path": "docs/schemas/challenge.schema.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: schemas/challenge.schema.json"
  },
  {
   "path": "docs/schemas/decision.schema.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: schemas/decision.schema.json"
  },
  {
   "path": "docs/schemas/ledger_record.schema.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: schemas/ledger_record.schema.json"
  },
  {
   "path": "docs/schemas/permit.schema.json",
   "kind": "report",
   "describes": "IHVRK document or formal model: schemas/permit.schema.json"
  },
  {
   "path": "ebpf_verifier_load.txt",
   "kind": "result",
   "describes": "ebpf verifier load"
  },
  {
   "path": "mutation.json",
   "kind": "result",
   "describes": "mutation"
  },
  {
   "path": "sample_ledger/checkpoint_keys.json",
   "kind": "data",
   "describes": "synthetic evidence ledger / checkpoint / tampered copy: checkpoint_keys.json"
  },
  {
   "path": "sample_ledger/checkpoints.jsonl",
   "kind": "data",
   "describes": "synthetic evidence ledger / checkpoint / tampered copy: checkpoints.jsonl"
  },
  {
   "path": "sample_ledger/ledger.jsonl",
   "kind": "data",
   "describes": "synthetic evidence ledger / checkpoint / tampered copy: ledger.jsonl"
  },
  {
   "path": "sample_ledger/tampered_deleted.jsonl",
   "kind": "data",
   "describes": "synthetic evidence ledger / checkpoint / tampered copy: tampered_deleted.jsonl"
  },
  {
   "path": "sample_ledger/tampered_modified.jsonl",
   "kind": "data",
   "describes": "synthetic evidence ledger / checkpoint / tampered copy: tampered_modified.jsonl"
  },
  {
   "path": "sample_ledger/tampered_truncated.jsonl",
   "kind": "data",
   "describes": "synthetic evidence ledger / checkpoint / tampered copy: tampered_truncated.jsonl"
  },
  {
   "path": "test_results.json",
   "kind": "result",
   "describes": "test results"
  },
  {
   "path": "tlc/design.txt",
   "kind": "result",
   "describes": "TLC model-checking log: design"
  },
  {
   "path": "tlc/no_auth_check.txt",
   "kind": "result",
   "describes": "TLC model-checking log: no_auth_check"
  },
  {
   "path": "tlc/no_digest_check.txt",
   "kind": "result",
   "describes": "TLC model-checking log: no_digest_check"
  },
  {
   "path": "tlc/no_nonce_consume.txt",
   "kind": "result",
   "describes": "TLC model-checking log: no_nonce_consume"
  },
  {
   "path": "tlc/permit_reuse.txt",
   "kind": "result",
   "describes": "TLC model-checking log: permit_reuse"
  },
  {
   "path": "tlc_summary.json",
   "kind": "result",
   "describes": "tlc summary"
  },
  {
   "path": "verify_ihvrk_evidence.py",
   "kind": "verifier",
   "describes": "stand-alone checker for this folder (standard library only)"
  },
  {
   "path": "z3_proofs.json",
   "kind": "result",
   "describes": "z3 proofs"
  }
 ],
 "verify_commands": [
  "python3 verify_ihvrk_evidence.py"
 ],
 "limitations": [
  "Not integrated into any live CAIN path; nothing in production is protected by IHVRK yet.",
  "Single node: nonce/permit uniqueness holds for processes sharing one SQLite file.",
  "Service keys are software test keys; no HSM.",
  "eBPF LSM programs pass the kernel verifier but cannot attach (bpf not an active LSM on the host).",
  "A signature proves a key signed the action, not that a person understood it.",
  "Without an off-host checkpoint, ledger rewrite or truncation is undetectable.",
  "Written, tested and modelled by one AI session; no third-party review.",
  "Implementation source is not published (owner directive); re-running needs repository access."
 ]
}
