{"id":"visibility-requires-three-conditions","text":"A version is visible to a transaction only if its creator committed, was not in the reader's `active_at_start` set, and has a lower `tx_id` — all three must hold","truth_value":"IN","source":"entries/2026/05/29/topic-mvcc-snapshot-isolation.md","source_url":"","source_hash":"","justifications":[],"dependents":[],"metadata":{"example":"created_visible = (\n    created_by == tx.tx_id or                    # own writes\n    (created_by in self._committed and           # committed\n     created_by not in tx.active_at_start and    # not in-flight at snapshot\n     created_by < tx.tx_id))                     # started before us"},"explanation":{"steps":[{"node":"visibility-requires-three-conditions","truth_value":"IN","reason":"premise"}]}}