debugging-by-evidence

Installation
SKILL.md

Debugging by Evidence

Core principle. Test the claim needed for the decision, not every unknown in the incident.

  • A hypothesis chooses an experiment; it is not a confirmed cause. Reports, logs and code can supply falsifiable hypotheses before a local reproduction.
  • Use complementary layers of evidence. An incident record shows occurrence; a controlled experiment can show defective handling without identifying the original trigger.
  • You opened this in the middle of something. This is how to do that work, not a replacement for it. Name what you were doing before you start, and return to it when this is done.

Choose a signal for the question

  • Start with the reported failure and available evidence. A local passing run does not erase a recorded incident.
  • Choose reproduction, replay, controlled fault injection or tracing by what each can establish. They are alternatives, not a mandatory ladder.
  • Keep the handling under test real. Inject a justified dependency outcome or schedule, then assert the caller-visible contract.
  • Record the command, conditions and result. Label injected conditions; do not report them as observed production events.

What you may write, and when

  • Before a supported repair, writes are limited to authorised diagnostic tests and instrumentation. Controlled changes to inputs, dependency outcomes or scheduling are experiments, not production fixes.
  • Preserve the baseline. Change the condition under investigation, not the handling whose correctness you are testing. Isolate substitutions and retain the original evidence.
  • The licence stops at the workspace boundary. No commit, branch move, remote action or deployment. Remove temporary instrumentation; retain useful regression tests.
Installs
31
First Seen
Aug 14, 2026
debugging-by-evidence — gabrielmoreira/skills