Skip to content
Critiq Docs

Search docs

Search documentation pages and rules

quality.design

Avoid primitive obsession in domain model APIs

Domain-facing APIs with many primitive parameters should use richer value objects.

#Metadata

Rule ID
ts.quality.no-primitive-obsession-in-domain-model
Severity
low
Confidence
0.8
Languages
javascript, typescript
Presets
strict
Stability
stable
Applies to
file
Tags
design, maintainability, quality, rules-catalog

#Why it matters

Grouping related primitives into value types improves readability and reduces argument-order bugs.

#Remediation

Introduce a value object or typed input model for related arguments.

#Repository path

The generated metadata points to critiq-rules/libs/rules/catalog/rules/typescript/ts.quality.no-primitive-obsession-in-domain-model.rule.yaml.