forgiveness-undo-and-soft-delete

Design reversibility patterns for destructive UX actions with undo and recovery.

6|3|Updated May 3, 2026
One-click install
npx skills add https://github.com/HDeibler/universal-design-principles --skill forgiveness-undo-and-soft-delete
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: forgiveness-undo-and-soft-delete
Source: https://github.com/HDeibler/universal-design-principles/tree/main/plugins/interaction-and-control-principles/skills/forgiveness-undo-and-soft-delete
Command: npx skills add https://github.com/HDeibler/universal-design-principles --skill forgiveness-undo-and-soft-delete

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill helps you design forgiveness through reversibility so users can undo or recover from actions they regret, especially when those actions feel destructive.

Core Features & Use Cases

  • Reversibility patterns selection: choose between synchronous undo, toast-with-undo, soft delete with recovery, version history, and undo-send based on action type and risk.
  • Implementation-ready guidance: provides concrete design and engineering patterns (undo stacks, optimistic UI, recovery windows, and snapshot/history approaches).
  • Operationalizing forgiveness: covers recovery discoverability, appropriate recovery window lengths, and anti-patterns that cause confusion or irrecoverable mistakes.
  • Use Case Examples: use toast-with-undo for one-off archive/delete actions, soft delete for account/file recovery (e.g., trash/archive views), and version history for document editing where users need to revert any prior state.

Quick Start

Use the skill when specifying how your app should handle undo and recovery for an action like deleting or archiving items, including the recovery window and the UI affordances users will discover.

Frequently Asked Questions about forgiveness-undo-and-soft-delete

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is the best way to design an undo flow for destructive actions like deleting or archiving?

Designing an undo flow for destructive actions involves mapping action types to a reversibility approach like toast-with-undo or soft delete, then defining appropriate recovery windows and discoverability affordances for user recovery.

How does a soft delete with recovery pattern work in user interaction design?

A soft delete with recovery pattern works by marking data as deleted without permanent removal, allowing users to recover items through dedicated trash or archive views within a specified recovery window before final commit.

When should I use toast notifications with undo for list operations?

Use toast notifications with undo for one-off list operations like archive or delete actions, providing a brief recovery window that allows users to cancel the destructive commit directly from the interaction feedback.

How do I implement version history for document editing and config rollback?

Implement version history for document editing and config rollback by utilizing snapshot approaches and history tracking, allowing users to revert to any prior state and safely recover from unwanted modifications.

What are common anti-patterns when building undo stacks and optimistic updates?

Common anti-patterns when building undo stacks and optimistic updates include creating confusing discoverability affordances, setting inappropriate recovery window lengths, and failing to maintain recoverable data states during user recovery.