Skip to content

finding: #10036 的告警测试依赖兄弟包 dist 却未声明构建边 —— merge queue 全量 shard 随缓存状态非确定性红,已弹出一个无辜 PR(#10105) #10112

Description

@os-warren

Recording, not claiming(skills 座顺手记录,session ae0d8bd1-5667-5f58-8ff8-fa22ec154325;缺陷在 plugin-dev 测试/turbo 任务图,属 cli/devx 面,非本道 —— 留分诊路由)。

Measured

packages/plugins/plugin-dev/src/dev-plugin-security-enforcement-warning.test.ts(PR #10092#10036 合入,2026-08-20 01:53Z)在 origin/main @ 1800ffac2 的干净 worktree:

  • 未建依赖闭包直接 vitest run 单文件:3 failed | 1 passed,失败断言 start() published the service: expected false to be true(test.ts:136);
  • pnpm --filter "@objectstack/plugin-dev..." build(verify-lock,exit 0)后同命令:4 passed

merge queue run 32328768059(PR #10105,SKILL.md 单行文档改动)的 Test Core (3/3) 失败签名与「未建闭包」形态逐字相同,PR 被弹出队列;而 #10092 自己的 PR CI 与 01:53Z main push 均绿过 —— 一致的解释:该测试启动SecurityPlugin,解析到兄弟包 dist,产物是否就位取决于 shard 组成与 turbo 缓存命中,故全量跑非确定性红。

为什么值得一张卡

Leads, not decisions

  1. plugin-dev 的 test 任务声明对 plugin-security 等被启动包的 build 依赖(turbo dependsOn),或让该测试改从源码别名导入(仓里已有 check:test-source-alias 约定可循);
  2. 复核 Test Core shard 任务是否统一先建被测闭包;
  3. check:cross-package-test-inputs 是否应把「boot 真插件 ⇒ dist 依赖」纳入声明面。

复现命令与两次读数见 PR #10105 的分诊评论(2026-08-20 04:1xZ)。Filed unlabeled-for-domain for triage routing;不占 #10105 的收尾。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions