claude-code-plugin-ref…
Explain plugin, skill, command, agent, and hook mechanics used here. Use when authoring or debugging plugins. Do not use for ops;…
Evaluates test suites for coverage gaps, TDD/BDD compliance, and anti-patterns. Use when auditing test quality or before a major release.
Claude Code
$ npx -y skills add athola/claude-night-market --skill test-review --agent claude-code
Codex
$ npx skills add athola/claude-night-market --skill test-review -a codex -y
Cursor
$ npx skills add athola/claude-night-market --skill test-review -a cursor -y
Gemini CLI
$ npx skills add athola/claude-night-market --skill test-review -a gemini-cli -y
GitHub Copilot
$ npx skills add athola/claude-night-market --skill test-review -a github-copilot -y
OpenCode
$ npx skills add athola/claude-night-market --skill test-review -a opencode -y
Windsurf
$ npx skills add athola/claude-night-market --skill test-review -a windsurf -y
name: test-review description: Evaluates test suites for coverage gaps, TDD/BDD compliance, and anti-patterns. Use when auditing test quality or before a major release. alwaysApply: false category: testing tags: - testing - tdd - bdd - coverage - quality - fixtures tools: [] usage_patterns: - test-audit - coverage-analysis - quality-improvement - gap-remediation complexity: intermediate estimated_tokens: 200 progressive_loading: true dependencies: - imbue:proof-of-work - imbue:review-core - imbue:structured-output modules: - modules/framework-detection.md - modules/coverage-analysis.md - modules/scenario-quality.md - modules/remediation-planning.md - modules/content-assertion-quality.md
Evaluate and improve test suites with TDD/BDD rigor.
/test-review
**Verification:** Run `pytest -v` to verify tests pass.
1. `test-review:languages-detected` 2. `test-review:coverage-inventoried` 3. `test-review:scenario-quality` 4. `test-review:invariant-preservation` 5. `test-review:gap-remediation` 6. `test-review:evidence-logged` 7. `test-review:findings-verified`
Load modules as needed based on review depth:
Identify testing frameworks and version constraints. → **See**: `modules/framework-detection.md`
Quick check:
find . -maxdepth 2 -name "Cargo.toml" -o -name "pyproject.toml" -o -name "package.json" -o -name "go.mod"
**Verification:** Run the command with `--help` flag to verify availability.
Run coverage tools and identify gaps. → **See**: `modules/coverage-analysis.md`
Quick check:
git diff --name-only | rg 'tests|spec|feature'
**Verification:** Run `pytest -v` to verify tests pass.
Evaluate test quality using BDD patterns and assertion checks. → **See**: `modules/scenario-quality.md`
Focus on:
Create concrete improvement plan with owners and dates. → **See**: `modules/remediation-planning.md`
Record executed commands, outputs, and recommendations. → **See**: `imbue:proof-of-work`
Tests encode design invariants as well as verifying behavior. A test that asserts "module A never imports from module B" encodes a layer boundary. A test that asserts "this function is pure" encodes a concurrency model. These tests are load-bearing in ways that coverage metrics cannot capture.
**During review, check:**
1. **Were invariant-encoding tests removed or weakened?** A test that enforced an architectural boundary, data structure constraint, or API contract should not be deleted without naming the invariant being abandoned and escalating to human judgment.
2. **Were test expectations changed to match a broken implementation?** If an assertion value changed, ask: did the *requirement* change, or did the agent change the test to make its code pass? The latter is the single most dangerous form of test tampering.
3. **Are new invariants encoded as tests?** When a design decision is made (choice of data structure, module boundary, error strategy), there should be at least one test whose failure would signal that the invariant was violated.
**Red flag patterns:**
| Pattern | Risk | |---------|------| | `@pytest.mark.skip` added to a passing test | Invariant being silently dropped | | Assertion changed from specific to broad | Constraint being relaxed | | Test renamed to describe new behavior | Old invariant erased from history | | Test deleted "because it tested old code" | Invariant removed without replacement |
**When invariant erosion is detected:**
Do NOT approve. Flag as a BLOCKING quality issue and present the three options to the human:
1. **Preserve**: Revert the test change, fix the implementation to satisfy the invariant 2. **Layer**: Keep the invariant test, add the new behavior alongside it (accepting inelegance) 3. **Revise**: The invariant is genuinely wrong; remove the old test AND write a new test encoding the replacement invariant
This is a judgment call that models get wrong far too often. Default to option 1 (preserve) when no human is available.
## Summary [Brief assessment] ## Framework Detection - Languages: [list] | Frameworks: [list] | Versions: [constraints] ## Coverage Analysis - Overall: X% | Critical: X% | Gaps: [list] ## Quality Issues [Q1] [Issue] - Location - Anchor: `verbatim source text at file:line` - Fix ## Remediation Plan 1. [Action] - Owner - Date ## Recommendation Approve / Approve with actions / Block
**Verification:** Run the command with `--help` flag to verify availability.
A plugin marketplace for Claude Code. Install only the plugins you need to run git workflows, code review, spec-driven development, and autonomous agents from inside your Claude Code session.
Explain plugin, skill, command, agent, and hook mechanics used here. Use when authoring or debugging plugins. Do not use for ops;…
States load-bearing decisions, invariants, and weak points. Use when judging a design change. Do not use for gating; use…
Rebuild the dev environment: uv, Python tiers, pins, traps. Use when onboarding or toolchain breaks. Do not use for daily…
Classify, gate, and review changes. Use when landing a PR, releasing, or amending rules. Do not use for failure triage; use…
Search and record project memory (Discussions, journal, ADRs). Use before re-investigating anything. Do not use for settled…
Bind loop 'done' to unfakeable gates. Use to harden egregore/herald loops or promote completion_integrity. Not for QA gates; use…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.