systematic-debugging — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited systematic-debugging (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
CRITICAL: This is a diagnostic skill. Investigate first, fix second. Don't guess — gather evidence.
Start here. Match the symptom to candidate hypotheses, then investigate:
| Symptom | Likely Hypotheses | First Investigation |
|---|---|---|
| High CPU (≥90% sustained) | Infinite loop, runaway regex, tight polling | Sample twice 1-2s apart to confirm sustained; check stack/profile |
| Process in D state (uninterruptible sleep) | I/O hang, disk full, NFS stall, lock contention | Check dmesg, disk usage, mount status |
| Process in T state (stopped) | Accidental Ctrl+Z, debugger attached | Check parent process, fg to resume |
| Zombie process (Z state) | Parent not reaping children | Check parent PID, signal parent |
| High memory (≥4GB RSS) | Memory leak, unbounded cache, large dataset loaded | Check growth over time, heap snapshot if available |
| Slow response | N+1 queries, blocking I/O on hot path, missing index | Profile request, check DB query count and timing |
| Hung child process | Waiting for stdin, deadlock, network timeout | pgrep -lP <pid>, check child's full command line |
| Intermittent failure | Race condition, resource exhaustion, DNS flake | Check timing patterns, add logging, reproduce under load |
| Build failure | Dependency version mismatch, stale cache, missing env var | Clean build, check lock file, diff with working state |
| Test failure (flaky) | Shared state, timing dependency, order dependency | Run test in isolation, check setup/teardown, look for shared mutable state |
git log --oneline -10 and git diff — was something just changed?If the issue isn't visible in current logs:
-C 5 context to search for error patterns in logs and code without reading entire files.head_limit on Grep to avoid drowning in results.Logs can be enormous. Never read an entire log file.
[ERROR], [WARN], FATAL, panic, Exception, traceback across the full file.When reporting findings, use this two-part structure:
What's wrong, which component, and the severity. This is what the reader sees first.
Example: "Auth service returning 500 on /login — null pointer at session.validate()
when session cookie is expired but token is still cached."When investigating stuck or slow processes:
# List processes with CPU, memory, state, and uptime
ps -axo pid=,pcpu=,rss=,etime=,state=,comm=,command= | grep -E '<process_name>'
# Check child processes
pgrep -lP <pid>
# Sample CPU usage (confirm sustained, not transient)
# Check twice with 1-2s gapps -p <child_pid> -o command=CRITICAL REMINDER: Investigate before fixing. Bound your log reads. Report only real issues — don't manufacture problems from healthy systems. Reproduce, then fix, then verify.
codebase-exploration patterns to trace code paths during investigation.effective-tool-use patterns when running diagnostic commands safely.code-verification patterns to prove the fix works.If user-config.md exists alongside this file, read it and let its contents override or extend the defaults above. Common customizations:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.