[CI] PR侧与push侧CI结果不一致 - Code Quality两侧结果矛盾 #914

Closed
opened 2026-07-26 08:48:40 +08:00 by xiaoxia · 0 comments
Owner

问题描述

同一个check(Code Quality/ruff),在PR侧和push侧结果完全不同:

  • PR侧:100%通过
  • push侧(develop分支):0%通过,持续报错

这导致"PR绿、主分支红"的奇怪现象——PR合并进develop后立刻变红,但PR本身是绿的。

铁证

影响

  • 开发者体感CI是好的,但主分支其实一直是红的
  • CI没有真正起到保护主分支的作用
  • 问题会越积越多,最后变成技术债务

可能原因(待排查)

  1. PR侧只检查变更文件(diff模式),push侧检查全量
  2. 两侧的ruff配置或命令参数不同
  3. PR事件和push事件触发的job配置不同

修复方向

  1. 对比ci-pipeline.yml中PR和push事件的Code Quality配置
  2. 如果是diff模式导致的,评估是否需要在PR侧也做全量检查
  3. 确保两侧检查标准一致,让CI真正保护主分支
## 问题描述 同一个check(Code Quality/ruff),在PR侧和push侧结果完全不同: - **PR侧**:100%通过 - **push侧(develop分支)**:0%通过,持续报错 这导致"PR绿、主分支红"的奇怪现象——PR合并进develop后立刻变红,但PR本身是绿的。 ## 铁证 - PR侧:最近10个业务PR的Code Quality全部通过 - push侧:最近5次develop push的Code Quality全部失败(F632+F811,共2个错误) - CI Run #11418 Job #60100(push侧):https://git.xiaoxiajianji.com/xiaoxia/xiaoxia-saas/actions/runs/11418/jobs/60100 ## 影响 - 开发者体感CI是好的,但主分支其实一直是红的 - CI没有真正起到保护主分支的作用 - 问题会越积越多,最后变成技术债务 ## 可能原因(待排查) 1. PR侧只检查变更文件(diff模式),push侧检查全量 2. 两侧的ruff配置或命令参数不同 3. PR事件和push事件触发的job配置不同 ## 修复方向 1. 对比ci-pipeline.yml中PR和push事件的Code Quality配置 2. 如果是diff模式导致的,评估是否需要在PR侧也做全量检查 3. 确保两侧检查标准一致,让CI真正保护主分支
xiaoxia self-assigned this 2026-07-26 08:52:18 +08:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: xiaoxia/xiaoxia-saas#914