跳转至

构建与修复

通过最小且安全的变更,增量修复构建错误和类型错误。

第 1 步:检测构建系统

识别项目的构建工具并执行构建:

指示器 构建命令
带有 build 脚本的 package.json npm run build 或 pnpm build
tsconfig.json(仅 TypeScript) npx tsc --noEmit
Cargo.toml cargo build 2>&1
pom.xml mvn compile
build.gradle ./gradlew compileJava
go.mod go build ./...
pyproject.toml python -m py_compile 或 mypy .

第 2 步:解析并分组错误

  1. 执行构建命令并捕获 stderr
  2. 按文件路径对错误进行分组
  3. 按依赖顺序排序(先修复导入/类型错误,再修复逻辑错误)
  4. 统计错误总数以跟踪进度

第 3 步:修复循环(每次一个错误)

对于每个错误:

  1. 读取文件 — 使用 Read 工具查看错误上下文(错误周围 10 行)
  2. 诊断 — 识别根本原因(缺失导入、类型错误、语法错误)
  3. 最小化修复 — 使用 Edit 工具进行能解决错误的最小变更
  4. 重新运行构建 — 确认错误已消失,且未引入新错误
  5. 继续下一个 — 继续处理剩余错误

第 4 步:护栏

如果出现以下情况,请停止并询问用户: - 某项修复引入的错误多于其修复的错误 - 同一错误在 3 次尝试后仍然存在(可能存在更深层次的问题) - 修复需要架构变更(不仅仅是构建修复) - 构建错误来自缺失的依赖项(需要 npm install、cargo add 等)

第 5 步:摘要

显示结果: - 已修复的错误(包含文件路径) - 剩余错误(如有) - 引入的新错误(应为零) - 针对未解决问题的建议后续步骤

恢复策略

情况 操作
缺少模块/导入 检查包是否已安装;建议安装命令
类型不匹配 读取两个类型定义;修复较窄的类型
循环依赖 通过导入图识别循环;建议提取
版本冲突 检查 package.json / Cargo.toml 中的版本约束
构建工具配置错误 读取配置文件;与可用默认值进行比较

为了安全,每次只修复一个错误。优先选择最小差异,而不是重构。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 ev/ECC