O1.07.3Soft deletiondesignresearch

Disappearance from the interface is not backend deletion

Aliases: logical deletion · interface hiding · deletion flag

What it is

Soft deletion changes a record's visible or active state—often through a deletion flag, list filter, or disabled account—while the data remain stored. It can support undo and consistency but is not synonymous with erasure. Disappearance proves only that one read path no longer renders an object; administrative queries, analytics, exports, another user's cache, or other paths may still access it.

Why it happens

An interface reads a projection filtered by status and permission, not storage itself. Marking a record is faster and easier to reverse than clearing tables, indexes, and replicas, so systems often soft-delete first and clean asynchronously. If the first stage is labeled “permanently deleted,” appearance substitutes for backend fact. A missed filter can later resurrect content in search, notifications, or recovery.

Studying it

Black-box tests can record object identifiers and access paths before deletion, then retry through the source account, other accounts, public links, search, export, and notification history. White-box audits add database state, background jobs, and access logs. Outcomes include hiding latency, residual paths, hard-deletion completion, and resurrection. Refreshing the current page is weak evidence; testing should span cache expiry and backup restoration.

Where it stops holding

Soft deletion is not inherently defective. A short undo window, abuse quarantine, or transactional recovery can justify it when accurately named, excluded from unrelated use, and automatically advanced. Shared conversations may retain a “deleted” placeholder for coherence, but it need not expose original content. A user choosing “remove from my view” has also not requested global erasure, and the product should not claim otherwise.

Applying it

  • Model hiding, deactivation, undo waiting, scheduled purge, and irreversible completion as distinct states whose interface labels match backend semantics.
  • Immediately stop recommendation, analytics, indexing, and unnecessary administrative use after soft deletion, not merely the primary list rendering.
  • Distinguish “hide for me,” “withdraw for others,” and “delete account data,” previewing scope before confirmation.
  • Retest known identifiers through every reader, role, and cache, then exercise restoration; if content resurfaces or still affects a downstream decision, do not display permanent completion.

Related

  • Same group: O1.07.1 Deletion must cover backups and derived data · O1.07.2 Deletion scope and timing must be stated · O1.07.4 Erasure is an assertable legal right, not an optional feature · O1.07.5 Deletion requests must propagate to downstream recipients · O1.07.6 Public-interest and retention exceptions can justify refusal · O1.07.7 Completion needs verifiable evidence, not a verbal promise
  • Adjacent: O2.04 Privacy dashboard · O3.15 Device loss and remote response
  • Search terms: soft deletion · logical deletion · deletion state machine

Cards in the same group

Quick Actions

Share

Share this page

ios_share

https://hci.top/en/handbook/O1.07.3