{
  "audit": {
    "events_checked": 12,
    "head_hash": "272033c25b2947b71dc41f7ccdc075c66ff1d2b0a7afd432345239f6c6855854",
    "valid": true
  },
  "audit_events": [
    {
      "actor": "changefront-system",
      "actor_kind": "system",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "authority_tier": 1,
        "public_safe": true
      },
      "entity_id": "demo-policy",
      "entity_type": "source",
      "event_hash": "f7699843fa8b0753c6fe5d96f1db477faf500333a22e950ae4045965af1e4cdb",
      "event_type": "source.registered",
      "id": 1,
      "previous_hash": "GENESIS"
    },
    {
      "actor": "mcp-client",
      "actor_kind": "ai_client",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "content_hash": "3f5df151d0a7f12bfb0eb6a19b538744f0e8897c977eefa5c928edc966d9b8cd",
        "invalidated": {
          "proposals": 0,
          "recommendations": 0
        },
        "stable_key": "review-interval",
        "supersedes": null,
        "version_no": 1
      },
      "entity_id": "evv-0001",
      "entity_type": "evidence_version",
      "event_hash": "24e2821b3140bae3be777d584a25f0e344577916a90512a1338d716ee37ac501",
      "event_type": "evidence.version_ingested",
      "id": 2,
      "previous_hash": "f7699843fa8b0753c6fe5d96f1db477faf500333a22e950ae4045965af1e4cdb"
    },
    {
      "actor": "mcp-client",
      "actor_kind": "ai_client",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "confidence": 0.9,
        "evidence_version_ids": [
          "evv-0001"
        ]
      },
      "entity_id": "rec-0001",
      "entity_type": "recommendation",
      "event_hash": "089468fa37967e29d7a1da904f555cd0bfe3a5533bb4b1b1ca9deacb0426a0f1",
      "event_type": "recommendation.created",
      "id": 3,
      "previous_hash": "24e2821b3140bae3be777d584a25f0e344577916a90512a1338d716ee37ac501"
    },
    {
      "actor": "mcp-client",
      "actor_kind": "ai_client",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "applied": false,
        "base_revision": "r1",
        "document_key": "example-runbook",
        "evidence_version_ids": [
          "evv-0001"
        ]
      },
      "entity_id": "prp-0001",
      "entity_type": "proposal",
      "event_hash": "a6bf59d9e52b0ceb2cdf9a65f15799e9029054e1244219eab91fa5ab3f123061",
      "event_type": "proposal.created",
      "id": 4,
      "previous_hash": "089468fa37967e29d7a1da904f555cd0bfe3a5533bb4b1b1ca9deacb0426a0f1"
    },
    {
      "actor": "mcp-client",
      "actor_kind": "ai_client",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "evidence_version_ids": [
          "evv-0001"
        ]
      },
      "entity_id": "rec-0001",
      "entity_type": "recommendation",
      "event_hash": "3fdfbe3d7a1ad2b7d2637fd5db6255ed56684f495ed0c692168e13363ef05546",
      "event_type": "recommendation.submitted",
      "id": 5,
      "previous_hash": "a6bf59d9e52b0ceb2cdf9a65f15799e9029054e1244219eab91fa5ab3f123061"
    },
    {
      "actor": "mcp-client",
      "actor_kind": "ai_client",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "applied": false,
        "evidence_version_ids": [
          "evv-0001"
        ]
      },
      "entity_id": "prp-0001",
      "entity_type": "proposal",
      "event_hash": "1676f1195b1c2af592de8f2f7f77347607c6387ff25b2241e38d27ef4a1961b2",
      "event_type": "proposal.submitted",
      "id": 6,
      "previous_hash": "3fdfbe3d7a1ad2b7d2637fd5db6255ed56684f495ed0c692168e13363ef05546"
    },
    {
      "actor": "mcp-client",
      "actor_kind": "ai_client",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "reason": "approval decisions cannot be made by an AI client or system actor"
      },
      "entity_id": "rec-0001",
      "entity_type": "recommendation",
      "event_hash": "8c6424f0fd602429ad394df1bb4a395f970e3698ef6451dfc8979bc0f924b28b",
      "event_type": "approval.denied",
      "id": 7,
      "previous_hash": "1676f1195b1c2af592de8f2f7f77347607c6387ff25b2241e38d27ef4a1961b2"
    },
    {
      "actor": "SCRIPTED REVIEWER FIXTURE",
      "actor_kind": "human",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "applied": false,
        "decision": "approved",
        "decision_id": "dec-0001",
        "evidence_version_ids": [
          "evv-0001"
        ],
        "human_confirmed": true
      },
      "entity_id": "rec-0001",
      "entity_type": "recommendation",
      "event_hash": "40d7c318d360cae7b87cb36157f65182a72e05363f30c22e10a231c3638b42ae",
      "event_type": "recommendation.human_decision",
      "id": 8,
      "previous_hash": "8c6424f0fd602429ad394df1bb4a395f970e3698ef6451dfc8979bc0f924b28b"
    },
    {
      "actor": "SCRIPTED REVIEWER FIXTURE",
      "actor_kind": "human",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "applied": false,
        "decision": "approved",
        "decision_id": "dec-0002",
        "evidence_version_ids": [
          "evv-0001"
        ],
        "human_confirmed": true
      },
      "entity_id": "prp-0001",
      "entity_type": "proposal",
      "event_hash": "a5c2c7308d7f56cad8f297454417ead11413b1fd75287611e079936044218a90",
      "event_type": "proposal.human_decision",
      "id": 9,
      "previous_hash": "40d7c318d360cae7b87cb36157f65182a72e05363f30c22e10a231c3638b42ae"
    },
    {
      "actor": "changefront-system",
      "actor_kind": "system",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "evidence_version_id": "evv-0001",
        "reason": "evidence superseded by evv-0002"
      },
      "entity_id": "rec-0001",
      "entity_type": "recommendation",
      "event_hash": "5b297ddbd795e1bba89e5591d656da5e737c438d82c9db2da709c87cc5bcb04a",
      "event_type": "recommendation.invalidated",
      "id": 10,
      "previous_hash": "a5c2c7308d7f56cad8f297454417ead11413b1fd75287611e079936044218a90"
    },
    {
      "actor": "changefront-system",
      "actor_kind": "system",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "evidence_version_id": "evv-0001",
        "reason": "evidence superseded by evv-0002"
      },
      "entity_id": "prp-0001",
      "entity_type": "proposal",
      "event_hash": "d400c67d1e5522817c4f9ff73fe3f7caaf982ade0c4da7c9a292ca94dc82d59d",
      "event_type": "proposal.invalidated",
      "id": 11,
      "previous_hash": "5b297ddbd795e1bba89e5591d656da5e737c438d82c9db2da709c87cc5bcb04a"
    },
    {
      "actor": "mcp-client",
      "actor_kind": "ai_client",
      "created_at": "2026-09-14T12:00:00Z",
      "details": {
        "content_hash": "f41038b39f3c6d04488735deb0097f622539abdf50ba0dc5a697ecc8d78162ab",
        "invalidated": {
          "proposals": 1,
          "recommendations": 1
        },
        "stable_key": "review-interval",
        "supersedes": "evv-0001",
        "version_no": 2
      },
      "entity_id": "evv-0002",
      "entity_type": "evidence_version",
      "event_hash": "272033c25b2947b71dc41f7ccdc075c66ff1d2b0a7afd432345239f6c6855854",
      "event_type": "evidence.version_ingested",
      "id": 12,
      "previous_hash": "d400c67d1e5522817c4f9ff73fe3f7caaf982ade0c4da7c9a292ca94dc82d59d"
    }
  ],
  "checks": [
    {
      "name": "Both items entered review citing evidence version 1",
      "passed": true
    },
    {
      "name": "AI-role approval attempt was denied",
      "passed": true
    },
    {
      "name": "Scripted reviewer approval records a decision but does not apply the document",
      "passed": true
    },
    {
      "name": "New evidence invalidates previously approved dependent work",
      "passed": true
    },
    {
      "name": "The original evidence content is preserved",
      "passed": true
    },
    {
      "name": "Old recommendation cannot be resubmitted with superseded evidence",
      "passed": true
    },
    {
      "name": "Real MCP subprocess exposes tools but no approval or apply operation",
      "passed": true
    },
    {
      "name": "Recorded audit chain validates",
      "passed": true
    }
  ],
  "execution_sha256": "36af2d0cd8669512f70b146a2b9bb1c3d015700d9b2b0cac225fec8c8601867a",
  "generated_at": "2026-09-14T22:56:10+00:00",
  "mcp": {
    "request": {
      "id": 1,
      "jsonrpc": "2.0",
      "method": "tools/list",
      "params": {
        "_meta": {
          "io.modelcontextprotocol/clientCapabilities": {},
          "io.modelcontextprotocol/clientInfo": {
            "name": "scripted-portfolio-check",
            "version": "1.0"
          },
          "io.modelcontextprotocol/protocolVersion": "2026-07-28"
        }
      }
    },
    "response": {
      "id": 1,
      "jsonrpc": "2.0",
      "result": {
        "_meta": {
          "io.modelcontextprotocol/serverInfo": {
            "description": "Governed evidence and human-reviewed change proposal reference server",
            "name": "changefront-reference-edition",
            "version": "0.1.0"
          }
        },
        "cacheScope": "public",
        "resultType": "complete",
        "tools": [
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true,
              "title": "Governed system summary"
            },
            "description": "Read counts, current states, audit validity, and the human approval boundary.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {},
              "type": "object"
            },
            "name": "system.summary",
            "title": "Governed system summary"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true,
              "title": "List governed evidence"
            },
            "description": "List immutable evidence versions with provenance and effective state.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {
                "current_only": {
                  "default": true,
                  "type": "boolean"
                }
              },
              "type": "object"
            },
            "name": "evidence.list",
            "title": "List governed evidence"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": false,
              "openWorldHint": false,
              "readOnlyHint": false,
              "title": "Ingest an evidence version"
            },
            "description": "Append a governed evidence version. Registered HTTPS provenance is required; existing versions are never edited.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {
                "applicability": {
                  "type": "string"
                },
                "claim": {
                  "type": "string"
                },
                "confidence": {
                  "maximum": 1,
                  "minimum": 0,
                  "type": "number"
                },
                "excerpt": {
                  "type": "string"
                },
                "expires_at": {
                  "format": "date-time",
                  "type": "string"
                },
                "metadata": {
                  "type": "object"
                },
                "observed_at": {
                  "format": "date-time",
                  "type": "string"
                },
                "source_id": {
                  "type": "string"
                },
                "source_uri": {
                  "format": "uri",
                  "type": "string"
                },
                "stable_key": {
                  "type": "string"
                },
                "title": {
                  "type": "string"
                },
                "valid_from": {
                  "format": "date-time",
                  "type": "string"
                },
                "verification_state": {
                  "enum": [
                    "verified",
                    "unverified",
                    "disputed"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "stable_key",
                "title",
                "claim",
                "source_id",
                "source_uri",
                "observed_at",
                "expires_at",
                "applicability",
                "verification_state",
                "confidence"
              ],
              "type": "object"
            },
            "name": "evidence.ingest",
            "title": "Ingest an evidence version"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true,
              "title": "List recommendations"
            },
            "description": "List evidence-linked recommendations and their review state.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {},
              "type": "object"
            },
            "name": "recommendation.list",
            "title": "List recommendations"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": false,
              "openWorldHint": false,
              "readOnlyHint": false,
              "title": "Draft a recommendation"
            },
            "description": "Create a reviewable recommendation linked to immutable evidence version IDs.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {
                "confidence": {
                  "maximum": 1,
                  "minimum": 0,
                  "type": "number"
                },
                "evidence_version_ids": {
                  "items": {
                    "type": "string"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "proposed_action": {
                  "type": "string"
                },
                "rationale": {
                  "type": "string"
                },
                "title": {
                  "type": "string"
                }
              },
              "required": [
                "title",
                "rationale",
                "proposed_action",
                "confidence",
                "evidence_version_ids"
              ],
              "type": "object"
            },
            "name": "recommendation.create",
            "title": "Draft a recommendation"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": false,
              "openWorldHint": false,
              "readOnlyHint": false,
              "title": "Submit a recommendation"
            },
            "description": "Move a draft recommendation to human review after checking current verified evidence.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {
                "recommendation_id": {
                  "type": "string"
                }
              },
              "required": [
                "recommendation_id"
              ],
              "type": "object"
            },
            "name": "recommendation.submit",
            "title": "Submit a recommendation"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true,
              "title": "List document-change proposals"
            },
            "description": "List evidence-linked text proposals. The system does not apply them.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {},
              "type": "object"
            },
            "name": "proposal.list",
            "title": "List document-change proposals"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": false,
              "openWorldHint": false,
              "readOnlyHint": false,
              "title": "Draft a document-change proposal"
            },
            "description": "Create a non-applying, evidence-linked proposal for later human review.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {
                "base_revision": {
                  "type": "string"
                },
                "document_key": {
                  "type": "string"
                },
                "evidence_version_ids": {
                  "items": {
                    "type": "string"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "proposed_markdown": {
                  "type": "string"
                },
                "rationale": {
                  "type": "string"
                },
                "title": {
                  "type": "string"
                }
              },
              "required": [
                "document_key",
                "base_revision",
                "title",
                "rationale",
                "proposed_markdown",
                "evidence_version_ids"
              ],
              "type": "object"
            },
            "name": "proposal.create",
            "title": "Draft a document-change proposal"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": false,
              "openWorldHint": false,
              "readOnlyHint": false,
              "title": "Submit a document-change proposal"
            },
            "description": "Move a proposal to human review. This still does not edit any document.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {
                "proposal_id": {
                  "type": "string"
                }
              },
              "required": [
                "proposal_id"
              ],
              "type": "object"
            },
            "name": "proposal.submit",
            "title": "Submit a document-change proposal"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": false,
              "openWorldHint": false,
              "readOnlyHint": false,
              "title": "Evaluate evidence staleness"
            },
            "description": "Append staleness events for expired current evidence and invalidate dependent work.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {
                "as_of": {
                  "format": "date-time",
                  "type": "string"
                }
              },
              "type": "object"
            },
            "name": "governance.evaluate_staleness",
            "title": "Evaluate evidence staleness"
          },
          {
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": true,
              "openWorldHint": false,
              "readOnlyHint": true,
              "title": "Verify the audit hash chain"
            },
            "description": "Recompute the append-only audit chain and report whether it is valid.",
            "inputSchema": {
              "additionalProperties": false,
              "properties": {},
              "type": "object"
            },
            "name": "audit.verify",
            "title": "Verify the audit hash chain"
          }
        ],
        "ttlMs": 300000
      }
    },
    "transport": "real local stdio subprocess"
  },
  "python": "3.12.14",
  "scenario_clock": "2026-09-14T12:00:00Z",
  "schema_version": 1,
  "scope": "Synthetic scripted test. No LLM call, no real human reviewer, no employer data, and no external document write.",
  "source": {
    "commit": "fce2ae6edee00dbd68c081f87ae90fe4d1553cf3",
    "engine_sha256": "20ac477cac852e1fcada5890cbbcfd6d981b9259107217bdb4ee3ef07069aa81",
    "repository": "https://github.com/Robiswell/ChangeFront",
    "runner_sha256": "d4851e701ef3d074e3cd3ed2a4deca4e4d39f9dd56a3b2dc911925e9f8d9c0ac"
  },
  "steps": [
    {
      "evidence": [
        {
          "applicability": "Invented portfolio test control",
          "authority_tier": 1,
          "claim": "Review this synthetic control every 90 days.",
          "confidence": 0.95,
          "content_hash": "3f5df151d0a7f12bfb0eb6a19b538744f0e8897c977eefa5c928edc966d9b8cd",
          "created_at": "2026-09-14T12:00:00Z",
          "created_by": "mcp-client",
          "effective_state": "active",
          "excerpt": "Review every 90 days.",
          "expires_at": "2027-09-01T00:00:00Z",
          "id": "evv-0001",
          "is_current_version": true,
          "metadata": {
            "synthetic": true
          },
          "observed_at": "2026-09-01T00:00:00Z",
          "persisted_state": "active",
          "record_id": "evr-0001",
          "source_id": "demo-policy",
          "source_name": "Synthetic review policy",
          "source_type": "official",
          "source_uri": "https://policy.example/review",
          "stable_key": "review-interval",
          "state_reason": "new immutable version accepted",
          "state_source": "persisted_event",
          "title": "Synthetic review interval",
          "valid_from": "2026-09-01T00:00:00Z",
          "verification_state": "verified",
          "version_no": 1
        }
      ],
      "explanation": "A scripted draft and document proposal enter review with a direct link to version 1. The verified designation is supplied by the fixture, not established by fact-checking.",
      "key": "submitted",
      "proposal": {
        "applied": false,
        "base_revision": "r1",
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": null,
        "document_key": "example-runbook",
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "prp-0001",
        "proposed_markdown": "Review the example control every 90 days.",
        "rationale": "Follow the synthetic v1 policy.",
        "state": "in_review",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "submitted for explicit human decision",
        "title": "Add the review checkpoint"
      },
      "recommendation": {
        "confidence": 0.9,
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": null,
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "rec-0001",
        "proposed_action": "Add a 90-day checkpoint to the example runbook.",
        "rationale": "The synthetic v1 policy specifies a 90-day interval.",
        "state": "in_review",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "submitted for explicit human decision",
        "title": "Schedule a 90-day review"
      },
      "title": "The recommendation cites a specific source version"
    },
    {
      "denied_attempt": {
        "error": "ApprovalBoundaryError",
        "message": "approval decisions cannot be made by an AI client or system actor"
      },
      "evidence": [
        {
          "applicability": "Invented portfolio test control",
          "authority_tier": 1,
          "claim": "Review this synthetic control every 90 days.",
          "confidence": 0.95,
          "content_hash": "3f5df151d0a7f12bfb0eb6a19b538744f0e8897c977eefa5c928edc966d9b8cd",
          "created_at": "2026-09-14T12:00:00Z",
          "created_by": "mcp-client",
          "effective_state": "active",
          "excerpt": "Review every 90 days.",
          "expires_at": "2027-09-01T00:00:00Z",
          "id": "evv-0001",
          "is_current_version": true,
          "metadata": {
            "synthetic": true
          },
          "observed_at": "2026-09-01T00:00:00Z",
          "persisted_state": "active",
          "record_id": "evr-0001",
          "source_id": "demo-policy",
          "source_name": "Synthetic review policy",
          "source_type": "official",
          "source_uri": "https://policy.example/review",
          "stable_key": "review-interval",
          "state_reason": "new immutable version accepted",
          "state_source": "persisted_event",
          "title": "Synthetic review interval",
          "valid_from": "2026-09-01T00:00:00Z",
          "verification_state": "verified",
          "version_no": 1
        }
      ],
      "explanation": "The script deliberately calls the service's decision method as an AI actor. It receives an approval-boundary error; the recommendation stays in review.",
      "key": "denied",
      "proposal": {
        "applied": false,
        "base_revision": "r1",
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": null,
        "document_key": "example-runbook",
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "prp-0001",
        "proposed_markdown": "Review the example control every 90 days.",
        "rationale": "Follow the synthetic v1 policy.",
        "state": "in_review",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "submitted for explicit human decision",
        "title": "Add the review checkpoint"
      },
      "recommendation": {
        "confidence": 0.9,
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": null,
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "rec-0001",
        "proposed_action": "Add a 90-day checkpoint to the example runbook.",
        "rationale": "The synthetic v1 policy specifies a 90-day interval.",
        "state": "in_review",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "submitted for explicit human decision",
        "title": "Schedule a 90-day review"
      },
      "title": "The AI-role approval attempt is rejected"
    },
    {
      "evidence": [
        {
          "applicability": "Invented portfolio test control",
          "authority_tier": 1,
          "claim": "Review this synthetic control every 90 days.",
          "confidence": 0.95,
          "content_hash": "3f5df151d0a7f12bfb0eb6a19b538744f0e8897c977eefa5c928edc966d9b8cd",
          "created_at": "2026-09-14T12:00:00Z",
          "created_by": "mcp-client",
          "effective_state": "active",
          "excerpt": "Review every 90 days.",
          "expires_at": "2027-09-01T00:00:00Z",
          "id": "evv-0001",
          "is_current_version": true,
          "metadata": {
            "synthetic": true
          },
          "observed_at": "2026-09-01T00:00:00Z",
          "persisted_state": "active",
          "record_id": "evr-0001",
          "source_id": "demo-policy",
          "source_name": "Synthetic review policy",
          "source_type": "official",
          "source_uri": "https://policy.example/review",
          "stable_key": "review-interval",
          "state_reason": "new immutable version accepted",
          "state_source": "persisted_event",
          "title": "Synthetic review interval",
          "valid_from": "2026-09-01T00:00:00Z",
          "verification_state": "verified",
          "version_no": 1
        }
      ],
      "explanation": "The script supplies the human-reviewer role and explicit confirmation. Both items become approved, but the proposal remains unapplied. This tests an authorization contract, not authenticated human identity.",
      "key": "approved",
      "proposal": {
        "applied": false,
        "base_revision": "r1",
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": {
          "created_at": "2026-09-14T12:00:00Z",
          "decision": "approved",
          "human_confirmed": true,
          "id": "dec-0002",
          "rationale": "Synthetic reviewer-role test, not a real person's acceptance.",
          "reviewer": "SCRIPTED REVIEWER FIXTURE",
          "reviewer_role": "human_reviewer"
        },
        "document_key": "example-runbook",
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "prp-0001",
        "proposed_markdown": "Review the example control every 90 days.",
        "rationale": "Follow the synthetic v1 policy.",
        "state": "approved",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "Synthetic reviewer-role test, not a real person's acceptance.",
        "title": "Add the review checkpoint"
      },
      "recommendation": {
        "confidence": 0.9,
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": {
          "created_at": "2026-09-14T12:00:00Z",
          "decision": "approved",
          "human_confirmed": true,
          "id": "dec-0001",
          "rationale": "Synthetic reviewer-role test, not a real person's acceptance.",
          "reviewer": "SCRIPTED REVIEWER FIXTURE",
          "reviewer_role": "human_reviewer"
        },
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "rec-0001",
        "proposed_action": "Add a 90-day checkpoint to the example runbook.",
        "rationale": "The synthetic v1 policy specifies a 90-day interval.",
        "state": "approved",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "Synthetic reviewer-role test, not a real person's acceptance.",
        "title": "Schedule a 90-day review"
      },
      "title": "Approval records a decision, not a document change"
    },
    {
      "blocked_resubmission": {
        "error": "ConflictError",
        "message": "recommendation in state invalidated cannot be submitted"
      },
      "evidence": [
        {
          "applicability": "Invented portfolio test control",
          "authority_tier": 1,
          "claim": "Review this synthetic control every 90 days.",
          "confidence": 0.95,
          "content_hash": "3f5df151d0a7f12bfb0eb6a19b538744f0e8897c977eefa5c928edc966d9b8cd",
          "created_at": "2026-09-14T12:00:00Z",
          "created_by": "mcp-client",
          "effective_state": "superseded",
          "excerpt": "Review every 90 days.",
          "expires_at": "2027-09-01T00:00:00Z",
          "id": "evv-0001",
          "is_current_version": false,
          "metadata": {
            "synthetic": true
          },
          "observed_at": "2026-09-01T00:00:00Z",
          "persisted_state": "superseded",
          "record_id": "evr-0001",
          "source_id": "demo-policy",
          "source_name": "Synthetic review policy",
          "source_type": "official",
          "source_uri": "https://policy.example/review",
          "stable_key": "review-interval",
          "state_reason": "superseded by evv-0002",
          "state_source": "persisted_event",
          "title": "Synthetic review interval",
          "valid_from": "2026-09-01T00:00:00Z",
          "verification_state": "verified",
          "version_no": 1
        },
        {
          "applicability": "Invented portfolio test control",
          "authority_tier": 1,
          "claim": "Review this synthetic control every 30 days.",
          "confidence": 0.95,
          "content_hash": "f41038b39f3c6d04488735deb0097f622539abdf50ba0dc5a697ecc8d78162ab",
          "created_at": "2026-09-14T12:00:00Z",
          "created_by": "mcp-client",
          "effective_state": "active",
          "excerpt": "Review every 30 days.",
          "expires_at": "2027-09-01T00:00:00Z",
          "id": "evv-0002",
          "is_current_version": true,
          "metadata": {
            "synthetic": true
          },
          "observed_at": "2026-09-01T00:00:00Z",
          "persisted_state": "active",
          "record_id": "evr-0001",
          "source_id": "demo-policy",
          "source_name": "Synthetic review policy",
          "source_type": "official",
          "source_uri": "https://policy.example/review",
          "stable_key": "review-interval",
          "state_reason": "new immutable version accepted",
          "state_source": "persisted_event",
          "title": "Synthetic review interval",
          "valid_from": "2026-09-01T00:00:00Z",
          "verification_state": "verified",
          "version_no": 2
        }
      ],
      "explanation": "Version 2 changes the interval from 90 to 30 days. The original source and decision remain in history, while both dependent items become invalidated. Resubmitting the old recommendation is blocked.",
      "key": "invalidated",
      "proposal": {
        "applied": false,
        "base_revision": "r1",
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": {
          "created_at": "2026-09-14T12:00:00Z",
          "decision": "approved",
          "human_confirmed": true,
          "id": "dec-0002",
          "rationale": "Synthetic reviewer-role test, not a real person's acceptance.",
          "reviewer": "SCRIPTED REVIEWER FIXTURE",
          "reviewer_role": "human_reviewer"
        },
        "document_key": "example-runbook",
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "prp-0001",
        "proposed_markdown": "Review the example control every 90 days.",
        "rationale": "Follow the synthetic v1 policy.",
        "state": "invalidated",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "evidence superseded by evv-0002",
        "title": "Add the review checkpoint"
      },
      "recommendation": {
        "confidence": 0.9,
        "created_at": "2026-09-14T12:00:00Z",
        "created_by": "mcp-client",
        "decision": {
          "created_at": "2026-09-14T12:00:00Z",
          "decision": "approved",
          "human_confirmed": true,
          "id": "dec-0001",
          "rationale": "Synthetic reviewer-role test, not a real person's acceptance.",
          "reviewer": "SCRIPTED REVIEWER FIXTURE",
          "reviewer_role": "human_reviewer"
        },
        "evidence_version_ids": [
          "evv-0001"
        ],
        "id": "rec-0001",
        "proposed_action": "Add a 90-day checkpoint to the example runbook.",
        "rationale": "The synthetic v1 policy specifies a 90-day interval.",
        "state": "invalidated",
        "state_at": "2026-09-14T12:00:00Z",
        "state_reason": "evidence superseded by evv-0002",
        "title": "Schedule a 90-day review"
      },
      "title": "A source change invalidates the approved work"
    }
  ],
  "title": "ChangeFront recorded execution"
}
