Skip to content
Critiq Docs

Search docs

Search documentation pages and rules

quality.architecture

Keep function abstraction levels consistent

Functions that mix transport, persistence, validation, and domain logic are hard to change safely.

#Metadata

Rule ID
ts.quality.no-mixed-abstraction-level
Severity
medium
Confidence
0.8
Languages
javascript, typescript
Presets
strict
Stability
stable
Applies to
file
Tags
architecture, quality, rules-catalog

#Why it matters

Mixed abstraction creates hidden coupling and complicates testing and review.

#Remediation

Separate transport, validation, persistence, and domain logic into dedicated functions or services.

#Repository path

The generated metadata points to critiq-rules/libs/rules/catalog/rules/typescript/ts.quality.no-mixed-abstraction-level.rule.yaml.