SuperAPI AI 工具集

diagnose-a-red-run

测试与质量

查看项目

更新于 10-15 21:11

技能介绍

用途:在改动代码或下结论前,先对红色失败(测试、类型检查、构建、lint、CI 任务)做分类诊断,判断是既有问题、新引入、环境相关还是未解决。

主要能力与流程:

  1. 捕获失败现场:记录确切命令、commit SHA、退出码、通过/失败/跳过数量,引用首个可操作的失败信息,不做概括性抹除。
  2. 分类检查类型:testkit spec、单元套件、typecheck、build、lint 或 CI job。
  3. 运行干净对照:不得凭记忆或修改过的检出判定为既有失败。使用 git fetch origin dev、git worktree add /tmp/openwork-dev-control --detach origin/dev,在干净 worktree 中准备相同前置条件并运行同一命令,之后 git worktree remove /tmp/openwork-dev-control。保持工具版本、环境、服务、标志与密钥一致,并引用对照命令、origin/dev SHA、退出码、计数与匹配的失败文本。只有干净对照复现同一失败才可判为既有;否则归为新引入、环境特定或未解决。对照不复现不等于 flaky,需两侧重复后再用该标签。
  4. 按特征分类:单元/类型/仅 CI 失败先查首个失败 job 并在本地运行其确切命令;相同像素的视觉分歧归为措辞或产品歧义;带 On-screen dump 的超时需阅读,例如 /session 可能暴露 steer-back 竞态;Auth 403 INVALID_ORIGIN 检查 Den trusted origins;授权 URL 指向真实 provider 说明 Den 未以 mock 环境启动;Teardown 403 fresh_auth_required 表示会话过期,存在 freshSession 重试。
  5. 环境取证:按端口而非进程名杀进程,tsx watch 可能遗留 Node 子进程占用端口而 /health 说谎;日志出现 EADDRINUSE 但健康检查返回 200 说明有僵尸进程;Electron 僵尸可能从根进程重生,需杀进程组;泄漏状态会污染 organizations,运行间删除残留连接器。
  6. testkit 失败:先读测试运行最后未验证的产物再动代码,可用 publish-evidence 发布有用的红色测试证据,它仅作人工审计,不代表通过结论。

限制:资料未提供安装方式、收费、平台支持与具体产品集成细节。