用途:在 Daytona 沙箱内启动并驱动真实的 OpenWork Electron 应用,通过 CDP 浏览器工具完成端到端测试、远程复现缺陷、验证 UI 流程,无需本地安装 Electron。适用于用户提出“test on Daytona”“run the app on Daytona”“Daytona dry run”等场景。
主要能力:从可复用的 openwork-eval-vnc 快照创建支持 VNC 的沙箱,检出指定 ref,按需安装依赖,启动 XFCE/noVNC、Vite、Electron 并等待 CDP;覆盖工作区创建、会话交互、设置验证和缺陷复现。
使用方式:在仓库根目录运行 bash .devcontainer/test-on-daytona.sh [branch-or-commit] --artifacts-volume,脚本会输出 CDP 与 noVNC 地址。运行 E2E 测试使用 OPENWORK_EVAL_E2E_TESTS=1 OPENWORK_EVAL_DAYTONA=1 pnpm --dir evals exec vitest run --config vitest.config.ts --project e2e specs/<slug>.e2e.test.ts。手动检查时用 browser_list 连接 CDP,并用 browser_eval 检查 navigator.userAgent 是否包含 Electron/。端口:noVNC 6080、Vite 5173、CDP 9825。
限制:快照不含 node_modules,依赖安装复用 openwork-eval-pnpm-store 卷;密钥应放入 openwork-eval-secrets:/daytona-secrets,不要写入仓库文件;重启 Electron 时不要在同一次 daytona exec 中串联 pkill 与重启命令;分享截图前需检查 PNG 是否被原生弹窗或无关覆盖层遮挡。