Pseudo-mutation analysis for behavioral blind spots: determine whether existing tests would catch meaningful caller-visible production changes, identify survivors or untested outcomes, and…

MITAuto-check passedDevelopment

Install Test Gap Analysis

skills CLI
$ npx skills add rodri-oliveira-dev/Dapper-FluentMap --skill test-gap-analysis -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install rodri-oliveira-dev/Dapper-FluentMap test-gap-analysis --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/rodri-oliveira-dev/Dapper-FluentMap.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/test-gap-analysis .claude/skills/test-gap-analysis && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
test-gap-analysis
GitHub stars
453
Token cost
~1.5k tokens
SKILL.md length
617 words
Files
2 (incl. references)
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

Pseudo-mutation analysis for behavioral blind spots: determine whether existing tests would catch meaningful caller-visible production changes, identify survivors or untested outcomes, and…

  • Works in 7 steps: Set scope → Establish one baseline → Inventory public outcomes → …
  • Behavioral gaps and missing edge cases
  • SKILL.md covers Decision flow, Output contract and Reliability rules
  • Calls dotnet

What it does

Test Gap Analysis is an agent skill from rodri-oliveira-dev/Dapper-FluentMap. Pseudo-mutation analysis for behavioral blind spots: determine whether existing tests would catch meaningful caller-visible production changes, identify survivors or untested outcomes, and optionally close verified gaps with focused tests. Use for behavioral gaps and missing edge cases. Use coverage-analysis when available for project-wide coverage arithmetic and test-anti-patterns when available for broad test-quality smells.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/mutation-catalog.md`).

It sits in Development. The repository describes itself as: Fluent mapping for Dapper, with conventions, immutable object materialization, analyzers, source generators, DI integration, and Dommel support. The licence is MIT.

When your agent uses it

  • Behavioral gaps and missing edge cases

Example prompts

  • “/test-gap-analysis”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Set scope
  2. Establish one baseline
  3. Inventory public outcomes
  4. Admit only observable candidates
  5. Rank and classify
  6. Verify safely when requested
  7. Close gaps only when requested

What it can do on your machine

Read from SKILL.md and the folder at commit 4f5a39f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • dotnet

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Test Gap Analysis loads about 1.5k tokens when it runs, and up to ~2.1k if it reads all its reference files. Until then it costs about 112 tokens; SKILL.md has 617 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~112
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from rodri-oliveira-dev/Dapper-FluentMap at commit 4f5a39f, republished under its MIT licence (© rodri-oliveira-dev). 617 words, ~1,451 tokens.

Download SKILL.mdSave it as .claude/skills/test-gap-analysis/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
test-gap-analysis
description
Pseudo-mutation analysis for behavioral blind spots: determine whether existing tests would catch meaningful caller-visible production changes, identify survivors or untested outcomes, and optionally close verified gaps with focused tests. Use for behavioral gaps and missing edge cases. Use coverage-analysis when available for project-wide coverage arithmetic and test-anti-patterns when available for broad test-quality smells.
license
MIT

Test Gap Analysis

Answer one question: which caller-visible production behaviors could change without an existing test failing? Mutation reasoning is a probe, not the goal. Inventory public outcomes first, then verify only credible gaps.

Dapper-FluentMap integration: preserve public compatibility and use the repository's existing test layers. Prefer test/Dapper.FluentMap.Tests for focused core behavior, provider/integration suites for materialization behavior, Roslyn tests for analyzers/generators, and eng/consumer-smoke for package-consumer behavior. Do not mutate global Dapper/FluentMap state without restoring it.

Decision flow

1. Set scope

Discover production and test files from Dapper.FluentMap.slnx and the existing test layout. Keep a focused request focused.

RequestAction
One component or named riskInventory every high-risk public outcome in scope; do not edit production code unless verification was requested
General small-component reviewInventory distinct outcomes and report caller-visible gaps from source/assertion mapping
Explicit survivor verificationExecute one representative observable candidate for each distinct high-risk outcome under verification
Explicit exhaustive auditRead references/mutation-catalog.md and classify all meaningful candidates
Add tests to an existing suiteAnalyze first; add tests only for verified survivors or demonstrated no-coverage outcomes
2. Establish one baseline

Run the narrowest existing test command once and confirm tests actually executed. For core behavior, normally start with:

bash
dotnet test ./test/Dapper.FluentMap.Tests/Dapper.FluentMap.Tests.csproj --configuration Release

If the suite cannot run, continue statically and label executable mutation candidates unverified.

3. Inventory public outcomes

For each public entry point, map:

  • input partitions and guard boundaries;
  • returns/results/exceptions/state transitions/side effects;
  • mapping precedence and fallback behavior;
  • case sensitivity, duplicate registration, conventions and caches when relevant;
  • Dapper materialization or Dommel behavior only through real caller-visible outcomes;
  • analyzer/generator diagnostics and generated output when relevant.

Use:

text
public input/sequence -> expected outcome -> existing assertion -> gap

One asserted field does not cover another. Unit metadata tests do not prove end-to-end Dapper materialization.

4. Admit only observable candidates

Before reporting a candidate, replay it against existing asserted inputs. If an assertion observes the changed result, it is Likely killed and not a gap.

For survivors, state:

text
witness -> original observation -> mutant observation

Exclude generated code, formatting/logging-only changes unless contractual, non-compiling edits, equivalent mutations, impossible domain values, trivial forwarding members, and private representation changes callers cannot distinguish.

Show full SKILL.md (283 more words)Show less
5. Rank and classify

Prioritize:

  1. public compatibility, mapping correctness, package-consumer behavior, data correctness and error semantics;
  2. wholly unasserted public outcomes;
  3. exact boundaries/precedence/case behavior reached only by weak assertions;
  4. alternate variants of already-protected behavior.

Use these labels:

ResultMeaning
Likely killedAn existing assertion observes the changed outcome
Candidate survivor (unverified)Observable change appears unasserted; not executed
SurvivedExact observable mutation executed and tests stayed green
No coverageNo test reaches the public outcome
EquivalentNo public observation changes; omit from findings

Verdict: Strong, Mixed, or Weak.

6. Verify safely when requested
  1. Apply one temporary candidate and confirm the diff changes exactly one intended expression.
  2. Run the narrowest covering tests.
  3. Green = Survived; red = Killed, for that edit only.
  4. Revert immediately and confirm the source baseline is clean.
  5. Never commit temporary mutations.
  6. Restore global FluentMap/Dapper state in tests that alter it.
7. Close gaps only when requested
  • Add focused behavior tests only for demonstrated gaps.
  • Prefer tests that protect a caller-visible contract over tests that merely inflate coverage.
  • Use integration/provider tests when the risk concerns actual Dapper materialization.
  • Use package/consumer-smoke validation when the risk concerns package identity, analyzers/generators, trimming, or installation.

Output contract

For focused analysis return one-line verdict, a short strengths sentence, then one compact row per actionable gap:

RiskPublic outcomeChangeResult/evidenceSmallest test

Every gap needs a distinguishing witness and a concrete smallest test.

Reliability rules

  • A passing test that does not assert the changed outcome does not kill a mutation.
  • Coverage is per behavior partition, not merely per executed line.
  • Never recommend a redundant test for behavior already protected.
  • AGENTS.md, repository compatibility rules, and deterministic validation prevail over this skill.

© rodri-oliveira-dev, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in .agents/skills/test-gap-analysis of rodri-oliveira-dev/Dapper-FluentMap.

  • SKILL.md
  • references/mutation-catalog.md

Open the folder on GitHubat commit 4f5a39f

Compare with similar skills

Test Gap Analysis next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Test Gap Analysis compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Test Gap Analysis this skillrodri-oliveira-dev/Dapper-FluentMap453—~1.5kAutomated safety check: PassMIT
Vercel Composition Patternssupabase/supabase111k58 repos~726Automated safety check: PassMIT
Finishing a Development Branchobra/superpowers297k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k25 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k5 repos~1.1kAutomated safety check: PassMIT

Similar skills

  • Official

    React composition patterns that scale. An agent skill from supabase/supabase.

    111k GitHub starsUsed in 58 repos~726 tokens
    DevelopmentAuto-check passed
  • Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.

    297k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 25 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 5 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed

More from rodri-oliveira-dev/Dapper-FluentMap

All 11 skills in this repo
  • Directory Build Organization

    rodri-oliveira-dev/Dapper-FluentMap

    Guide for organizing MSBuild infrastructure with Directory.Build.props, Directory.Build.targets, Directory.Packages.props when present, and related repository build files.

    453 GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Microbenchmarking

    rodri-oliveira-dev/Dapper-FluentMap

    Activate when BenchmarkDotNet is involved or when a .NET performance question requires controlled microbenchmark measurement.

    453 GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Nuget Trusted Publishing

    rodri-oliveira-dev/Dapper-FluentMap

    Review, maintain, or set up NuGet trusted publishing (OIDC) for GitHub Actions.

    453 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Authoring GitHub Workflows

    rodri-oliveira-dev/Dapper-FluentMap

    Author and review GitHub Actions workflow YAML safely so syntactically-valid YAML can't ship a workflow that GitHub Actions refuses to run.

    453 GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Binlog Failure Analysis

    rodri-oliveira-dev/Dapper-FluentMap

    Analyze MSBuild binary logs to diagnose build failures. An agent skill from rodri-oliveira-dev/Dapper-FluentMap.

    453 GitHub stars~750 tokensUpdated today
    Auto-check passed
  • CI Release Governance

    rodri-oliveira-dev/Dapper-FluentMap

    A skill your agent uses to review or adjust Dapper-FluentMap GitHub Actions, packaging, NuGet publishing, versioning, release, rollback, recovery, provenance, and automation security.

    453 GitHub stars~1.8k tokensUpdated today
    Auto-check passed

Categories

Questions about Test Gap Analysis

What does Test Gap Analysis do?

Pseudo-mutation analysis for behavioral blind spots: determine whether existing tests would catch meaningful caller-visible production changes, identify survivors or untested outcomes, and…. Test Gap Analysis is an agent skill from rodri-oliveira-dev/Dapper-FluentMap. Pseudo-mutation analysis for behavioral blind spots: determine whether existing tests would catch meaningful caller-visible production changes, identify survivors or untested outcomes, and optionally close verified gaps with focused tests.

When should I use Test Gap Analysis?

Test Gap Analysis fits situations like: behavioral gaps and missing edge cases.

How do I install Test Gap Analysis in Claude Code?

Run `npx skills add rodri-oliveira-dev/Dapper-FluentMap --skill test-gap-analysis -a claude-code`. Or copy the skill folder (.agents/skills/test-gap-analysis in rodri-oliveira-dev/Dapper-FluentMap) into .claude/skills/test-gap-analysis in your project. Claude Code loads it when a task matches its description.

How do I install Test Gap Analysis in Codex?

Run `npx skills add rodri-oliveira-dev/Dapper-FluentMap --skill test-gap-analysis -a codex`. Or copy the skill folder (.agents/skills/test-gap-analysis in rodri-oliveira-dev/Dapper-FluentMap) into .agents/skills/test-gap-analysis in your project. Codex loads it when a task matches its description.

Can I use Test Gap Analysis in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add rodri-oliveira-dev/Dapper-FluentMap --skill test-gap-analysis -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/test-gap-analysis, .gemini/skills/test-gap-analysis, .github/skills/test-gap-analysis and .opencode/skills/test-gap-analysis in your project.

What does Test Gap Analysis need to run?

Going by SKILL.md and its folder, Test Gap Analysis needs the command-line tools its instructions call (dotnet).

Does Test Gap Analysis access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Test Gap Analysis safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Test Gap Analysis use?

Test Gap Analysis is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Test Gap Analysis use?

About 1.5k tokens (SKILL.md is roughly 5.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 685 tokens, read only when the agent opens those files.

What are the alternatives to Test Gap Analysis?

Skills that share tags, products or a category with Test Gap Analysis: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 297k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Test Gap Analysis?

rodri-oliveira-dev (a GitHub user) maintains it in rodri-oliveira-dev/Dapper-FluentMap, which has 453 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 8, 2026.

Source: rodri-oliveira-dev/Dapper-FluentMap on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.