Skip to content

[ChatGPT Web 2/8] Codex 经 Gateway 使用真实网页文本 #569

Description

@NOirBRight

Parent

#567

What to build

用户在 Codex CLI 与 Desktop 的正常模型列表中选择 ChatGPT Web,经现有 Gateway 获得真实流式文本、多轮上下文与有效取消。

本任务属于用户批准的同一首版:自动管理独立运行组件、单 ChatGPT 账号、Codex CLI/Desktop + Claude Code + OpenCode、完整 Codex V2 明文生命周期。所有客户端继续通过现有 Gateway。

Acceptance criteria

  • 新增 Provider 元数据和 Client Projection,只导入当前账号实际可选的 Web 模型/effort,独立于上游官方透传目录。
  • Gateway 公共 Responses 路径贯通受管运行组件;保留精确选定 Provider/model,发送前验证网页模型,不可用时明确失败。
  • Codex 原始 session/thread/turn/item 身份正确保留;普通多轮不串线,Call identity 与 Item identity 不混用。
  • SSE 文本增量、终止和错误符合客户端合同;网页 Markdown 提取不承诺未经验证的逐字节保真。
  • 在真实 Codex CLI 和 Desktop 上各完成至少两轮上下文相关的文本对话,并切回已有官方模型。
  • 客户端停止或断连取消对应网页生成,Gateway 停止不留下无人拥有的网页任务;已发送消息不得盲目重试。
  • 失效登录、模型不可用、组件不兼容/退出分别映射准确错误,无空答案、虚假成功或隐式模型切换。

Verification

风险分类:strict。Gateway 公共 HTTP/SSE 特征测试与真实 Codex CLI/Desktop 文本、多轮、取消;断言模型身份、一个终止结果、取消后的任务清理及原客户端配置可恢复。

按仓库 verification policy 运行受影响的本地完整检查和本任务要求的真实证据;Python 使用仓库 3.13+ launcher。测试公共接口,避免私有 handler seam。记录精确候选 SHA、组件/客户端版本及脱敏结果。

Design constraints and evidence

  • 遵守既有 Route Plan、Provider Injection、Client Projection 和客户端执行归属;不换选定模型、不新建 Gateway 工具/代理执行器。
  • 复用上游版本起点为 a13cd09950969f43e3b7e25c71fa43efaf5446c5;替换版本需要重新验证合同。
  • 本地 Spike 2924d113(spike/chatgpt-web-v2-clients)证明适配方向,不是本任务的完成证据;真实工具结果当时是模拟的。父规格记录已观察结果和限制。该本地提交未推送。
  • 规划基线 7185c1a1;实施使用独立分支,先协调路由/转换/Provider UI/客户端设置的既有未提交工作,不覆盖或当作已合入。

Blocked by

统一验收与修复记录(2026-09-28)

修复源码 48df8345;修复与复验报告 · 59项矩阵 · 原始审计。

保持开放:三个已复现缺陷已经修复,完整功能验收仍未完成。

条目 验收状态 依据与缺口
569.1 部分已验证 账号可见的9个模型及 Provider/模型投影已有证据;全部实际选择与 effort 矩阵未齐。
569.2 部分已验证 历史 portable 首轮通过;修复候选的 Linux Codex CLI 同线程文本/续聊/文件工具链现已通过,其他客户端与平台范围仍未齐。
569.3 部分已验证 公共身份合同测试通过;真实 resume 保持同一 Codex thread,但后端拒绝可信环境上下文。
569.4 部分已验证 真实首轮 SSE 和合成终止/错误合同已覆盖;完整真实多轮未通过。
569.5 部分已验证 F1 已修复:Linux 真实 Codex CLI 同一 thread 首轮、续聊与文件工具链通过;Desktop、模型切换及其他矩阵仍未完成。见 blocker-repairs.md。
569.6 部分已验证 断连/禁止已发送重试的确定性证据存在;真实取消与浏览器任务清理证据不足。
569.7 部分已验证 失效登录/不可用模型/组件退出的合成负例存在;各真实故障与恢复未齐。

原始F1/F2/F3复现保留为历史证据;修复状态以复验报告为准。合同测试、真实请求采集、真实模型调用和完整发行验收分别记录。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

ready-for-agentFully specified, ready for an AFK agent

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions