技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
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.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
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.
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.
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
catch (e) {
logger.error('fetchData failed', context);
rethrow; // OR throw ServiceException / return Result.failure
}
| Stack | Forbidden grep pattern |
|---|---|
| Java/Spring | onErrorReturn( without prior log, switchIfEmpty(Mono.empty()) |
| NestJS | catch.*return null, empty catch blocks |
| Python | except.*pass, except.*return \[\] |
| Flutter | catch.*\{\s*\}, on Exception.*return null |
| Level | Meaning |
|---|---|
| CRITICAL | Silent failure — error occurs with no log and no user feedback |
| HIGH | No user feedback / unjustified fallback |
| MEDIUM | Missing context in log / overly broad catch with log |
## 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