用途:该技能用于处理 PostHog 单体仓库中在 CI 间歇失败的测试(flaky test),接管已归类为 flaky 的场景,指导从复现到验证的全流程。调试 CI 红失败先使用 debugging-ci-failures 技能,编写新 Playwright 测试用 playwright-test 技能。
主要原则:三个不可妥协点——先复现再修复;仅在升级阶梯耗尽时才用分析方法;修复根因,不用 sleep、放宽超时、重试或弱化断言掩盖;用 N 次运行循环验证,N 依据观测失败率。先测量而非假设:flaky 与确定性的判定及速率来自 GitHub Actions API 或 GitHub MCP 的原始运行数据。hogli ci:insights 只是摘要,不是判定权威;Trunk Flaky Tests 仅作佐证与历史。
主要能力与步骤:1)从 GitHub 拉取通过/失败历史,建立时间线,区分真 flaky、确定性回归与环境相关竞态;2)用 gh run view <run-id> --log-failed 提取失败日志、精确测试 ID 和周边警告;3)按阶梯本地复现,循环用退出码判断,必要时模拟 CI 条件;4)按症状表定位原因类,辅以 CI 历史边界或 git bisect,涵盖 Jest+kea 的 MSW 缺失 mock、toFinishAllListeners 超时、pytest 的 DB 状态泄漏、真实时间、ClickHouse 最终一致性等 PostHog 特定模式;5)决定结果:修复、调整测试层级或删除,删除需用户明确批准。
限制:具体运行参数与仓库配置以实际仓库为准;AI 调查未在该仓库启用,部分工具仅返回历史;缺失的收费、许可或版本细节暂未提供。