From brutal-critic
Structured code evaluation framework used by the brutal-critic-code agent. Defines the 1-10 rating scale with 8/10 minimum pass threshold, 9 evaluation categories (correctness, error handling, architecture, readability, security, performance, testing, linting & formatting, API design) with pass/fail criteria, the report template, and scoring rules including weakest-link overall scoring and CRITICAL issue caps.
npx claudepluginhub bartekck/bartek-marketplace --plugin brutal-criticThis skill uses the workspace's default tool permissions.
| Score | Meaning |
Applies Acme Corporation brand guidelines including colors, fonts, layouts, and messaging to generated PowerPoint, Excel, and PDF documents.
Guides strict Test-Driven Development (TDD): write failing tests first for features, bugfixes, refactors before any production code. Enforces red-green-refactor cycle.
Share bugs, ideas, or general feedback.
| Score | Meaning |
|---|---|
| 10 | Exceptional — textbook quality, could be used as a teaching example |
| 9 | Excellent — minor stylistic nitpicks only, production-ready with confidence |
| 8 | Good — meets professional standards, no significant issues (MINIMUM PASS) |
| 7 | Acceptable — works but has notable weaknesses that should be addressed |
| 6 | Below average — multiple issues that would cause problems in production |
| 5 | Poor — fundamental problems that need rework |
| 4 | Bad — significant design or implementation flaws |
| 3 | Very bad — barely functional, major rework required |
| 2 | Terrible — more wrong than right |
| 1 | Broken — does not work or is dangerous |
Minimum PASS threshold: 8/10. Anything below 8 is a FAIL.
8+ requires: All logic paths produce correct results. Edge cases handled. No off-by-one errors. No silent data corruption. Contracts between functions honored. Below 8 signals: Missing edge cases, incorrect boundary conditions, logic errors under specific inputs, race conditions, incorrect state transitions.
8+ requires: All failure modes identified and handled. Errors propagated meaningfully (not swallowed). User-facing errors are clear. No unhandled promise rejections or uncaught exceptions. Retry/fallback strategies where appropriate. Below 8 signals: Bare catch blocks, swallowed errors, generic error messages, missing validation at system boundaries, no distinction between recoverable and fatal errors.
8+ requires: Clear separation of concerns. Appropriate abstractions (not too many, not too few). Dependencies flow in one direction. Easy to extend without modifying existing code. No god objects or god functions. Below 8 signals: Circular dependencies, leaky abstractions, mixed responsibilities, over-engineering for current requirements, tight coupling between unrelated modules.
8+ requires: Code reads like well-written prose. Naming is precise and consistent. Functions do one thing. Files are focused. A new team member can understand the flow without a walkthrough. Below 8 signals: Cryptic names, functions over 50 lines, deeply nested conditionals, magic numbers/strings, inconsistent conventions within the same codebase.
8+ requires: Input validated at all system boundaries. No injection vulnerabilities (SQL, XSS, command). Secrets not hardcoded. Authentication/authorization checks in place. Principle of least privilege followed. Below 8 signals: Unsanitized user input, hardcoded credentials, missing auth checks, overly permissive CORS/permissions, sensitive data in logs or error messages.
8+ requires: No unnecessary O(n^2) or worse algorithms. No N+1 queries. Resources cleaned up (connections, file handles, listeners). No blocking operations on hot paths. Appropriate caching where data is reused. Below 8 signals: Unnecessary loops within loops, unbounded memory growth, missing pagination, synchronous I/O on main thread, redundant computations, missing indexes on queried fields.
8+ requires: Critical paths covered by tests. Tests are deterministic and fast. Test names describe behavior, not implementation. Edge cases tested. Mocks used appropriately (not excessively). Below 8 signals: No tests, flaky tests, tests that test implementation details, missing coverage of error paths, tests that always pass, snapshot tests without assertion context.
8+ requires: Consistent code style throughout. Formatting follows project/language conventions (indentation, line length, bracket placement). Import ordering is logical and consistent. No linter warnings or suppressions without justification. Naming conventions followed uniformly (camelCase, snake_case, etc. per language standard). Below 8 signals: Mixed indentation (tabs vs spaces), inconsistent naming conventions within the same file, unorganized imports, unjustified linter suppressions (eslint-disable, noqa), inconsistent bracket/brace style, trailing whitespace, missing newlines at end of file, inconsistent string quote style.
8+ requires: Consistent naming conventions. Predictable behavior across endpoints/methods. Clear input/output contracts. Versioning strategy in place. Errors returned in a consistent format. Below 8 signals: Inconsistent naming, surprising side effects, missing or inconsistent error formats, breaking changes without versioning, ambiguous parameter names.
## Code Quality Evaluation Report
### Scores
| Category | Score | Status |
|----------|-------|--------|
| Correctness | X/10 | PASS/FAIL |
| Error Handling | X/10 | PASS/FAIL |
| Architecture & Design | X/10 | PASS/FAIL |
| Readability & Maintainability | X/10 | PASS/FAIL |
| Security | X/10 | PASS/FAIL |
| Performance | X/10 | PASS/FAIL |
| Testing | X/10 | PASS/FAIL |
| Linting & Formatting | X/10 | PASS/FAIL |
| API Design | X/10 | PASS/FAIL/N/A |
| **Overall** | **X/10** | **PASS/FAIL** |
### Issues
#### CRITICAL
- **[Category]** `file:line` — Problem description
- Best practice: [what should be done, with reference]
- Required fix: [specific code change needed]
#### MAJOR
- **[Category]** `file:line` — Problem description
- Best practice: [what should be done, with reference]
- Required fix: [specific code change needed]
#### MINOR
- **[Category]** `file:line` — Problem description
- Best practice: [what should be done, with reference]
- Suggested fix: [specific code change suggested]
### References
1. [Source title](URL) — what it was used for
2. [Source title](URL) — what it was used for
3. [Source title](URL) — what it was used for
### What Was Done Right
- [Genuine positive observation with specifics]
- [Another genuine positive observation]
### Verdict
**PASS/FAIL** — [1-2 sentence summary justifying the overall score]
calculatePremium, validateClaim)" is useful.