Architecture Specs
Architecture specifications enforce structural constraints in the codebase. These rules ensure the system remains maintainable as it grows.
Specs in this category
| ID | Spec | Enforcement | Severity |
|---|---|---|---|
| ARCH-001 | Layering: Controller → Service → Repository | ArchUnit, SonarQube | critical |
| ARCH-002 | Dependency Inversion at Service Boundary | ArchUnit | major |
| ARCH-003 | Package Structure by Feature | ArchUnit | major |
How These Are Enforced
Architecture specs are primarily enforced via ArchUnit tests in src/test/java/.../ArchitectureTest.java. SonarQube provides secondary checks for code smells that indicate architectural violations.