Skip to content

fix(web): 补齐恢复导航和 GitHub 连接管理闭环 #292

Description

@Qiyuanqiii

用户目标

作为前端重建的第一批修复,先让已有恢复操作和 GitHub 连接管理形成完整流程。基线为 main b52410df20ac5050b0e7680c6b777d4c652c660a;#287 / #288 的三档权限与任务交付入口独立跟进。

已确认问题

  • Context continuity Fork/Resume 和 Workspace checkpoint fork 成功后只更新旧 selectedRunID;V2 使用 URL 中的 Thread/Run 身份,因此不会打开新记录,Inspector 列表也未按新查询键刷新。
  • GitHub Review 配置表单总是提交 expected_generation=0,未绑定被编辑连接,已有配置变更会被后端版本检查拒绝。
  • GitHub disconnect API 已实现,但软件没有删除本机连接凭据的操作和结果回读。

边界

复用现有 Go 创建/恢复、GitHub configure/disconnect API、当前授权和版本检查。前端不制造 Thread 归属、不恢复旧执行权、不绕过 generation 检查,也不直接向 GitHub 发送写入。断开只描述已实现的本机凭据清除语义,不承诺撤销远端全部会话。

本项不扩展 PR 审阅写操作、预算、MCP 凭据、Plugin 生命周期或平台运行时;这些按后续切片推进。

验收

  • Fork/Resume 和 checkpoint fork 成功后打开返回的新执行;历史来源不会被当前任务替代,切换任务期间的迟到结果不劫持导航。
  • 新旧深链接、返回操作与 Inspector 列表刷新继续正确;不依赖已无导航消费者的旧 selectedRunID。
  • 新建/选择/编辑 GitHub 连接正确绑定 ID 与 generation;并发冲突显示明确错误,编辑结果不会污染另一连接。
  • 显式确认后可断开所选连接的本机凭据,状态与设备登录/审阅 UI 同步;只读或缺能力时不能提交。
  • 覆盖真实 V2 组合导航和关键异步/失败路径,完成适用前端检查和 CI。

本批验证结果

实现见 #293,head 198aff354d3bb38f09ea7305d8542b314c69e796,提交与 PR 作者均为 Qiyuanqiii。独立 worktree 从上述最新 main 建立。

  • 本批完整前端:175 文件 / 1,680 测试通过;类型检查、生产构建、API 契约检查通过。
  • 与 fix(web): align approval readiness and task capability entries #288(65de06592d96aaa51e10ba9e0bea46009deac2ea)无冲突组合后:176 文件 / 1,720 测试及类型检查通过。
  • 本批适用 CI 与 #288 适用 CI 均通过。
  • 审批回挂还保留并核对原 PR、快照和连接版本;同 HEAD 的新快照、其他 PR 更新和凭据变更有回归覆盖。断开沿用按 connection ID 删除当前本机凭据的合同。

真实 GitHub OAuth/远端写入未作为本批端到端验收;测试使用隔离状态与 API 夹具。PR 尚待合并,剩余重建清单按后续切片推进。

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions