linkml / codecov-coverage
Install for your project team
Run this command in your project directory to install the skill for your entire team:
mkdir -p .claude/skills/codecov-coverage && curl -L -o skill.zip "https://fastmcp.me/Skills/Download/2852" && unzip -o skill.zip -d .claude/skills/codecov-coverage && rm skill.zip
Project Skills
This skill will be saved in .claude/skills/codecov-coverage/ and checked into git. All team members will have access to it automatically.
Important: Please verify the skill by reviewing its instructions before using it.
Fetch and analyze code coverage from Codecov API for the linkml project. Use when checking coverage before making a PR, analyzing coverage changes, or finding low-coverage files.
0 views
0 installs
Skill Content
--- name: codecov-coverage description: Fetch and analyze code coverage from Codecov API for the linkml project. Use when checking coverage before making a PR, analyzing coverage changes, or finding low-coverage files. allowed-tools: WebFetch, Bash --- # Codecov Coverage Skill Fetch and analyze code coverage data from Codecov for the LinkML project. ## When to Use This Skill - Before creating a PR: check that coverage won't decrease - When adding new code: identify if new files need tests - When asked about test coverage or low-coverage areas ## Coverage Expectations **PRs must not decrease coverage.** The CI will flag coverage decreases. When adding new code: - New modules should target >80% coverage - New public functions need at least one test ## How to Check Coverage ### Quick overall percentage Use WebFetch on: ``` https://codecov.io/gh/linkml/linkml/branch/main/graph/badge.txt ``` Returns plain text like "80%" ### Detailed totals (lines, hits, misses) Use WebFetch on: ``` https://api.codecov.io/api/v2/github/linkml/repos/linkml/totals ``` Returns JSON with files count, lines, hits, misses, coverage percentage ### File-level coverage report Use WebFetch on: ``` https://api.codecov.io/api/v2/github/linkml/repos/linkml/report ``` Returns per-file coverage data - useful for finding low-coverage files ## Why Local Coverage Fails The UV workspace + src layout breaks local coverage. The `.coveragerc` specifies `source = linkml` but packages live at `packages/linkml/src/linkml/`. Use the Codecov API instead. ## Known Low-Coverage Areas These areas currently have low coverage and may need tests: - `generators/rustgen/` - experimental - `generators/dotgen.py` - ~47% - `converter/cli.py` - ~53% - `workspaces/` - minimal coverage