{
  "evidence_kind": "SYNTHETIC",
  "content_id": "lesson-cache-demo",
  "schema_version": "1.0",
  "canonical": {
    "revision_id": "rev-17",
    "digest": "sha256:base-rev17",
    "nodes": {
      "node-expl-01": {
        "node_type": "explanation",
        "semantic_key": "cache-invalidation-explanation",
        "body": "Old explanation bound to source snapshot src-2026-08-01",
        "human_edit": false,
        "digest": "sha256:node-expl-old"
      },
      "node-assess-01": {
        "node_type": "assessment",
        "semantic_key": "cache-invalidation-check",
        "body": "Explain why stale cache data can survive a write.",
        "human_edit": true,
        "digest": "sha256:node-assess"
      },
      "node-owner-01": {
        "node_type": "owner_note",
        "semantic_key": "owner-field-note",
        "body": "Keep the production incident wording unchanged.",
        "human_edit": true,
        "digest": "sha256:node-owner"
      },
      "node-diagram-01": {
        "node_type": "diagram",
        "semantic_key": "manual-cache-diagram",
        "body": "Manual diagram specification.",
        "human_edit": true,
        "digest": "sha256:node-diagram"
      }
    }
  },
  "source_snapshot": null,
  "evidence_snapshot": {
    "ref": "ev-2026-09-13",
    "digest": "sha256:evidence-snapshot-0913"
  },
  "request": {
    "id": "regen-001",
    "target_node_ids": [
      "node-expl-01"
    ],
    "protected_node_ids": [
      "node-assess-01",
      "node-owner-01",
      "node-diagram-01"
    ],
    "generation_policy_version": "gp-3"
  },
  "dependency_graph": {
    "ref": "dep-graph-17",
    "edges": [
      {
        "from": "node-expl-01",
        "to": "derived-fa-expl-01",
        "kind": "translation"
      },
      {
        "from": "node-expl-01",
        "to": "derived-slide-03",
        "kind": "slide"
      }
    ]
  },
  "candidate": {
    "revision_id": "cand-18",
    "generated_from_revision_id": "rev-17",
    "base_digest": "sha256:base-rev17",
    "source_snapshot_ref": null,
    "evidence_snapshot_ref": "ev-2026-09-13",
    "generator_ref": "model-regenerator@policy-gp-3",
    "provenance_activity_ref": "prov-activity-regen-001",
    "changed_node_ids": [
      "node-expl-01"
    ],
    "node_snapshots": {
      "node-expl-01": {
        "node_type": "explanation",
        "semantic_key": "cache-invalidation-explanation",
        "digest": "sha256:node-expl-new"
      }
    },
    "protected_digest_map": {
      "node-assess-01": "sha256:node-assess",
      "node-owner-01": "sha256:node-owner",
      "node-diagram-01": "sha256:node-diagram"
    },
    "patch_ref": "patch-regen-001.json",
    "patch": [
      {
        "op": "test",
        "path": "/canonical/revision_id",
        "value": "rev-17"
      },
      {
        "op": "test",
        "path": "/canonical/digest",
        "value": "sha256:base-rev17"
      },
      {
        "op": "replace",
        "path": "/canonical/nodes/node-expl-01/body",
        "value": "Updated explanation bound to current source snapshot."
      }
    ]
  },
  "diff": {
    "structural_validation_state": "PASS",
    "semantic_diff_ref": "semantic-diff-001",
    "claim_diff_state": "CHANGED_REVIEW_REQUIRED",
    "source_diff_state": "EXPECTED_SOURCE_UPDATE",
    "localization_impact_state": "REBUILD_REQUIRED",
    "assessment_impact_state": "UNCHANGED",
    "human_edit_preservation_state": "PASS",
    "affected_derived_artifacts": [
      "derived-fa-expl-01",
      "derived-slide-03"
    ]
  },
  "review": {
    "state": "REVIEW_REQUIRED",
    "consequential": true
  },
  "promotion": {
    "state": "HOLD_PENDING_REVIEW",
    "rollback_ref": "rev-17",
    "audit_event_id": "audit-missing-001"
  }
}
