troubleshooting-regression

v2026.09.24

Regression troubleshooting workflow for hook/router/memory/search failures with enforced evidence and fix validation

GitHub
安装命令
npx skhub add oimiragieo/troubleshooting-regression
Markdown
SKILL.md

Troubleshooting Regression

Use this skill when the framework appears stale, stuck, or regressed and you need deterministic diagnosis plus fix verification.

When to Use

  • Claude debug sessions stall after spawning agents.
  • Hooks block expected actions unexpectedly.
  • Memory/search/token-saver enforcement appears inconsistent.
  • A regression needs a repeatable reproduction and validation run.

Iron Law

Do not declare a regression fixed without:

  1. reproducible trigger prompt,
  2. trace evidence from pnpm trace:query,
  3. hook/tool evidence from debug logs,
  4. targeted test pass for touched scope.

Workflow

  1. Identify session and log source.
  2. Run trace query first (pnpm trace:query --trace-id <traceId> --compact --since <ISO-8601> --limit 200).
  3. Extract high-signal errors (excluding known MCP auth/startup noise).
  4. Map each error to owning hook/module.
  5. Patch minimal code path and add/update regression test.
  6. Run targeted checks (tests + lint/format on changed files).
  7. Re-run debug prompt and verify error class no longer reproduces.
  8. Record learnings/issues in memory.

Evidence Model

  • Source of truth: C:\\Users\\<user>\\.claude\\debug\\*.txt
  • Trace source of truth: pnpm trace:query output for the same incident window
  • Filter: ignore external MCP transport/auth noise; keep framework/runtime errors
  • Error classes:
    • routing/task lifecycle
    • memory/search/token-saver guardrails
    • hook contract/schema violations
    • workflow phase/idempotency failures

Command Surface

Primary wrapper:

node .claude/skills/troubleshooting-regression/scripts/main.cjs --prompt "search the codebase for any issues or bugs"
pnpm trace:query --trace-id <traceId> --compact --since <ISO-8601> --limit 200

Optional direct log analysis:

node .claude/skills/troubleshooting-regression/scripts/main.cjs --log-path "C:\\Users\\<user>\\.claude\\debug\\<session>.txt"

Output Contract

  • ok: boolean
  • logPath: analyzed log path
  • findings[]: normalized findings with severity and owner file hints
  • nextActions[]: concrete fix/validation actions

Related Artifacts

  • Workflow: .claude/workflows/troubleshooting-regression-skill-workflow.md
  • Tool: .claude/tools/troubleshooting-regression/troubleshooting-regression.cjs
  • Command: .claude/commands/troubleshooting-regression.md

Examples

# Analyze latest log
node .claude/skills/troubleshooting-regression/scripts/main.cjs --mode quick

# Analyze specific log and fail when critical findings exist
node .claude/skills/troubleshooting-regression/scripts/main.cjs --log-path "<path>" --strict

Iron Laws

  1. ALWAYS collect evidence (logs, trace IDs, error messages) before making any configuration changes
  2. NEVER modify hook or routing configuration without first reproducing the failure deterministically
  3. ALWAYS validate the fix by running the full regression test suite after each change
  4. NEVER mark a regression resolved until the exact failure scenario passes end-to-end
  5. ALWAYS document the root cause, fix, and validation evidence in issues.md for future reference

Anti-Patterns

Anti-PatternWhy It FailsCorrect Approach
Making changes without reproducing failureCan't verify the change fixed the right thingReproduce deterministically first, then fix
Fixing symptoms without root cause analysisProblem recurs under different conditionsUse 5 Whys to trace to the root cause
Skipping regression suite after fixFix may break other functionalityRun full test suite after every change
Undocumented fixesSame regression returns in future sessionsRecord root cause, fix, and validation in issues.md
Resolving without end-to-end validationIntegration issues are missedValidate the exact failure path end-to-end

Memory Protocol

Before starting:

cat .claude/context/memory/learnings.md

After completing:

  • Regression pattern -> .claude/context/memory/learnings.md
  • Open defect or risk -> .claude/context/memory/issues.md
  • New enforcement decision -> .claude/context/memory/decisions.md

ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.

发现
标签

此技能尚未发布标签。

版本
最新版本元数据

版本

v2026.09.24

发布时间

2026年9月24日

分类

未分类

许可证

未指定

源路径

.claude/skills/troubleshooting-regression

默认分支

main

最新提交

64b580e

Tree SHA

42a1df4