Repository navigation
ci(ui-merge): Type Check UI builds the five vitest-setup packages before that step, so an empty ui scope no longer reds it - #25856
Conversation
…UI's vitest-setup step On a pull_request whose ui affected scope is empty, the type-check step runs no task and builds nothing under ui/packages/*/dist, so tsconfig.vitest-setup.json's package-directory paths found no declarations. The new step builds those five packages unconditionally; turbo replays them from the restored cache when they were already built. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DoFgrZuLrgVbaH4Z7Fb3Mu
|
The same shard is red on
No open PR fixes 8/16 or 9/16 yet. #25852's own run (6015709) is still red on both. I'm reporting them to the epic PM for a card. They are out of this card's scope, so this PR does not widen to cover them. Generated by Claude Code |
⛔ merge queue 构建失败 — 先分诊,再决定要不要重排队列构建 40252576788 红了。队列跑的是全量套件(PR 侧 CI 只跑 affected 子集), 分类: 失败的 job(日志抽取,best effort):
跨 PR 相同签名(24h,按失败测试文件聚合):
历史信号:
分诊清单:
Generated by Claude Code · merge-queue-triage workflow (#4859) |
Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01A6SEitNngAMugGbuJHWsDS
Requested by Tesla · project thread
Fixes #25855
Part of #25677 (cutover aftercare, bill item 49).
Clause-②: no
Metadata-protocol: none
What was red
Type Check UIon PR B #25827 headf973a4f3fd(run 40245604632, job 121326496328): the step "Run type-check over the ui packages" took 0 s — itsturbo run type-check --filter=...[base]affected scope was empty, so no task ran and nothing underui/packages/*/distwas built. The next step,pnpm --dir ui run type-check:vitest-setup, then failed:ui/tsconfig.vitest-setup.jsonmaps@object-ui/components,@object-ui/fields,@object-ui/plugin-dashboard,@object-ui/plugin-gridto their package directories and@object-ui/i18n/*topackages/i18n/dist/*, and all of them resolve through built declarations.The same job is green on a diff that changes ui packages (#25852 head
6015709368, run 40248884869), because there the type-check step's^buildbuilt them first. The red follows the diff, not the tree.The fix
One step in
ci.ymltype-check-ui, directly before the vitest-setup step:Turbo's
buildtaskdependsOn: ["^build"], so their dependencies build too. The step is unconditional. When the type-check step (ormain's turbo cache, which the job already restores) has built these packages, turbo replays them from cache.The job's
if:is unchanged, and no step is skipped.Why not resolve from source instead. The card asked for both routes to be measured.
ui/tsconfig.vitest-setup.json's ownpathscomment already records the measurement: mapping the four packages tosrc/gives 484 errors across 318 foreign source files, and mirroring the full 42-entry alias map still leaves 30 errors, 24 of themnoImplicitAnyresidue insidepackages/components/src. Fixing that route would mean turningnoImplicitAnyoff for the four files this program exists to check. So the build route is the only one that can be green, and it costs no wall-clock on a cache hit.Cost
Durations of the
Type Check UIjob, before this change:After this change: this PR's own run (an empty ui scope by construction) gives the number. It goes into the os-dev report on #25855 once the run completes.
Verification
ui/package, soType Check UIgreen here is the fix.node scripts/pm/dispatch-gates.mjs --commands, 56 commands): results are in the os-dev report on ci(ui-merge):Type Check UIis red on every PR whose ui affected-scope is empty —type-check:vitest-setupcompiles against unbuilt@object-ui/*dists after turbo built nothing (bill item 49) #25855.维护者速读(草稿)
ci.yml的Type Check UI任务里,在 vitest setup 类型检查之前加了一步,用 turbo 构建它依赖的五个@object-ui包。ui/包,上一步什么都不构建,这一步就会因为找不到这五个包的类型声明而变红。这个红跟 PR 内容无关,所以Type Check UI一直没法加进必需检查。Type Check UI加进必需检查。Generated by Claude Code