Repository navigation
Lagoon v0.3.0-rc.1
Pre-release
Pre-release
·
10 commits
to main
since this release
Lagoon v0.3.0-rc.1
这是 Lagoon 预发布版本,用于验证本次更新。
本次更新
- 新增 DeepSeek Harness(
dsh web)适配:Lagoon 从 OpenCode 专用客户端升级为真正的多 harness 控制端。添加服务器时选择「服务类型」即可在 OpenCode 与 DeepSeek Harness 之间切换,DSH 服务器填写实例地址与启动令牌(dsh web启动链接里的?token=)。 - 新增
HarnessClient抽象层:ServerKind(opencode/dsh)随服务器资料持久化,控制器、全服务器总览与通知层只依赖统一接口,不再直接依赖 OpenCode 实现;后续接入新 harness 只需新增一个实现。 - 新增
DshApi协议适配:用启动令牌换取dsh-auth-…签名 Cookie;一元调用走POST /api/<endpoint>(client-request信封),流式数据走/api/remote.mux多路复用 WebSocket,全局事件走$events端点。 - DSH 能力对齐:会话列表、创建、重命名、归档、分叉、子会话、模型目录与选择、发送(
steer打断当前轮次 /queue排队)、停止、审批与问答。审批与问答在 DSH 侧是$events的 waterfall,回应通过$events/result结算,界面与通知和其它 harness 完全一致。 - DSH 时间线翻译:把 DSH 的
turn/step/tool事件日志折算成控制器认识的事件契约与消息模型(用户消息、assistant 文本 / Reasoning、工具调用与结果),任务状态、未读结果与系统实时更新沿用同一套归约。 - 通用化界面文案:服务器状态、审批弹窗、归档页与新建会话提示不再硬编码「OpenCode」,改按当前服务器的 harness 名称显示。
验证
- 本地:
ANDROID_HOME=<sdk> ./gradlew :app:testDebugUnitTest :app:assembleDebug全部通过(316 个单元测试,含新增的 6 个 DSH 协议测试:令牌换 Cookie、一元 RPC 信封、$events就绪与事件、审批 waterfall 与结算、快照折算时间线、发送参数形状)。 - 协议来源:DSH 的 RPC 信封、mux 帧格式、Cookie 名称、审批 outcome 词汇与会话事件结构均逐条对照
dsh实现源码确认,并由 MockWebServer(含 WebSocket 升级)回归覆盖。 - 发布工作流会重新执行 Android 单元测试并构建稳定签名的 Release APK。
已知限制
- DSH 没有删除会话、compact、回退(revert)、改动列表与工作区文件浏览的 RPC,相关入口在这些服务器上返回「不支持」或退化为归档;时间线由会话事件驱动并按需重拉整页,暂不做 token 级流式渲染。
- DSH 的访问令牌每个进程随机生成、只在
dsh web启动时打开的链接里出现,实例重启后旧令牌失效需要重填;令牌错误不会保存服务器资料。 - 真机验收仍需在目标设备与真实 DSH 实例上完成:连接、发送、停止、审批与问答回应,以及 Android 16 实时更新计数。
下载
- Android 安装包 — Lagoon-0.3.0-rc.1.apk
自动验证
- Android 单元测试和 APK 构建已由 GitHub Actions 执行。