Internal consistency across a codebase — redundant or conflicting libraries, dual ORMs, dual auth, dual HTTP clients, split state systems, mixed module systems.
The internal-consistency layer: does the codebase use one way to do one job?
In scope. Two libraries doing the same thing in one codebase (dual ORM, dual auth, dual HTTP client, dual form library, dual validation, dual date library, dual state manager, dual component library, dual icon library, dual test runner). Also: mixed CSS approaches without a dominant one, mixed module systems, conflicting router abstractions, dual routing conventions (App Router + Pages Router).
Not in scope. Missing dependencies that break resolution — that's reference-integrity. Third-party dependency vulnerabilities or provenance — that's supply-chain. Sloppy usage of a single correctly-chosen tool — that's code-quality.
Distinct because. The defect is the system uses two ways to do one thing. Each individual piece may be correct — the plurality is the defect. A pattern about "codebase contains both Prisma and Drizzle queries" is dependency-coherence; a pattern about "Prisma query uses findMany without take" is cost-efficiency or code-quality.
Conceptual sub-structure. Tooling plurality (dual libraries by concern), convention drift (naming / formatting / module conventions varying across same codebase), architectural redundancy (multiple patterns solving the same architectural problem).
Note on the name. Formerly stack-coherence — renamed because "stack" carries 2015-era framework-stack connotations and reads narrowly in a world of WASM / edge / agent composition.