Die Oberfläche ist lokalisiert; Skill-Beschreibungen und -Dokumente werden per KI automatisch in Ihre Sprache übersetzt. Code, Befehle, Pfade und Fachbegriffe bleiben im Original, maßgeblich ist das Dokument des Autors.
Skills entdecken
Daten und Forschung · SKILL.md

silent-failure-hunter

silent-failure-hunter

Audits error handling for swallowed exceptions, empty catch blocks, unjustified fallbacks, and mock data returns on failure. Use after implementing features with API calls, database operations, or any I/O that can fail. Enforces code-standards.md "No Silent Failures" rule.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill-Dokumentation

GitHub

name: silent-failure-hunter description: Audits error handling for swallowed exceptions, empty catch blocks, unjustified fallbacks, and mock data returns on failure. Use after implementing features with API calls, database operations, or any I/O that can fail. Enforces code-standards.md "No Silent Failures" rule. allowed-tools: Read, Grep, Glob, Bash agent: silent-failure-hunter context: fork metadata: triggers: error handling, catch block, silent failure, swallowed exception, fallback, empty catch, return null on error, review error handling related-skills: error-detective, security-reviewer, code-reviewer domain: quality role: specialist scope: review output-format: report last-reviewed: "2026-03-16"

Iron Law: An empty catch block is not error handling — it is a lie to the operator. Every catch must log AND rethrow or return an error state.

Silent Failure Hunter

Enforces the "No Silent Failures" rule from code-standards.md — every catch block must log the error AND either rethrow or return an explicit error state. Finds swallowed exceptions, fallbacks that hide failures, and mock data returned on error.

When to Use

  • After implementing features with API calls or database operations
  • Reviewing any code that has try/catch blocks
  • Before merging code that touches external service integrations
  • Proactively after implementing I/O-heavy features

Forbidden Patterns (all languages)

catch (e) { return []; }           // Silent empty return
catch (e) { return MockData.x; }   // Fake data on failure
catch (e) { /* nothing */ }        // Swallowed exception
catch (e) { log.error(e); }        // Log only, no rethrow

Required Pattern

catch (e) {
  logger.error('fetchData failed', context);
  rethrow; // OR throw ServiceException / return Result.failure
}

Stack-Specific Patterns to Grep

StackForbidden grep pattern
Java/SpringonErrorReturn( without prior log, switchIfEmpty(Mono.empty())
NestJScatch.*return null, empty catch blocks
Pythonexcept.*pass, except.*return \[\]
Fluttercatch.*\{\s*\}, on Exception.*return null

Severity Levels

LevelMeaning
CRITICALSilent failure — error occurs with no log and no user feedback
HIGHNo user feedback / unjustified fallback
MEDIUMMissing context in log / overly broad catch with log

Output Format

## Silent Failure Audit: [scope]

### CRITICAL
[file:line] — [description of silent failure]
Hidden errors: [types that could be suppressed]
Fix: [corrected code]

### Summary
- Issues: N (critical: X, high: Y, medium: Z)
- Verdict: PASS / FAIL
Gespeicherte Skills