Reliability Java active any

Startup-critical configuration properties are validated

rel-java-004

Intent

Fail fast on missing or out-of-range configuration instead of discovering it at runtime.

Applicability

Applies to Spring Boot @ConfigurationProperties and other startup-bound configuration models.

What to inspect

Required fields, numeric bounds, nested validation, and startup validation hooks.

Pass criteria

Startup-critical configuration is bound to a validated model, including nested objects and numeric ranges.

Fail criteria

The diff introduces required or bounded configuration with no visible validation.

Do not flag

Truly optional settings with safe defaults.

Confidence guidance

HIGH when the missing validation is directly visible. MEDIUM when validation may be declared elsewhere. LOW when configuration ownership is partial.

Remediation

Add bean validation or equivalent startup validation to the configuration model.

Pass example

@Validated
record ClientProps(@NotBlank String url, @Min(1) int timeoutSeconds) {}

Fail example

record ClientProps(String url, int timeoutSeconds) {}

Sources

  • Spring Boot official documentation documentation