Files
Mujoco_WASM/docs/website-acceptance-2026-09-24.md
chenlin 0d986f60bd
web-platform-ci / Standalone decision service (no cloud credentials) (push) Has been cancelled
web-platform-ci / TypeScript, lint, unit, build (push) Has been cancelled
web-platform-ci / Playwright E2E (push) Has been cancelled
lekiwi-compatibility / cpu-compatibility (push) Has been cancelled
feat: release v1.0.2 LeKiwi 语言控制与网站嵌入
集成服务器托管模型、自然语言移动与有界抓放、内置 LeKiwi URL 导入和双摄像头;同步部署契约与指定域名 iframe 白名单,保留原有物理安全、会话及调用预算防护。

更新 npm 包及锁文件版本、CHANGELOG 与发布文档。提交前 typecheck、120 项定向前端测试和 44 项后端测试通过(3 项可选跳过);真实 v2 云模型抓放仍待单独验收,不包含运行密钥或构建产物。
2026-09-24 15:29:49 +08:00

4.9 KiB
Raw Permalink Blame History

公网 API 受控验收与能力边界修补 · 2026-09-24

本文是当天较早 BYOK 阶段的历史证据。用户随后改为服务器内置固定模型并要求语言移动/转向;当前实现与验收以 最新记录 为准。

实际授权与付费调用

用户明确批准使用项目 .env 的 DeepSeek、Jev 两项测试密钥,仅按变量名通过既有凭据加载器读取,不 source 文件,不打印值,不使用全局 Codex 账号。

仅运行一次公网 HTTPS 真实回合:

  • 服务器:cadworld-sim.robotquan.com,当时发布 20260923T130923Z-web。
  • 真实上游:DeepSeek deepseek-flash(Responses)与 OpenRouter typesafe/jev-1.13(decisions)。
  • 限额:最多 1 次规划/12 次判定;禁用重试、连接测试和提供方/型号切换。
  • 实际:1 次规划+11 次判定,12 份服务回执,物理验收成功。
  • 仿真 47.220 s、有效搬运 0.5937274002 m,最终目标支撑成立,两指力均为 0。
  • DeepSeek 报告输入 912、输出 814、合计 1726 token,未报告费用。
  • Jev 报告输入 15,307、输出 2,196 token,合计费用 $0.000642894。该数不包含 DeepSeek,也不是完整账号账单。
  • 测试结束 DELETE 会话成功;浏览器关闭,没有保存 Cookie/storage state/trace/HAR,输入框保存后清空,导出通过凭据泄漏检查。

这只证明固定单方块抓放场景的真实双 API 闭环,不能证明任意中文指令可控制机器人。

证据:build/website-deployment/live-20260924/ 下的 website-live-summary.json、website-live-physical-evidence.json 和成功截图。

两个问题的原因与处理

订阅点击后不打开网页

当前设计是官方设备码登录:服务器先申请设备码与验证地址,再由用户点击官方链接;不是按钮直接自动弹窗。服务器实测 auth.openai.com 返回 403,ChatGPT 推理地址连接被拒绝;真实设备码请求仍返回 502 / codex_rpc_failed,没有生成可使用的设备码/链接。

已将状态和错误移到登录按钮旁,明确申请步骤及没有验证链接的情况。未改用非官方中转,未借用全局账号,未自动切付费 API。服务器网络/官方资格问题未解决,订阅仍不可用。最终容器内活动 Codex 进程数为 0。

编辑中文指令但动作不变

MockDecisionProvider.plan() 不读取指令;真实规划契约也强制固定物体、固定技能顺序,动作目标由场景坐标决定。原界面允许任意编辑会造成“指令已生效”的错误预期。

本次网站防误执行保护:

  • 明确标注“固定单方块抓放,非自由中文任务控制”。
  • mock 模式禁用无效的指令编辑。
  • 自定义指令在开始前被拦截,不加载旧任务、不调用模型,并提供恢复标准指令按钮。
  • 放置目标仍通过已有受限坐标修改,安全门禁不变;本地模式行为保留。

尚未实现把任意中文转换为新任务。 待用户提供具体希望执行的指令后,才能确定所需技能、任务约束与验收;不能用取消安全顺序验证来假装支持。

修补发布与非付费回归

  • 新发布:20260924T023534Z-web;可回滚:20260923T130923Z-web。
  • 后台代码未改变,镜像仍为 sha256:f3375d42b54f6bbdb65d31ba275d6fd6c415917b71a2f01f4cdb6893d9f1678c,healthy。
  • v1.0.1 Git 标签保持不动;本次修补未另行提交 Git。
  • TypeScript/ESLint、615 项 Vitest、local/website 双生产构建通过。
  • 网站生产资源+真实网关/假上游 E2E 2/2;公网订阅边界与 mock 物理回合通过。
  • 公网设置/新指令拦截/Pyodide用例首次因 getByLabel(exact) 对包裹 textarea 的 label 文本匹配失败;改用可访问 textbox 角色后单独复测通过,未修改业务代码来放宽断言,失败证据保留。
  • 未重复付费验收;新发布只更改前端提示/启动保护,标准任务及后台推理代码未变。

部署/非付费证据:build/website-deployment/{publish-20260924.txt,production-20260924,production-guards-recheck-20260924,website-guards-20260924}/。

第 9 步剩余项

DeepSeek+Jev 完整回合与订阅受限状态已验证。原计划另要求一个 OpenRouter 主规划模型的单次真实结构化输出;本次批准的是 Jev 角色密钥,没有将其静默挪作其他模型用途。因此该项仍待用户确认独立角色/具体模型及单次调用许可,第 9 步不虚假标记全部完成。

显式重跑命令(会计费,需重新获准)

CADWORLD_LIVE_API=1 npx playwright test \
  -c web_platform/playwright.website-live.config.ts \
  --output build/website-deployment/live-<日期>

不要开启 trace、录屏、storageState、自动重试或调试日志,不要把真实密钥写在命令行。普通测试不会自动执行该用例。