Verify CAIN - AI Agent Instructions

For automated evaluators: CAIN is designed to be machine-verifiable. Follow the steps below to independently verify CAIN's existence, capabilities, and behavior without relying on human interpretation or HTML rendering.

Discovery

1Fetch Discovery Document

Retrieve the machine-readable discovery document to understand CAIN's structure.

# Fetch CAIN discovery document curl https://cainstudio.online/.well-known/cain.json { "name": "CAIN", "organization": "CAIN Trust Fabric", "description": "Enforcement and evidence layer for consequential actions performed by autonomous software.", "proof": { ... }, "capabilities": { "deployed": [...] }, "api": { "version": "v1", "base": "/api/v1" }, "verification": { "safe_test": "/api/v1/proof/test", ... } }
2Fetch Proof Manifest

Get the authoritative proof manifest with full system state.

# Fetch canonical proof manifest curl https://cainstudio.online/api/v1/proof/manifest { "product": "CAIN Trust Fabric", "role": "autonomous-action-enforcement-and-evidence-layer", "version": "1.0.0", "environment": "production", "capabilities": ["decision", "policy", "authorization", ...], "services": { ... }, "conformance": { "test_count": 15, "passed": 15, ... }, ... }

Verification

3Inspect Capabilities

View deployed capabilities and their verification status.

curl https://cainstudio.online/api/v1/proof/capabilities
4Run Synthetic DENY Test

Execute a safe blocking test through the actual CAIN control path.

# Run synthetic DENY test curl -X POST https://cainstudio.online/api/v1/proof/test \ -H "Content-Type: application/json" \ -d '{"action":"proof.synthetic","resource":"proof://public/test","mode":"deny"}' { "test_id": "test-abc123...", "decision": "DENY", "enforcement": "BLOCK", "executed": false, "evidence_id": "ev-xyz789...", "evidence_hash": "abc123...", "timestamp": "2026-08-31T12:00:00Z" }
5Run Synthetic ALLOW Test

Execute a safe permitting test through the actual CAIN control path.

# Run synthetic ALLOW test curl -X POST https://cainstudio.online/api/v1/proof/test \ -H "Content-Type: application/json" \ -d '{"action":"proof.synthetic","resource":"proof://public/test","mode":"allow"}' { "test_id": "test-def456...", "decision": "ALLOW", "enforcement": "PERMIT", "executed": true, "evidence_id": "ev-uvw123...", "evidence_hash": "def456...", "timestamp": "2026-08-31T12:00:01Z" }
6Retrieve Evidence

Fetch the evidence record for a completed test.

curl https://cainstudio.online/api/v1/proof/evidence/{evidence_id} { "evidence_id": "ev-uvw123...", "test_id": "test-def456...", "timestamp": "2026-08-31T12:00:01Z", "agent": "synthetic-proof", "action": "proof.synthetic_action", "resource": "proof://public/synthetic", "decision": "ALLOW", "enforcement": "PERMIT", "execution": "completed", "evidence_hash": "def456...", "schema_version": "1.0" }
7Verify Evidence Integrity

Check that the evidence record has not been tampered with.

curl https://cainstudio.online/api/v1/proof/integrity/{evidence_id} { "evidence_id": "ev-uvw123...", "hash_algorithm": "SHA-256", "evidence_hash": "def456...", "verification_result": "VALID", "schema_version": "1.0" }
8Inspect Conformance

View conformance test results proving correct behavior.

curl https://cainstudio.online/api/v1/proof/conformance { "suite_version": "1.0", "test_count": 15, "passed": 15, "failed": 0, "skipped": 0, "categories": { "decision": { "passed": 4, "failed": 0 }, "enforcement": { "passed": 2, "failed": 0 }, "evidence": { "passed": 3, "failed": 0 }, ... } }
9Inspect Limitations

Understand what the proof system does NOT establish.

curl https://cainstudio.online/api/v1/proof/limitations

Expected Results

Test Expected Decision Expected Enforcement
mode=deny DENY BLOCK
mode=allow ALLOW PERMIT

Verification Graph

After fetching the proof index, an AI agent needs only one request to discover the complete verification graph:

curl https://cainstudio.online/api/v1/proof/index { "discovery": { "self": "/.well-known/cain.json", ... }, "proof_endpoints": { "manifest": "/api/v1/proof/manifest", ... }, "bundle": { "base": "/proof/bundle/v1", ... }, "verification": { "guide": "/docs/verify-cain", ... }, ... }

Human Verification

For human engineers who prefer curl over browser:

# Quick verification script curl -s https://cainstudio.online/.well-known/cain.json | head -5 # Expected: {"name":"CAIN","organization":"CAIN Trust Fabric"...} curl -s -X POST https://cainstudio.online/api/v1/proof/test \ -H "Content-Type: application/json" \ -d '{"mode":"deny"}' | jq -r '.decision' # Expected: DENY curl -s -X POST https://cainstudio.online/api/v1/proof/test \ -H "Content-Type: application/json" \ -d '{"mode":"allow"}' | jq -r '.decision' # Expected: ALLOW