From claude-connoisseur
Analyzes test coverage gaps and reports uncovered files and functions in JavaScript, Python, Go, Rust, Java, Ruby, Elixir, and PHP projects before changes.
npx claudepluginhub eugeniosegala/claude-connoisseur --plugin claude-connoisseurThis skill uses the workspace's default tool permissions.
Analyse the project's test coverage, identify gaps, and present an assessment for the user to review before any changes are made. **Do not write or modify any code until the user provides next steps.**
Analyzes coverage reports from Jest/nyc, pytest, Go test, JaCoCo to find untested paths, branch gaps, low-coverage files, and suggest targeted tests.
Analyzes test coverage to identify untested code paths and suggests test additions. Activates on queries about coverage gaps, untested code, or missing tests.
Queries test coverage in Python, Node.js, Rust, Go projects. Identifies uncovered areas/files, analyzes trends, and generates reports before changes or PRs.
Share bugs, ideas, or general feedback.
Analyse the project's test coverage, identify gaps, and present an assessment for the user to review before any changes are made. Do not write or modify any code until the user provides next steps.
Files and instructions: $ARGUMENTS
Before running anything, determine the test framework, runner, and coverage tooling by inspecting the project:
jest --coverage, vitest --coverage, c8, nyc/istanbul — check package.json scripts, config files, and dev dependencies for coverage providers (@vitest/coverage-v8, @vitest/coverage-istanbul, c8, nyc)pytest --cov, coverage.py — check pyproject.toml, setup.cfg, .coveragercgo test -cover, go test -coverprofile — built-incargo tarpaulin, cargo llvm-cov — check Cargo.toml dev-dependenciesjacoco, cobertura — check pom.xml or build.gradle pluginssimplecov — check Gemfilemix test --cover, excoveralls — check mix.exsphpunit --coverage-text — check phpunit.xml, composer.jsonIf no coverage tool is installed, recommend one appropriate for the detected framework and ask the user before installing it.
The arguments are free-form and flexible. They may contain:
src/services/, @auth.ts, lib/, *.pyWhen no arguments are provided, analyse coverage for the entire project.
/coverage-review — full project coverage analysis/coverage-review src/services/ — coverage for a specific directory/coverage-review @auth.ts — coverage for a specific file/coverage-review focus on the API handlers — scoped by description/coverage-review ignore generated files and vendor/ — with exclusionspackage.json, pyproject.toml, Cargo.toml, go.mod, or equivalent to identify available coverage tooling and its configuration## Coverage Assessment
**Framework**: vitest + @vitest/coverage-v8
**Scope**: full project (or scoped description)
**Overall line coverage**: 64% (target: 80%)
---
### Summary
| Category | Count |
|---------------------|-------|
| Uncovered files | 4 |
| Low-coverage files | 6 |
| Uncovered functions | 12 |
---
### Uncovered files (no tests)
| File | Lines | Risk | Complexity | What it does |
|-------------------------------|-------|--------|------------|---------------------------------------|
| `src/services/billing.ts` | 142 | high | moderate | Stripe billing lifecycle management |
| `src/utils/retry.ts` | 38 | medium | simple | Generic retry with exponential backoff|
### Low-coverage files (below 50%)
| File | Coverage | Uncovered functions | Risk | Complexity |
|-------------------------------|----------|----------------------------------|--------|------------|
| `src/handlers/auth.ts` | 32% | `refreshToken`, `revokeSession` | high | moderate |
| `src/repos/order.ts` | 45% | `bulkUpdate`, `archiveOld` | medium | complex |
### Key uncovered branches
| Location | Branch description | Risk |
|-----------------------------------|------------------------------------------|--------|
| `src/services/user.ts:52-58` | Error path when email already exists | high |
| `src/handlers/auth.ts:91-95` | Token expiry edge case | medium |
---
### Recommended priority
1. **`src/services/billing.ts`** — high risk, no tests at all, moderate complexity
2. **`src/handlers/auth.ts` → `refreshToken`, `revokeSession`** — high risk, auth-critical paths
3. **`src/services/user.ts:52-58`** — high risk branch, simple to cover
4. ...
---
What would you like to cover? You can point at specific files, pick from the priorities above, or ask me to cover everything.
## Coverage Assessment: UNKNOWN
Could not detect a coverage tool. Looked for: jest/vitest coverage config, pytest-cov, coverage.py, go test -cover, cargo tarpaulin, jacoco, simplecov.
Recommended tool for this project: **[recommendation based on detected test framework]**
Would you like me to install and configure it?
## Coverage Assessment: COMPLETE
**Overall line coverage**: 94%
All files are above 80% coverage. No significant uncovered functions or branches detected.
Minor gaps (cosmetic):
- `src/config/defaults.ts:12` — unreachable fallback branch
- `src/index.ts:3-5` — top-level bootstrap (not practically testable)