A layered architecture documented in a diagram from 2019 and enforced by nothing, with 88 violations by the time anybody checked.
layers:
- name: Domain
collectors: [{ type: directory, value: src/Domain/.* }]
- name: Application
collectors: [{ type: directory, value: src/Application/.* }]
- name: Infrastructure
collectors: [{ type: directory, value: src/Infrastructure/.* }]
ruleset:
Domain: ~ # depends on nothing
Application: [Domain]
Infrastructure: [Domain, Application]
The baseline is what makes this adoptable: 88 violations recorded, the build failing only on new ones, and a number that goes down. Domain depending on nothing is the rule that caught the most — an entity importing a framework attribute, twelve times — and fixing those was mostly moving the mapping into the infrastructure layer where it belonged anyway.