{"id":"deletion-is-append-only-across-all-contexts","text":"Deletion never destroys data regardless of distribution level or system type: single-node soft deletes preserve structural invariants, distributed tombstones prevent resurrection, versioned storage appends delete markers, and finalized stream results are irrevocable — the entire data lifecycle is append-only from local state through distributed storage to stream processing.","truth_value":"IN","source":"","source_url":"","source_hash":"","justifications":[{"type":"SL","antecedents":["deletion-strategy-scales-with-distribution","append-only-semantics-span-storage-and-streaming"],"outlist":[],"label":"Deletion scales with distribution (depth-3, covering single/distributed) and append-only spans storage/streaming (depth-2) — combining shows append-only is the universal mutation model"}],"dependents":["deletion-is-doubly-preserved","no-operation-is-truly-reversible","state-is-monotonically-accumulative"],"metadata":{"last_reviewed":"2026-06-06T06:26:57","review_result":"pass"},"created_at":"","updated_at":"","reviewed_at":"","verified_at":"","retracted_at":"","explanation":{"steps":[{"node":"deletion-is-append-only-across-all-contexts","truth_value":"IN","reason":"SL justification valid","antecedents":["deletion-strategy-scales-with-distribution","append-only-semantics-span-storage-and-streaming"],"label":"Deletion scales with distribution (depth-3, covering single/distributed) and append-only spans storage/streaming (depth-2) — combining shows append-only is the universal mutation model"},{"node":"deletion-strategy-scales-with-distribution","truth_value":"IN","reason":"SL justification valid","antecedents":["soft-delete-is-dual-purpose","kv-anti-entropy-covers-writes-and-deletes"],"label":"Soft delete for structure preservation and tombstones for distributed convergence are complementary layers that compose"},{"node":"soft-delete-is-dual-purpose","truth_value":"IN","reason":"SL justification valid","antecedents":["soft-delete-preserves-structural-invariants","soft-delete-prevents-distributed-resurrection"],"label":"Both depth-1 soft-delete conclusions identify different motivations (structural invariants vs. resurrection prevention) for the same technique, revealing dual utility"},{"node":"soft-delete-preserves-structural-invariants","truth_value":"IN","reason":"SL justification valid","antecedents":["chat-soft-delete-preserves-sequence","autocomplete-delete-is-soft"],"label":"chat keeps deleted messages with `[deleted]` content to preserve sequence numbering; autocomplete zeroes frequency without removing trie nodes to preserve tree structure — both are single-node structural concerns distinct from distributed anti-resurrection"},{"node":"chat-soft-delete-preserves-sequence","truth_value":"IN","reason":"premise"},{"node":"autocomplete-delete-is-soft","truth_value":"IN","reason":"premise"},{"node":"soft-delete-prevents-distributed-resurrection","truth_value":"IN","reason":"SL justification valid","antecedents":["kv-store-deletes-use-tombstones","s3-delete-marker-hides-not-removes"],"label":"Both systems independently arrived at write-over-delete to prevent resurrection from unsynchronized replicas"},{"node":"kv-store-deletes-use-tombstones","truth_value":"IN","reason":"premise"},{"node":"s3-delete-marker-hides-not-removes","truth_value":"IN","reason":"premise"},{"node":"kv-anti-entropy-covers-writes-and-deletes","truth_value":"IN","reason":"SL justification valid","antecedents":["kv-read-path-is-self-healing","soft-delete-prevents-distributed-resurrection"],"label":"without read repair, write divergence persists; without tombstones, deletes get resurrected — both mechanisms are independently necessary for full convergence"},{"node":"kv-read-path-is-self-healing","truth_value":"IN","reason":"SL justification valid","antecedents":["kv-read-repair-on-get","kv-node-stores-sibling-versions"],"label":"Read repair + sibling detection make the read path an active consistency mechanism, not just a query"},{"node":"kv-read-repair-on-get","truth_value":"IN","reason":"premise"},{"node":"kv-node-stores-sibling-versions","truth_value":"IN","reason":"premise"},{"node":"append-only-semantics-span-storage-and-streaming","truth_value":"IN","reason":"SL justification valid","antecedents":["append-only-versioning-makes-restore-non-destructive","watermark-finalization-is-irreversible"],"label":"Storage and streaming independently converge on append-only/no-retraction semantics for the same underlying reason: preventing historical revision"},{"node":"append-only-versioning-makes-restore-non-destructive","truth_value":"IN","reason":"SL justification valid","antecedents":["s3-version-list-append-only","gdrive-restore-creates-new-version"],"label":"Append-only version lists make restore a forward operation, not a rollback"},{"node":"s3-version-list-append-only","truth_value":"IN","reason":"premise"},{"node":"gdrive-restore-creates-new-version","truth_value":"IN","reason":"premise"},{"node":"watermark-finalization-is-irreversible","truth_value":"IN","reason":"SL justification valid","antecedents":["watermark-drives-finalization","window-lifecycle-one-directional","no-window-merging-or-retraction"],"label":"Three properties compose into hard irreversibility: watermark-only trigger + one-way lifecycle + no retraction"},{"node":"watermark-drives-finalization","truth_value":"IN","reason":"premise"},{"node":"window-lifecycle-one-directional","truth_value":"IN","reason":"premise"},{"node":"no-window-merging-or-retraction","truth_value":"IN","reason":"premise"}]}}