SuperAPI AI 工具集

fix-bug

编程与开发

查看项目

更新于 10-16 01:08

技能介绍

用途:该技能用于修复 React Router 仓库中由 GitHub issue 报告的 bug。当用户提供 issue 链接并要求修复、调查或复现问题时使用。

主要能力与流程:

  1. 分支:从干净的 main 分支新建 {author}/{semantic-branch-name} 分支,例如 git branch brophdawg11/fix-navigation main 与 git checkout brophdawg11/fix-navigation。
  2. 理解 issue:用 gh issue view <number> --repo remix-run/react-router 或 WebFetch 读取完整 issue,提取 bug 描述、期望与实际行为、React Router 版本与模式(Declarative / Data / Framework / RSC)、代码片段与复现链接。
  3. 验证复现:读取 StackBlitz/CodeSandbox 或 GitHub 仓库中的关键文件,定位触发 bug 的事件序列;若无复现链接,则查看评论或向用户索要最小复现。
  4. 定位代码:按区域查找源文件,如核心路由 packages/react-router/lib/router/router.ts、组件与 hooks、DOM 工具、Vite 插件 packages/react-router-dev/vite/plugin.ts、RSC 目录等,用 Grep 与 Glob 追踪代码路径。
  5. 编写失败测试:单元测试放在 packages/react-router/tests/,用 Jest 运行 pnpm test packages/react-router/tests/<file>;集成测试放在 integration/,用 Playwright,运行 pnpm test:integration:run --project chromium integration/<file>。测试须在修复前失败。
  6. 实施修复:做最小改动,不重构无关代码,确认解决根因,并考虑五种模式是否受影响;随后运行 pnpm test packages/react-router/、必要时运行集成测试,并执行 pnpm lint 与 pnpm typecheck。
  7. 变更文件:在 packages/<package>/.changes/<type>.<unique-meaningful-name>.md 创建变更文件,type 为 patch、minor、major 或 unstable,内容格式为 fix: <简要说明>。
  8. 报告与 PR:总结 bug 原因、改动内容、测试通过情况与边界情况,请用户审阅;获批后提交并向 main 开 PR,描述中包含 Closes #NNNN 并关联原 issue。

限制:资料未提供该技能的安装方式、收费、平台支持范围或效果保证;具体命令与路径以仓库实际为准。