debug-false-positive

Diagnose and fix Fallow false positives through layered pipeline tracing and regression testing.

4.4k|154|Updated Mar 17, 2026
One-click install
npx skills add https://github.com/fallow-rs/fallow --skill debug-false-positive
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: debug-false-positive
Source: https://github.com/fallow-rs/fallow/tree/main/.agents/skills/debug-false-positive
Command: npx skills add https://github.com/fallow-rs/fallow --skill debug-false-positive

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Static analysis tools sometimes report incorrect findings, and fixing them requires tracing a result through many internal layers. This Skill provides a disciplined workflow for diagnosing and correcting false positives and false negatives in the Fallow codebase analyzer.

Core Features & Use Cases

  • Layered Diagnosis: Trace a finding through extraction, resolution, graph construction, reachability, analysis, suppression, filters, and report assembly to find the earliest incorrect layer.
  • Regression Testing: Add a test that fails without the fix, then verify on a real consumer project with a cleared .fallow/ cache.
  • Use Case: A user reports that Fallow flags a file as unused even though it is imported. Use this Skill to reproduce the issue with --format json --quiet, reduce it to a minimal fixture, trace the misclassification to the resolution layer, fix it, and confirm the corrected output on a real project.

Quick Start

Reproduce the reported Fallow false positive on main, trace it through the analysis pipeline, fix the earliest incorrect layer, and add a regression test.

Frequently Asked Questions about debug-false-positive

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debug a false positive in Fallow?

Reproduce the finding on current main with --format json --quiet, reduce it to a minimal fixture, then trace it through extract, resolve, graph, reachability, analysis, suppression, filters, and report assembly. Fix the earliest incorrect layer rather than tuning expected output.

How do I fix a false negative in a static analysis tool?

Follow the same layered tracing workflow: reproduce the missed finding, isolate a minimal fixture, and walk each pipeline stage to find where the finding was dropped. Add a regression test that fails without the fix before merging.

Why should I clear the .fallow cache when verifying a fix?

Clearing the .fallow/ cache ensures the fixed binary recomputes results from scratch instead of reusing stale cached analysis. Comparing old versus new output on a real consumer project confirms the fix behaves correctly outside the test fixture.

When should I not tune expected output for a fixture?

Do not tune expected output around one fixture when the semantic model requires a broader correction. Adjusting snapshots to match incorrect behavior hides the underlying bug and lets the false result persist for other codebases.

What layers does Fallow analysis trace through?

A finding flows through extraction, module resolution, dependency graph construction, reachability, analysis, suppression, filters, and report assembly. Debugging targets the earliest layer where the result becomes incorrect.