Skip to content

meow:investigate

Systematic 5-phase debugging methodology with root cause investigation, pattern matching, and the Iron Law.

What This Skill Does

meow:investigate enforces the most important debugging principle: no fixes without root cause investigation first. Instead of guessing at solutions, it walks through a structured methodology — collect symptoms, trace the code path, check git history for regressions, reproduce the bug, form a testable hypothesis, verify it, then fix. If three hypotheses fail, it stops and escalates rather than continuing to guess.

Core Capabilities

  • Iron Law enforcement — Blocks fixes until root cause is confirmed with evidence
  • 5-phase methodology — Collect → Trace → Analyze patterns → Test hypothesis → Verify fix
  • Pattern library — Matches symptoms to known patterns: race condition, null propagation, state corruption, integration failure, config drift, stale cache
  • 3-strike escalation — After 3 failed hypotheses, stops and asks the user instead of guessing indefinitely
  • Scope locking — Restricts edits to the affected module via meow:freeze to prevent scope creep
  • Blast radius check — If fix touches >5 files, asks whether that's appropriate before proceeding

When to Use This

Use meow:investigate when...

  • You need to understand WHY something is broken, not just make it work
  • Previous fix attempts haven't worked
  • The bug is intermittent or hard to reproduce
  • You suspect an architectural issue, not just a code bug

Usage

bash
# Direct invocation
/meow:investigate login timeout after session expiry

# Usually invoked by meow:fix during its investigation phase
/meow:fix payment race condition  # → automatically uses investigate

Example Prompts

PromptInvestigation approach
session token not refreshingTrace auth middleware → check refresh logic → git log for recent changes
intermittent test failures in CIPattern: race condition → check shared state → timing dependencies
works locally, fails in stagingPattern: config drift → compare env vars → check feature flags
users see stale data after updatePattern: stale cache → check Redis TTL → CDN invalidation

Quick Workflow

Symptoms → Code Trace → Git History Check → Reproduce
  → Hypothesis: "Root cause is X because Y"
  → Verify with temporary log/assertion
  → Confirmed? → Fix + Regression Test
  → Not confirmed? → Back to investigation (max 3 tries)
  → 3 strikes? → Escalate to user

Skill Details

Phase: 1–3
Plan-First Gate: Produces input FOR plans — always skips gate.

Specialized Techniques (NEW)

Load based on bug type — progressive disclosure:

Bug typeReferenceWhat it adds
Deep stack traceroot-cause-tracing.mdBackward trace to ROOT CAUSE
Server/CI/DBsystem-investigation.md5-step system methodology
Log correlationlog-analysis.mdTimeline + pattern matching
Performanceperformance-diagnostics.mdBottleneck isolation
Test pollutionscripts/find-polluter.shBisection to find polluting test

Gotchas

  • Confirming hypothesis without disproving alternatives: Finding evidence FOR a theory doesn't mean it's correct → Actively test at least one alternative hypothesis before concluding
  • Log timestamps in wrong timezone: Server logs in UTC, local comparison in local time → Normalize all timestamps to UTC before correlation
  • Fixing where error appears: Error at line 42 doesn't mean the bug is at line 42 → trace backward to source

Released under the MIT License.