import { ARCH_FACE } from "@govlab/constants"; import type { DeclaredAbsence } from "#types/coverage.types"; import { absentRecords } from "@banes-lab/web/core/factories/evidence.factory.ts"; const PRACTICE: DeclaredAbsence["reason"] = "a-practice-not-a-construct"; const OUTSIDE: DeclaredAbsence["reason"] = "outside-the-web-member"; export const ARCHITECTURE_ABSENT: readonly DeclaredAbsence[] = [ ...absentRecords(OUTSIDE, ARCH_FACE, ["code-as-data", "retry-pattern", "type-safety", "versioning"]), ...absentRecords(PRACTICE, ARCH_FACE, [ "abstraction", "architecture-review", "auditability", "autonomy", "backward-compatibility", "bounded-context", "canonical-model", "causal-dependency", "causality", "chaos-engineering", "collision-consolidation", "compliance", "composability", "composition-over-inheritance", "concurrency", "consistency", "context-mapping", "convention-over-configuration", "correctness", "decentralization", "defensive-programming", "design-by-contract", "determinism", "duplicate-code", "encapsulation", "environment-parity", "error-handling", "evolutionary-architecture", "explainability", "explicit-boundaries", "explicit-contracts", "fail-fast", "fail-safe", "fail-secure", "formal-verification", "gap-analysis", "graceful-degradation", "happens-before-relationship", "high-cohesion", "homoiconicity", "immutability", "impact-analysis", "independence", "information-hiding", "interface-segregation", "inversion-of-control", "layer-spine-precedence", "least-privilege", "liskov-substitution", "low-coupling", "manual-identity-migration", "model-safety", "modularity", "narrowest-concern", "normalization", "observability", "one-concern-per-file", "optimization", "package-by-feature", "platform-independence", "portability", "predictability", "prompt-engineering", "property-based-testing", "pure-functions", "referential-transparency", "registry-held-order", "repeatability", "replaceability", "reproducibility", "resilience", "reusability", "sanctioned-generic-subject", "scalability", "secure-by-default", "self-describing-structures", "semantic-contracts", "separation-of-concerns", "single-responsibility", "specification-based-testing", "standardization", "state-isolation", "statelessness", "testability", "throughput", "traceability", "transaction-boundary", "ubiquitous-language", "verification", ]), ];