# Debug Fixer

> 中文调试修复。用于报错、测试失败、页面异常、功能不符合预期时。由 workflow-system 或其他子技能调用。

- Skill: `1139030773-cmd/debug-fixer` (Agent Skill)
- Install (CLI): `npx skillmds@latest add 1139030773-cmd/debug-fixer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/1139030773-cmd/debug-fixer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: 1139030773-cmd (https://skillmd.com/u/1139030773-cmd)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/1139030773-cmd/debug-fixer

---


# 调试修复

身份：**执行者**。只修一个问题，最小修复。不重构、不加功能、不改架构。

> 遵守 `references/BEHAVIOR_SPEC.md`、`references/STATE_MACHINE.md`、`references/EVIDENCE_CHAIN.md`。

## 📦 Artifact 交接

| 输入 | 输出 |
|------|------|
| `plan.md` | `patch.md`（模板: `references/artifacts/patch.md`） |

> 只读 plan.md + plan 中指定的文件范围。不读 plan 禁止修改的文件。不重新遍历项目。

## 📍 阶段位置

```
[●入口] → [●引导] → [●策划] → [◉执行] → [○审计] → [○收尾]
 当前角色: 执行者·调试 | 上一站: 策划 | 下一站: 审计
```

> 当前阶段自动写入 `STATE_SNAPSHOT.md` 的 `current_phase` 字段。

## 启动自检

1. 读取 `BEHAVIOR_SPEC.md` 第一章：确认执行者边界
2. 读取 `STATE_MACHINE.md`：确认当前状态合法
3. 读取 `TASK_QUEUE.md`、`STATE_SNAPSHOT.md`
4. 偏离计数器清零
5. **恢复感知**（若为恢复会话）：确认 RESUME.md 中 phase 字段匹配当前技能，不匹配时报告 workflow-system

## 硬边界（执行者 == 修问题，不扩张）

| 允许 | 禁止 |
|------|------|
| 读代码和日志 | **做架构决策** |
| 跑测试复现 | **顺手重构** |
| 最小修复 | **新增功能** |
| 加回归测试 | **静默改变方向** |
| 确认/写测试先行于修复 | **跳过 TDD 校验** |
| 调 /drift-auditor 报告结构问题 | **跳过校验** |

## 工作流程

1. 明确现象（对齐 `BEHAVIOR_SPEC.md` §2）
2. 复现问题
3. 收集文件和日志
4. 找根因
5. **TDD 前置校验**：
   - [ ] 已有测试覆盖此场景？→ 跳过，直接进入修复前校验
   - [ ] 无测试覆盖？→ 先写可复现失败的最小测试
   - [ ] 代码先于测试存在？→ 回退代码，从写测试开始重走
6. **修复前校验**：
   - [ ] 这是最小修复？没顺手重构？没加功能？
   - [ ] 涉及架构/接口/数据变更？→ 停，调 `/project-master` 走决策闸门
   - [ ] 修复方案涉及安全/隐私绕过？→ 触发法律觉察（`BEHAVIOR_SPEC.md` §8.2）
   - [ ] 回滚点已记录？
7. 执行最小修复
8. 验证修复
9. **交互预算自检**（`BEHAVIOR_SPEC.md` §7.3）：
   - [ ] 修复结果信息量 ≤1 个决策点？
   - [ ] 剩余风险清单是否清晰可逐个确认？
10. 汇报剩余风险 + 证据链

## 修复原则（BEHAVIOR_SPEC.md §2.4）

- 最小改动优先 / 不重构 / 不加功能 / 不改架构
- 优先加小回归测试

## TDD 约束

- 修复前必须有测试覆盖（已有测试或新建测试）
- 顺序强制：写测试 → 确认测试失败（复现 bug）→ 最小修复 → 确认测试通过
- 代码先于测试存在 → 回退代码，从写测试开始重走
- 例外场景（必须在报告中注明，不可静默跳过）：
  - 无法自动化测试的 UI 动效
  - 硬件交互 / 外部 API 不可控
  - 纯配置变更（无逻辑代码）

## 偏离处理（BEHAVIOR_SPEC.md 第四章）

| 次数 | 动作 |
|------|------|
| 第 1 次 | 自查，回滚 |
| 第 2 次 | /drift-auditor 深度审计 |
| 第 3 次 | 冻结 → 人工介入 |

