skills/ldayton/dippy/check-coverage

check-coverage

SKILL.md

Ensure the handler and tests for $ARGUMENTS provide comprehensive coverage.

1. Gather Documentation

Find documentation for the tool (need at least one source):

tldr:

ls ~/source/tldr/pages/*/$ARGUMENTS*.md
cat ~/source/tldr/pages/*/$ARGUMENTS.md

Local CLI:

$ARGUMENTS --help
man $ARGUMENTS

Stop if neither source exists.

2. Explore Subcommands

For tools with subcommands, recursively explore:

$ARGUMENTS <subcommand> --help
$ARGUMENTS help <subcommand>

Build a mental model of:

  • All subcommands and their actions
  • Which operations are read-only (safe) vs mutate state (unsafe)
  • Global flags that affect parsing
  • Edge cases

3. Review Existing Tests

Read tests/cli/test_$ARGUMENTS.py and check for:

  • Coverage of all subcommands
  • Both safe and unsafe variants of each action
  • Global flag handling
  • Edge cases from the docs

4. Add Missing Tests

Add aspirational test cases for anything missing. Follow existing format:

TESTS = [
    # --- Subcommand group ---
    ("$ARGUMENTS <subcommand> <safe-action>", True),
    ("$ARGUMENTS <subcommand> <unsafe-action>", False),
]

5. Iterate Until Tests Pass

just test

For each failure, determine if the test expectation is correct:

  • If yes, update src/dippy/cli/$ARGUMENTS.py
  • If no, fix the test

6. Verify

just check MUST pass before you're done.

Weekly Installs
4
Repository
ldayton/dippy
GitHub Stars
54
First Seen
9 days ago
Installed on
opencode4
antigravity4
claude-code4
github-copilot4
codex4
kimi-cli4