Files
openless/docs/2.0-requirements.md
T
sim 92da4fbf9b docs: 清理已了结的规划过程文档并同步引用
删除已完成/已收口任务的规划与过程记录(2.0 UX 收口、Core 2.0 计划、
PR#1019 复核与桌面复审、平台边界审计、Linux 引导知识快照、
Linux 共享后端阶段计划、供应商渠道计划、Windows sherpa 规划、
PR#711 评审截图、应用内测试计划),保留规范性文档、验收清单、
Linux 交接目录与运营指南,并修复全部引用链接。
2026-09-07 13:29:55 +08:00

5.7 KiB
Raw Blame History

OpenLess 2.0:当前需求与交付范围

更新:2026-09-06。本文是本轮范围与验收的权威入口,优先于此前迁移计划、复核记录中的旧范围。 初始盘点基线为 2b3155722758a2b027f94e7032accf468d03106c;后续实现/合同修复以本文件所在提交为准。

1. 目标

  1. Windows、macOS 是本批 2.0 完整支持的平台。 各自在 Tauri 1.x 中实际已有的用户功能,必须在 2.0 保留并完整实现。
  2. Linux 本批交付可接入的 Core。 egui 团队接管 Linux Host Adapter 的剩余实现、生产接线、egui UI 与 Linux 产品验收。
  3. Linux 交接采用独立目录中的小文档;逐项说明现成能力、真实缺口、接口、实施责任与验收条件。

2. Windows/macOS 的“完整”

  • 比较的是用户可执行的完整操作:入口 → Core 业务 → 原生效果 → 结果/历史/错误反馈。只有类型、接口、按钮或 fixture 不算实现。
  • 以迁移前各平台实际交付的 1.x 功能为基线。现有源码锚点是 v1.3.18-tauri 和 PR 的 1.x base fc9824ee;还须覆盖其中较新的 Beta 能力及本 PR 已承诺的功能。
  • 不得因修改架构而丢失功能、设置效果、旧数据、快捷键、取消、异常恢复或平台行为。
  • Windows 的 TSF/Foundry/Sherpa、macOS 的 AX/TIS/Apple Speech/MLX 等按各自原有 OS/架构支持范围验收,不要求移植另一平台的专有机制。
  • Windows Less Computer 等本 PR 已明确增加的交付仍保留,不借重新定义 1.x 基线撤销。
  • 1.x 的预留字段或未实现设计不自动成为“已交付功能”;也不能把真实存在的实现误标为从未支持。每项须有源码/产品入口证据。
  • 原生能力必须以真实结果表达,不能用 Unsupported、no-op、伪成功或仅有单元测试替代该平台原先可用的功能。

详细功能与平台验收见桌面验收清单。该清单是需求,不是“全部已通过”的声明。

3. 责任划分

交付 本轮 Core/Tauri 工作 egui 团队接手
共享业务 Core 领域实现、状态机、配置/凭据/模型迁移、取消/错误/结果规则 调用 Core;发现业务接口缺项时回报 Core 负责人
Windows/macOS Tauri/React 接线、原生 Adapter、完整 1.x 功能保留、自动与设备验收 不属于 Linux 接入任务
Linux 接入面 可用的公开接口、DTO/事件、Adapter 合同、fixture、示例和缺口文档 Linux 原生 Adapter 剩余实现、全局热键、窗口/托盘/权限/更新等宿主效果
Linux UI 提供已有代码和行为合同作起点 egui/eframe 页面、交互、事件消费、错误展示、完整产品流程
Linux 发布 保留现有验证脚本与已有证据供复用 Linux 打包、真实桌面/设备、安装升级回滚与正式发布验收

这里的“egui 团队”包含本次明确移交的 Linux Host 工作。egui 框架本身不会自动完成系统全局热键、音频、Secret Service 或安装器。

4. Core 对 Linux 的交付门

“预留 Core”要求能接入、能验证,不是未来再实现的空接口:

  1. Linux 可依赖 openless-core,Core 不依赖 Tauri/egui 或要求调用 Tauri 私有模块。
  2. 业务规则有真实实现;平台动作由明确的 Host Interface 承接。缺 Linux 原生效果可以标注未接入,不能把缺少 Core 业务实现推给 UI。
  3. 提供 2.0.0 启动合同、DTO、事件顺序/重放、session/取消、错误和能力语义。
  4. 提供可运行的无设备 fixture/headless 示例及对应 contract tests。
  5. Linux 现有 Adapter、UI 和包构建作为可复用起点保留;每项分别标明“已有实现”“接线缺口”“原生验证待补”。
  6. 确定缺口在交接目录有责任、实现位置、Core 调用点、依赖与验收要求。

5. 本批 2.0 完成条件

范围 完成条件
Windows 各项原有能力完成真实生产接线;无未关闭的确定功能/迁移缺陷;通过必要自动测试、安装与目标应用/设备验收
macOS 同上,并覆盖所声明支持的 Intel/Apple Silicon 与权限、输入源、原生模型、签名分发要求
共享 Core 跨平台依赖/合同/迁移/会话与错误语义通过验证,可供 Linux 团队直接接入
Linux 本轮移交 本文第4节及拆分交接资料完整;无需等待 Linux 应用所有功能、UI、真实设备和安装升级完成

Linux 应用侧的未完成项不再阻塞本批 Windows/macOS 2.0 交付。 但缺陷若位于共享 Core、会破坏 Windows/macOS,或使承诺的 Linux Core 接口不可调用,仍是本轮问题。

验收报告必须区分:源码已实现、自动测试通过、目标平台编译通过、安装运行通过、设备交互通过。CI 和内部审查不替代正式发布所需的真实行为证据。

6. 现有成果和其它平台

  • 已完成的 PR 修复、Linux 代码、构建和测试不回退、不删除;本次调整的是责任与完成条件。
  • Android 不纳入本次新增的“首批完整支持”目标;若保留现有构建,其已有合同不能因共享 Core 修改而无故破坏。
  • 本次是需求与交接范围更新;当前代码版本快照仍为 2.0.0-Beta.1。版本号、标签与正式发布按项目发布流程执行。

7. 后续报告口径

  • 分别报告“Windows 2.0 完成度”“macOS 2.0 完成度”“Core 移交完成度”“Linux 团队待办”。
  • Linux 宿主未接线应写作“Core 已有,Linux Host/UI 待实现”,不要写作“Core 缺失”,也不要写作“Linux 功能已完成”。
  • 若接口本身尚不足以承载原有业务,列为 Core 缺口并由本轮团队修复。