rc-diagnose

Diagnoses bugs to root cause, then fixes and verifies with tests.

19|1|Updated Jun 27, 2026
One-click install
npx skills add https://github.com/rodolfochicone/rc-project --skill rc-diagnose-rodolfochicone
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: rc-diagnose
Source: https://github.com/rodolfochicone/rc-project/tree/main/skills/promoted/rc-diagnose
Command: npx skills add https://github.com/rodolfochicone/rc-project --skill rc-diagnose-rodolfochicone

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Debugging under pressure often devolves into guessing, symptom patches, and stacked fixes that never address the real cause. This Skill enforces a disciplined root-cause-first method so bugs get fixed at the source and verified with evidence instead of workarounds. ## Core Features & Use Cases - Structured five-phase method: Frame and reproduce, investigate with file:line evidence, hypothesize and test one variable at a time, fix with a failing test first, then verify against the project's real gate. - Root-cause tracing toolkit: Reference guides cover backward call-chain tracing, defense-in-depth validation layers, condition-based waiting to replace flaky timeouts, and a bisection script that finds which test pollutes shared state. - Workaround catalog: A categorized catalog of 30 anti-patterns (type evasion, error swallowing, timing hacks, monkey patching) with the proper fix for each. - Use Case: A test suite creates a stray .git directory in source code. The Skill traces the empty projectDir back through five call levels to its origin, fixes the source, and adds validation at every layer. ## Quick Start Ask the agent to diagnose why a specific test or behavior is failing and fix the root cause rather than the symptom.

Frequently Asked Questions about rc-diagnose

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

FAQPage Schema
How do I find the root cause of a bug instead of fixing symptoms?▼

Trace the bad value backward through the call chain from where the error appears to where it originates, grounding each step in a file:line reference. Fix at the source, then add validation at each layer the data passes through.

How to fix flaky tests caused by setTimeout delays?▼

Replace arbitrary sleeps with condition-based waiting that polls for the actual state or event you need, with a timeout. The included reference shows waitForEvent-style helpers that took a suite from 60% to 100% pass rate.

How do I find which test pollutes shared state?▼

Run the find-polluter.sh bisection script with the polluted file path and a test pattern. It runs each test file individually and stops at the first one that creates the unwanted file or state.

When should I stop trying to fix a bug and escalate?▼

Stop after three failed fix attempts. Repeated failures where each fix reveals new problems indicate a wrong architecture, not a wrong hypothesis, so surface the design issue to the user before touching code again.

What counts as a workaround instead of a real fix?▼

The workaround catalog lists 30 patterns including blanket any types, empty catch blocks, @ts-ignore without a fix plan, arbitrary sleeps, and monkey patching. Each silences a signal while the underlying problem remains.