chore: establish YCode replication baseline and TODO

This commit is contained in:
xiaohan.yuan committed 2026-10-17 02:43:49 +08:00
commit 6dc59f89ba
1118 files changed
+196002

No files matched your search

+41
View File
@@ -0,0 +1,41 @@
# Responses 真实 OMP 集成验收(2026-10-16)
结论:统一构建后的生产 Electron App/preload/IPC → **真实 OMP executable** → 受控 Responses HTTP/SSE 上游已通过 **28/28**。验证完整 `/v1/responses` 配置、两轮对话历史、禁工具、认证以及开放 SSE 取消。受控服务的成功不代表用户实际远程上游已恢复,也不代表 WorkBuddy 功能/视觉 1:1 验收。
## 修改范围
- 新增 `scripts/verify-responses-integration.cjs`。
- 新增本结果文档。
- 未修改 production/main/store/package;未读取或修改用户真实模型注册表,未调用真实用户上游,没有观察原版 WorkBuddy。
## 验证方法
脚本创建独立 `.tmp/responses-integration-*`,分别设置 userData、sessionData、YCODE_OMP_HOME;通过真实 preload `app.info()` 断言 configDir 必须等于该隔离 data 目录,之后才保存模型与创建空间/会话。真实模型明文密钥只在隔离进程生成,报告只记录 Authorization 存在及匹配布尔值;不保存任意 OMP stderr,不返回已有明文密钥。
服务只监听 `127.0.0.1` 随机端口,接收实际请求,没有替换 production IPC 或 OMP。真实 SSE 依次发送 `response.created`、`response.in_progress`、`response.output_item.added`、`response.content_part.added`、`response.output_text.delta`、`response.output_text.done`、`response.content_part.done`、`response.output_item.done`、`response.completed`,完成响应包含 usage。第三轮发送真实 partial delta 后保持连接开放,调用 production chat.cancel 检查终态。
如果真实 OMP 首轮进入 error,脚本会停止,并在 report 中保留 preload 的实际 events/messages/error;不会切换成 Chat 协议绕过失败。
## 命令与结果
- `node --check scripts/verify-responses-integration.cjs`:退出 **0**。
- Root 统一 `npm run build` 完成后,`node scripts/verify-responses-integration.cjs`:退出 **0**,**28/28 PASS**。
- 机器报告:`.tmp/responses-integration-UbxGhB/report.json`。
- 受测 production `out/main/index.mjs` SHA-256:`3bb668280e3a6b5386e787517afc6dfea466006400f1e64fc01a4687b2c6d462`。
| 真实请求 | 路径 | stream | 模型 | tools | max_output_tokens |
|---|---|---|---|---:|---:|
| production models.test | `/v1/responses` | false | `responses-fixture` | 0 | 16 |
| OMP 首轮 | `/v1/responses` | true | `responses-fixture` | 0 | 1234 |
| OMP 第二轮 | `/v1/responses` | true | `responses-fixture` | 0 | 1234 |
| OMP 取消轮 | `/v1/responses` | true | `responses-fixture` | 0 | 1234 |
四个请求的受控 Authorization 均存在且精确匹配测试密钥,没有 endpoint 双拼。models.test 返回连接测试成功,耗时 37ms。首轮与次轮分别进入 done,实际内容精确为服务的两个不同 reply 标记。第二轮真实 input roles 为 `user,assistant,user`,包含首轮 user prompt、首轮真实 assistant reply 和第二轮 prompt。
第三轮实际收到 `RESPONSES_CANCEL_PARTIAL` 后取消,持久消息状态为 cancelled,partial 内容保留,preload terminal events 恰好一个 `cancelled`,没有混成 done/error。两轮正常终态均为 `text → done`。
真实 OMP transcript 已写入隔离 `data/omp-sessions/session-*.jsonl`。实际生成 profile 选择 `api: openai-responses`,baseUrl 为受控服务 `/v1` 前缀,模型 `responses-fixture`,contextWindow 8192、maxTokens 1234、input `[text]`、reasoning false;密钥配置为环境变量名 `YCODE_MODEL_API_KEY`,YAML 不含受控明文密钥。
## 范围与未验项
本轮覆盖网络失败/取消要求中的**取消**分支,没有重复发送网络失败轮。真实用户 endpoint 的网络可达性、鉴权和供应商协议兼容性仍需在用户已授权的真实重试中单独确认。未覆盖 Responses function tool、图片、reasoning、复杂多 output item、服务端错误格式及 interrupted stream 后重试。没有以受控 Responses fixture 代替真实上游成功结论。