{"id":"cdc-event-semantics-depend-on-reconstruction-heuristics","text":"CDC event semantics are determined by reconstruction heuristics rather than explicit markers: insert vs update is distinguished by checking whether old_value is None, tombstones are reported as None values indistinguishable from missing data in conflict records, and snapshots use a sentinel sequence number (-1) to distinguish bootstrapped state from real events.","truth_value":"IN","source":"","source_url":"","source_hash":"","justifications":[{"type":"SL","antecedents":["cdc-determines-insert-vs-update-by-old-value","tombstone-reported-as-none-in-conflict","cdc-snapshot-uses-sentinel-sequence-number"],"outlist":[],"label":"Event type, deletion state, and bootstrap origin are all inferred from value-level conventions"}],"dependents":["cdc-backbone-both-heuristic-and-insufficient"],"metadata":{"last_reviewed":"2026-05-30T09:01:17","review_result":"pass"},"created_at":"","updated_at":"","reviewed_at":"","verified_at":"","retracted_at":"","explanation":{"steps":[{"node":"cdc-event-semantics-depend-on-reconstruction-heuristics","truth_value":"IN","reason":"SL justification valid","antecedents":["cdc-determines-insert-vs-update-by-old-value","tombstone-reported-as-none-in-conflict","cdc-snapshot-uses-sentinel-sequence-number"],"label":"Event type, deletion state, and bootstrap origin are all inferred from value-level conventions"},{"node":"cdc-determines-insert-vs-update-by-old-value","truth_value":"IN","reason":"premise"},{"node":"tombstone-reported-as-none-in-conflict","truth_value":"IN","reason":"premise"},{"node":"cdc-snapshot-uses-sentinel-sequence-number","truth_value":"IN","reason":"premise"}]}}