ArchitectureAnalyzer diagnostics
The analyzer currently defines AARC001 through AARC008 on the main branch. Optional diagnostics activate only when the related contract sections or operational options are configured.
| ID | Purpose | Default |
|---|---|---|
| AARC001 | Architecture contract could not be loaded | Error |
| AARC002 | Forbidden architecture dependency direction | Error |
| AARC003 | Forbidden API usage in an architecture layer | Error |
| AARC004 | Missing required architecture layer declaration | Error |
| AARC005 | Multiple distinct architecture layer declarations | Error |
| AARC006 | Layer declaration contradicts namespace classification | Warning |
| AARC007 | Interop declaration outside an allowed layer | Error |
| AARC008 | Invalid architecture analyzer configuration value | Warning |
Severity and operational settings
Severity is configured through standard Roslyn .editorconfig keys. ArchitectureAnalyzer also exposes architecture_analyzer.* properties for operational behavior. The architecture contract remains the source of truth for project-specific policy.
[*.cs]
dotnet_diagnostic.AARC002.severity = error
Complete reference
See docs/diagnostics.md for triggering examples, exact rule semantics, suppression information, and the current contract surface.