{
  "id": "TEACHING-ERASURE-1",
  "revision": 1,
  "status": "assumed approved inside this fictional teaching scenario",
  "authority": "fictional product owner acting on an already resolved privacy decision",
  "legal_status": "Engineering choices, not GDPR text or a legal applicability decision",
  "precondition": "Identity, entitlement, applicable exceptions and destination scope have already been resolved outside this fixture",
  "target_subject": "synthetic-subject-001",
  "control_subject": "synthetic-subject-002",
  "destinations": ["profiles", "analytics"],
  "requirements": {
    "ERASE-1": "Report complete only after deletion has succeeded and absence has been observed in both declared live stores.",
    "ERASE-2": "A destination failure leaves the request unresolved with that destination named.",
    "ERASE-3": "Retrying the same request is safe and preserves unrelated subject rows.",
    "ERASE-4": "Reconciliation after a controlled restore reopens the request if a target row returns. Reapply deletion before treating the live stores as complete."
  },
  "excluded": ["legal classification", "request authentication", "deadline handling", "real connectors", "durable job queue", "concurrent writers", "all downstream recipients", "physical media erasure", "backup deletion", "production restore authorization"]
}
