ci(macos): Mac mini runner 上 AgentBrandIconResourceTests 品牌图标渲染测试必然失败
Maintainer thường phản hồi trong vòng 1 ngày
@1lck đang làm issue này rồi.
Từ ngày 17/10/2026.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
现象
AgentBrandIconResourceTests.composerBrandMarksStayVisibleInNativeMenus(name:isDark:)(macos/Tests/LitheTests/AgentBrandIconResourceTests.swift)在 Mac mini 自托管 runner 上有 3 个用例必然失败:
- Claude / 浅色
- Claude / 深色
- Codex / 深色
三个用例的断言都是:
Expectation failed: (markPixels → 0) > 10
也就是对原生 Agent 选择菜单的图标区域截图后,一个品牌图标像素都没统计到。Codex / 浅色能通过;其余测试全部通过(这一轮共 2262 个测试,只有这 3 个用例失败)。
示例失败日志:https://github.com/1lck/Lithe-IDEA/actions/runs/38992103274/job/117276751213
影响范围
#1262(2026-10-16 合入 preview)把 macOS CI 改成按空闲池动态分配 Mac mini runner。从那以后,最近 100 次已完成的 CI 里,凡是实际执行了 Swift tests 的任务全部失败,而且都失败在这个测试上:
| 分支 | Runner |
|---|---|
feat/issue-1250-archived-agent-history(#1286) |
mac-mini-2、xin53deMac-mini |
feat/process-termination-policy(#1285) |
xin53deMac-mini |
feat/agent-context-ring-appear-on-first-report |
xin53deMac-mini |
codex/git-terminal-resize |
mac-mini-3 |
目前所有 ready PR 的 macOS CI 都因此过不了。preview 自己最近几次运行的 Swift tests 是 skipped,所以在 preview 上看不出这个问题。
和 PR 改动无关的依据
- 上面这些 PR 都没有改过
AgentComposerView、品牌图标资源或这个测试。 - 本地(Darwin 27,比 CI 的 Xcode 26.6 更新)在 #1286 分支上执行
./.agents/skills/write-stable-tests/scripts/test-stability-macos.sh -- --filter AgentBrandIconResourceTests,3 个用例全部通过。
可能的原因(尚未验证)
这个测试用 cacheDisplay 截取原生 Menu label 的区域,再统计像素。Mac mini runner 上可能是以下情况之一:
- 没有真实的 WindowServer / 图形会话,原生控件截出来是空白;
- Xcode 26.6 SDK 下原生
Menulabel 的位置或配色不一样,固定的裁剪区域没有覆盖到图标。
建议
- 先在一台 Mac mini runner 上单独执行这个测试,确认是上面哪一种情况。
- 如果是图形会话的问题,修 runner 准备脚本;如果是渲染差异,调整测试的取样方式。
- 无论哪种,都需要保留这个测试原本的意图:原生选择器里能看到品牌图标,且共享的 template 图片没有被修改。不要直接跳过这个测试。
- Ngôn ngữ chính
- TypeScript
- Star
- 1.8k
- Fork
- 151
- Merge trung bình
- 11 giờ 26 phút
- Pull request đã merge (30 ngày)
- 429
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của 1lck/Lithe-IDEA
-
review: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
1lck/Lithe-IDEA#1670 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:editor bug P0 platform:macos review: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
1lck/Lithe-IDEA#1118 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug issue-form:bug review: low
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
1lck/Lithe-IDEA#1761 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug issue-form:bug review: low
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
1lck/Lithe-IDEA#1749 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:logging enhancement P2 platform:macos review: high
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
1lck/Lithe-IDEA#1721 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của 1lck/Lithe-IDEA
Issue tương tự
-
Cleanup SetupCó thể đã có người làm @AlexanderKaran đã nhận hôm nay. Đang mởdocumentation enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
e18e/framework-tracker#769 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
fix(docker): correct stale --db-path comments in fetch/git Dockerfiles and clarify git READMEĐang mởbug v2
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
modelcontextprotocol/servers#5483 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 84/100
XiaomiMiMo/MiMo-Code#2783 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: web bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
kinqsradio/orbyn-engineering#227 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
joeldesante/TurfBuilder#258 ·
Maintainer thường phản hồi trong vòng 1 ngày