Repository navigation
v0.2.17
会话列表加载态 + 创建会话失败原因透出
修了什么
看不到工作区下已有的会话
sessions-index 订阅用的是 runtimePolicy:"existing-only":桌面没有为该工作区运行 CLI 时,服务端直接抛 ZCODE_AGENT_RUNTIME_UNAVAILABLE。原实现 catch 后只打一行 warn 就把列表置空,UI 显示「暂无任务」——用户看到的是"我的历史会话没了",实际是"电脑端 runtime 没起来"。
现在:
- 列表加载态拆成四态(Loading / Ready / RuntimeUnavailable / Error),UI 分别表达
- 订阅失败按 2s → 5s → 15s → 30s → 60s 退避重试,runtime 起来后自动恢复
- runtime 不在时保留上一份快照并降饱和,不再清空
- 「手机先开、电脑后开」这个最常见的顺序不再永远空列表
- 每个非成功态都有「重试」入口;骨架屏替代一行「加载中…」
创建会话还是不行
原先五条失败路径全部塌成一个 null,UI 只能说"请确认电脑端在线后重试"。现在按原因分流,把服务端真实 reasonCode / message 显示出来:未连接 / 没有工作区 / 电脑端拒绝 / 没返回 sessionId / 其他错误。
交互
- 思考行折叠箭头 180° 旋转,按压缩放但不叠 ripple(次要信息不抢注意力)
- 会话流 contentType 按行类型声明,快速滑动不再错配回收池
🤖 Generated with Claude Code