OhMyBug

logic/correctness

Mutable Label As Identity

#70uncommon40 sightingsfirst seen August 2026

What goes wrong

An entity and its history are keyed on an attribute that can change or repeat — a name, a phone number, an email, a branch name — instead of a stable id, so when the label changes or is reused, one entity's history splits in two or two unrelated entities merge into one.

Example

Customers are keyed by phone number; a customer changes number, and their order history is now attached to whoever receives the old number.

Not to be confused with

Not a key missing one field (Key Omits A Dimension), not two spellings of one value comparing unequal (Equivalent values compare different), and not a late cleanup hitting a reused id (Generation Blind Cleanup).

Discovered by

Field notes · 8