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.
Register: TECHNIQUE Goal: Identify root cause with evidence before attempting any fix. Constraints: No fix attempts before Phase 1 complete. Evidence Anchor at each phase. Confirmed fix → pattern-globalize immediately. Adapt: the four phases below are a proven approach — adapt how you execute them to context, complexity, and available tools.
# Recent changes for context (auto-injected):
!git log --oneline -7 2>/dev/null || echo "No git history available"1. Root cause investigation completes before first fix attempt
2. Every phase produces an Evidence Anchor (not a claim — an observation)
3. Confirmed fix triggers pattern-globalize — alwaysGoal: Know exactly what is broken and why — not guessing. Constraints:
# Evidence Anchor format:
Error: "<exact message>"
Location: <file>:<line>
Reproducible: YES | NO | INTERMITTENT
Recent change: <git sha> — <description> (from !git log above)Instrument at boundaries when system has multiple components:
echo "=== Component A output: ===" && <check>
echo "=== Component B input: ===" && <check>
# Find WHERE it breaks, then investigate that componentGoal: Understand the structural cause, not just the specific instance. Constraints:
Evidence Anchor: "Working: <file>:<line> | Broken: <file>:<line> | Difference: <what differs>"Goal: Confirm root cause with minimal intervention. Constraints:
Hypothesis: "X is the root cause because Y"
Test: <smallest change to verify>
Result: CONFIRMED | REJECTED → [new hypothesis if rejected]Goal: Fix the root cause, not the symptom. Leave the codebase cleaner. Constraints:
tdd-verified: failing test before fix, passing test after<file>:<line> after the fix before claiming resolvedpattern-globalize — one confirmed bug = check globallyFix Anchor: <file>:<line> — <description of change>
Re-read: DONE
Test: <N/N passing>
Pattern: pattern-globalize triggered → YES | PATTERN-DEBT created → YES/NOIf 3+ fix attempts fail on same component → Phase 4.5:
git log --oneline -10 | grep -icE "fix:|wip|attempt"
# ≥ 3 → STOP. Question the architecture before attempting more fixes.DEBUGGING RECORD
Error: <exact message>
Root cause: <file>:<line> — <structural cause>
Fix: <file>:<line> — <change>
Evidence: T[1-4] — <command + output>
Tests: <N/N passing>
Compounded: pattern-globalize run → YES/NO| Excuse | Reality |
|---|---|
| "Too simple, skip Phase 1" | Simple bugs have root causes. Phase 1 is fast for simple bugs. |
| "Emergency, no time" | Systematic is faster than thrashing. Discipline under pressure matters more. |
| "I see the problem" | Seeing a symptom ≠ knowing root cause. |
| "One more fix" (after 2+) | 3+ failures = architecture question. Phase 4.5. |
<!-- Populated by knowledge-compound after cycles where this skill underperformed --> <!-- New entries must follow shared/gotcha-schema.md -->
status: ACTIVE source: production-audit evidence: T2 scope: skill applies_when: >- this skill is active and the same failure mode is plausible avoid_when: >- newer T1/T2 evidence shows this failure mode no longer applies in the current project last_seen: 2026-05-31 retire_if: >- no recurrence after 6 relevant cycles, or contradictory newer T1/T2 evidence narrows or invalidates the pattern claim: >- Non-critical dependency trên critical path làm failure có vẻ là feature bug (Tikai H25) root_cause: >- 'imports fail' là symptom — root cause là Redis (AI budget check) là hard dependency cho import path, không phải import logic do_instead: >- Trong Phase 1 (reproduce + document): map mọi external dependency call trong failure path và classify là critical/non-critical. Nếu non-critical dep (AI, analytics, cache) ở trên critical path → ĐÓ LÀ root cause.
status: ACTIVE source: production-audit evidence: T2 scope: skill applies_when: >- this skill is active and the same failure mode is plausible avoid_when: >- newer T1/T2 evidence shows this failure mode no longer applies in the current project last_seen: 2026-05-31 retire_if: >- no recurrence after 6 relevant cycles, or contradictory newer T1/T2 evidence narrows or invalidates the pattern claim: >- Failure 'intermittent/random' trong multi-user system trace về global mutable state (Apollos H-05, StatusBus) root_cause: >- global broadcast bus làm failures appear non-deterministic — session của user A ngẫu nhiên nhận wrong data do_instead: >- Trước khi investigate individual components cho 'random' failures: grep for module-level variables, singletons, global dicts/maps — bất kỳ shared state nào là suspect.
status: ACTIVE source: production-audit evidence: T2 scope: skill applies_when: >- this skill is active and the same failure mode is plausible avoid_when: >- newer T1/T2 evidence shows this failure mode no longer applies in the current project last_seen: 2026-05-31 retire_if: >- no recurrence after 6 relevant cycles, or contradictory newer T1/T2 evidence narrows or invalidates the pattern claim: >- Pre-mortem accuracy ~40% về finding count nhưng HIGH về finding type (Tikai [M.EP], Apollos pre-mortem) root_cause: >- Pre-mortem predict 'worker crash → stuck file' → H5 confirm đúng bug đó do_instead: >- Luôn run pre-mortem trước debugging session. Type of failure nó predict thường đúng kể cả khi specific mechanism sai. Dùng nó để generate Phase 1 hypotheses.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.