diff --git a/docs/project-memory/plans/【实施计划】导出产物面板与小红书小工具导出-2026-10-05.md b/docs/project-memory/plans/【实施计划】导出产物面板与小红书小工具导出-2026-10-05.md index fccc850f6..006d8575d 100644 --- a/docs/project-memory/plans/【实施计划】导出产物面板与小红书小工具导出-2026-10-05.md +++ b/docs/project-memory/plans/【实施计划】导出产物面板与小红书小工具导出-2026-10-05.md @@ -58,6 +58,9 @@ 已验证:Rust `export::` 49 例(`export::draft::xhs_minitool` 33 例)、`export_bindings` 115 例、`project_snapshot` 22 例、`check:generated-bindings`(117 个文件)、前端 vitest 15 例(新增 11 + 既有 4)、`ai-game-creator-shell:typecheck`、`agc:skill-pack:check`、`check:doc-index`、`check:encoding`、`git diff --check`。 -未验证(唯一开口项):真实 vite 项目上的首轮适配闭环——agent 跑通 `build:xhs-minitool`、产出可上传 zip、二次导出零 agent 调用;以及 `.export/` 换机后重新适配的体感。宿主侧这一段已尽力自动化:`build.rs` 的 `executes_the_project_script_and_requires_a_non_empty_artifact_each_time`(`#[ignore]`)会真起进程执行项目脚本,覆盖「第一次产出 → 删掉产物再跑一次重新产出 → 脚本成功但没产出报 artifactMissing」。本机尝试运行被容器环境挡下:沙箱里解析到的 `npm` 是 fnm 包装脚本、却由另一个 node 版本执行(`Cannot find module '../lib/cli.js'`,`Node.js v26.10.0`),同一脚本在普通 shell 里 `npm run build:xhs-minitool` 正常产出 zip。该用例留给有健康沙箱与 node 环境的机器一键复跑。 +未验证(唯一开口项):真实 vite 项目上的首轮适配闭环——agent 跑通 `build:xhs-minitool`、产出可上传 zip、二次导出零 agent 调用;以及 `.export/` 换机后重新适配的体感。宿主侧这一段已尽力自动化:`build.rs` 的 `executes_the_project_script_and_requires_a_non_empty_artifact_each_time`(`#[ignore]`)会真起进程执行项目脚本,覆盖「第一次产出 → 删掉产物再跑一次重新产出 → 脚本成功但没产出报 artifactMissing」。本机尝试运行被容器环境挡下,读日志时注意两点、别误判成 bug: +- 子进程输出里的 `running 1 test` 是**预期现象**:命令沙箱的垫片就是当前可执行文件本身(`desktop.rs` 按 `--command-sandbox-trampoline` 分流),编译到测试态时 `sandbox_trampoline_arguments()` 会改成 `--exact ...trampoline_child_fixture --ignored`,所以垫片进程是测试二进制在跑那一个 fixture 用例。 +- 真正失败的是沙箱里的 `npm`:解析到的是 fnm 包装脚本、却由另一个 node 版本执行(`Cannot find module '../lib/cli.js'`,`Node.js v26.10.0`)。同一脚本在普通 shell 里 `npm run build:xhs-minitool` 正常产出 zip,因此不是代码问题。 +该用例留给有健康沙箱与 node 环境的机器一键复跑。 已知环境噪声:本机全量 `cargo test --bin` 有 12 例与本变更无关的失败(`process_session` / `command_sandbox_trampoline` / `runner` 的 pty 与 GUI 锁、`resource_editor` 的外部 HTTP 连接被拒),失败用例均不经过本次改动的路径。