All rules

Async Void Abuse

Disabled by default (severity None). Public async void detection superseded by GCI0016. Re-enable for the stricter public-only filter.

Why this rule exists

async void prevents awaiting and crashes on unhandled exceptions outside event handlers.

Code example

Triggers the rule
+ public async void SaveUserAsync(User user) { await _repo.SaveAsync(user); }
Passes the rule
+ public async Task SaveUserAsync(User user) { await _repo.SaveAsync(user); }

Configuration

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

{
  "rules": {
    "GCI0054": { "enabled": true, "severity": "Info" }
  }
}

See Configuration for the full schema.

Related rules

Implemented in src/GauntletCI.Core/Rules/Implementations/GCI0054_*.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.