All rules

Edge Case Handling

Detects potential null dereferences and missing validation in added code.

Why this rule exists

Most production NullReferenceExceptions come from added code that assumes non-null inputs without guarding for them. The cost of one guard clause is a few characters; the cost of a missing one is a 2 a.m. alert.

Code example

Triggers the rule
+ public string FormatName(User user) => user.FirstName + " " + user.LastName;
Passes the rule
+ public string FormatName(User user)
+ {
+     ArgumentNullException.ThrowIfNull(user);
+     return $"{user.FirstName} {user.LastName}";
+ }

Configuration

Disable or adjust the severity of this rule in .gauntletci.json:

{
  "rules": {
    "GCI0006": { "enabled": true, "severity": "Warn" }
  }
}

See Configuration for the full schema.

Related rules

Discussed in

Real-world evidence

Implemented in src/GauntletCI.Core/Rules/Implementations/GCI0006_*.cs.

About the author

Eric Cogen -- Founder, GauntletCI

Twenty years as a senior technical consultant building and modernizing enterprise platforms across .NET, AWS, serverless, microservices, and AI-driven systems.