.claude/skills/coverage-report/SKILL.md
Report TSDoc/JSDoc coverage across the codebase — what % of exported symbols have documentation blocks, and which files have the worst coverage. Use after /comment-batch sessions and as the C20 verification step.
npx skillsauth add malhajri07/real-estate-CRM-project coverage-reportInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A simple, dependency-free way to measure how much of the codebase has TSDoc. Don't wait for full TypeDoc tooling — this skill works today.
web | api | schema | all (default all)summary (default) | detailedFind all source files:
apps/web/src/**/*.{ts,tsx} excluding *.test.*, *.spec.*, node_modules, distapps/api/{routes,middleware,lib}/**/*.tsdata/schema/prisma/schema.prisma (special handling — /// triple-slash, not /**)For each file, count:
^export (async )?(function|class|const|default function|default class) or ^export default function^export (default )?function [A-Z] (PascalCase)^/\*\* immediately preceded by an export within 10 linesCompute coverage = (documented exports / total exports) × 100, per file and overall.
Format output:
Summary mode:
Coverage report
───────────────
apps/web: 234/812 (29%) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ░░░░░░░░░░░░░░
apps/api: 87/192 (45%) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ░░░
schema: 12/78 (15%) ━━━━━━━━━━━━━━━━━━━━━━━░░░░░░░░░░░░░░░░░░░░░░
───────────────
Overall: 333/1082 (31%)
Worst-covered files:
- apps/web/src/pages/admin/system-settings.tsx (0/14)
- apps/web/src/components/admin/data-display/AdminTable.tsx (0/9)
- apps/api/routes/promotions.ts (1/12)
Detailed mode: also list every file with < 50% coverage and show file:line for each undocumented export.
Compare to last run if a previous report exists at Aqarkom_Knowledge/Engineering/Coverage Report.md.
Save the result to Aqarkom_Knowledge/Engineering/Coverage Report.md with a timestamp so future runs can show deltas.
Recommend next session — find the C session in [[Sessions/Comment Plan C1-C20]] that targets the worst-covered files and link to it.
typedoc --validation.notDocumented in C1's tooling step. Until then, this skill is "good enough".Always exclude:
node_modules/dist/, build/*.test.ts, *.spec.ts, tests/.next/, .vite/apps/web/src/components/ui/ that are pure shadcn re-exports (no project logic)testing
Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax. Use when working with .md files in Obsidian, or when the user mentions wikilinks, callouts, frontmatter, tags, embeds, or Obsidian notes.
tools
Interact with Obsidian vaults using the Obsidian CLI to read, create, search, and manage notes, tasks, properties, and more. Also supports plugin and theme development with commands to reload plugins, run JavaScript, capture errors, take screenshots, and inspect the DOM. Use when the user asks to interact with their Obsidian vault, manage notes, search vault content, perform vault operations from the command line, or develop and debug Obsidian plugins and themes.
data-ai
Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries. Use when working with .base files, creating database-like views of notes, or when the user mentions Bases, table views, card views, filters, or formulas in Obsidian.
tools
Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections. Use when working with .canvas files, creating visual canvases, mind maps, flowcharts, or when the user mentions Canvas files in Obsidian.