From e816c1fd39cd20634838f3d715f88fb7b747d836 Mon Sep 17 00:00:00 2001 From: jkooe <62494645+jkooe@users.noreply.github.com> Date: Sun, 11 Oct 2026 09:00:09 +0800 Subject: [PATCH] =?UTF-8?q?fix(ci):=20Windows=20=E4=B8=8A=E8=A1=A5=20sidec?= =?UTF-8?q?ar:build=20=E2=80=94=E2=80=94=20=E6=96=B0=E5=8A=A0=E7=9A=84?= =?UTF-8?q?=E6=AD=A5=E9=AA=A4=E6=BC=8F=E4=BA=86=E5=89=8D=E7=BD=AE=E4=BA=A7?= =?UTF-8?q?=E7=89=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 本轮新增的「控制台 Node 运行时(Windows 分支)与自举验证」一步在真实 runner 上失败: ✗ 未找到 D:\a\nodeagent\nodeagent\apps\console\sidecar\dist\sidecar.mjs 根因:prepare-console.mjs 的前置检查要求 sidecar 已构建,而该步被排在了构建 sidecar 之前 (rust.yml 里恰好已有「构建 sidecar」在前,所以那边没暴露)。 教训(本地跑过 ≠ CI 跑得过,又一例):本地验证时 sidecar/dist 早已存在, 把「步骤之间的产物依赖」这一层完全掩盖了。**新增 CI 步骤时,应逐条核对 「该步依赖的产物由哪一步生成、顺序是否确实在其后」,而不是在已有产物的本地环境里跑一遍就认为通过。** --- .github/workflows/windows-e2e.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/windows-e2e.yml b/.github/workflows/windows-e2e.yml index 661516d..d1c638b 100644 --- a/.github/workflows/windows-e2e.yml +++ b/.github/workflows/windows-e2e.yml @@ -52,8 +52,11 @@ jobs: # 控制台「随包分发的 Node 运行时」在 Windows 上的分支此前零覆盖 # (准备脚本本机只在 macOS 上跑过)。此处真跑:复制 node.exe(无 strip 分支)→ # 自检可执行 → 再验证它与 sidecar 能否走通一次 JSON-RPC 自举。 + # ⚠️ 必须先 sidecar:build —— prepare-console.mjs 的前置检查要求 sidecar.mjs 存在 + # (首次推送时漏了这步,CI 在 Windows 上当场报「未找到 sidecar/dist/sidecar.mjs」)。 - name: 控制台 Node 运行时(Windows 分支)与自举验证 run: | + pnpm --filter nodeagent-console sidecar:build pnpm --filter nodeagent-console prepare:node node apps/console/scripts/verify-bundle.mjs --runtime