{
  "schema": "vedokrok.public-item.v1",
  "release_id": "MHC-RPUB-20260920-75ad787a",
  "url": "/knowledge/reverse-the-business-effect-without-restoring-stale-history",
  "id": "MHC-D-RESEARCH-0978",
  "version": "0.1.0",
  "title": "Reverse the business effect without restoring stale history",
  "summary": "Undo is a business decision when other people have moved on.",
  "kind": "question",
  "body": "Plan compensation around the effect that must be corrected. Restoring an old snapshot can erase concurrent changes. A compensating action may therefore differ from the original action in reverse, and some consequences require manual resolution rather than a pretend rollback.",
  "limits": [
    "Some actions cannot be fully reversed. Compensation must respect domain rules, audit history and authorization; never test it on live transactions casually."
  ],
  "topics": [
    "work-01-reliable-changes"
  ],
  "intents": [],
  "source_ids": [
    "RS-3F83EE739EFB9029"
  ],
  "evidence": [
    {
      "claim": "A compensating transaction reverses business effects while accounting for concurrent work rather than simply restoring an old snapshot.",
      "source_id": "RS-3F83EE739EFB9029",
      "role": "supports",
      "note": "Not every effect is reversible; the appropriate compensation and its approval are domain-specific.",
      "locator": "Solution"
    }
  ],
  "use_when": [
    "A workflow partly completed and a simple rollback could overwrite legitimate later work."
  ],
  "avoid_when": [
    "Some actions cannot be fully reversed. Compensation must respect domain rules, audit history and authorization; never test it on live transactions casually."
  ],
  "example": "A partially completed reservation is cancelled through its supported cancellation process; unrelated customer updates are not replaced with an old database snapshot.",
  "check": "The recovery plan names the intended post-recovery business state, not merely an old technical state.",
  "question": "Which completed effect needs correction, and which later changes must remain? · Who can authorize the compensating action? · What evidence proves it completed, and what happens if compensation also fails?",
  "sources": [
    {
      "id": "RS-3F83EE739EFB9029",
      "title": "Compensating Transaction pattern",
      "url": "https://learn.microsoft.com/en-us/azure/architecture/patterns/compensating-transaction"
    }
  ],
  "relations": [
    {
      "from": "MHC-D-RESEARCH-0978",
      "to": "MHC-D-RESEARCH-0979",
      "type": "useful_with",
      "url": "/knowledge/give-the-canary-a-fair-comparison-and-a-real-stopping-rule"
    }
  ],
  "collections": [
    {
      "id": "RC-8F91DD82E91EA56B",
      "title": "Find the failure without creating a second incident",
      "url": "/collections/find-the-failure-without-creating-a-second-incident"
    }
  ]
}
