Definition
A context collision is when one name points at several different things inside a project — `admin` as a role, as a module and as a person; `notification` as an admin alert and as a user alert — so that any instruction using that word ("fix the notifications") forces the listener to guess which one is meant. The code itself is fine: namespaces keep the referents apart. What breaks is the instruction layer, where a human briefs another human or, increasingly, an AI agent that then edits the wrong file. It has a twin failure that costs more because nothing visibly clashes: scattered synonyms, where several names point at one thing (`popup`, `modal`, `overlay`) and the reader assumes they are three separate concepts, then builds a fourth. Both are cured the same way — a name registry that records the canonical meaning of each term, the implicit qualifier of any name left unqualified, and the synonyms that are banned — plus a rule for qualifying new names before they enter the codebase rather than migrating them afterwards.
Relationships
types-of / more specific
—
Concepts linked to this one by a real relationship in the glossary. Hover over each one to see why it's related.