# Collision Consolidation

> A design rule that a filename already held by another file is first read as a sign that both files do the same job, and a variant is added only after the code shows that their jobs differ.

Record: `architecture:collision-consolidation`
Kind: principle
Layer: [Structural Core](https://banes-lab.com/records/layer/structural-core.md)
Severity: mandatory
Scope: folder, filename
Canonical: https://banes-lab.com/ontology#architecture-collision-consolidation

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [Manual Identity Migration](https://banes-lab.com/records/architecture/manual-identity-migration.md) and before [Mirrored Test Placement](https://banes-lab.com/records/architecture/mirrored-test-placement.md).

## Repair

- Refactored by: Compare Both Files, Merge One Job or Name the Facet That Differs
- Detected by: a variant whose sibling in the same folder shares its concern and one of its responsibilities
- Violated by: adding a variant to a colliding file without comparing its responsibilities with the file that holds the name
- Measured by: variants admitted without a consolidation verdict
- Enforced by: the duplicates verdict each conversion record carries, reviewed per file

## Requires

- [Variant Slot](https://banes-lab.com/records/lexicon/variant-slot.md)
- [One Concern Per File](https://banes-lab.com/records/architecture/one-concern-per-file.md)

## Reinforces

- [Single Source of Truth](https://banes-lab.com/records/architecture/single-source-of-truth.md)

## Enables

- [Placement Predictability](https://banes-lab.com/records/lexicon/placement-predictability.md)

## Conflicts with

- [Variant-Masked Duplicate](https://banes-lab.com/records/lexicon/variant-masked-duplicate.md)

## Severity

- [mandatory](https://banes-lab.com/records/vocabulary/severity-mandatory.md)

## Category

- [Taxonomy / Classification / Naming](https://banes-lab.com/records/architecture-category/taxonomy-classification-naming.md)

## Linked from

- [Schema / Canonical Data / Semantics](https://banes-lab.com/ontology/principles/architecture-category-schema-canonical-data-semantics.md)
- [Taxonomy / Classification / Naming](https://banes-lab.com/ontology/principles/architecture-category-taxonomy-classification-naming.md)
- [Taxonomy / Classification / Naming](https://banes-lab.com/ontology/lexicon/lexicon-category-taxonomy-classification-naming.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)
