{"id":"vector-clock-immutability","text":"`VectorClock` is immutable: `increment`, `merge`, and `prune` all return new instances and never modify `_clock` in place.","truth_value":"IN","source":"entries/2026/05/29/vector-clocks-vector_clock.md","source_url":"","source_hash":"","justifications":[],"dependents":[],"metadata":{"example":"def increment(self, node_id):\n    new = dict(self._clock)\n    new[node_id] = new.get(node_id, 0) + 1\n    return VectorClock(new)  # returns new, never mutates"},"explanation":{"steps":[{"node":"vector-clock-immutability","truth_value":"IN","reason":"premise"}]}}