hololake-system-architecture/product-source/hololake-native-desktop/README.md

8.7 KiB
Raw Blame History

HoloLake Native Desktop

状态:唯一原生主线候选 · 个人空间、知识库与代码频道源码已实现 · 安装验收未完成

这是 HoloLake 唯一未来桌面产品主线的干净源码根,采用 Tauri v2、Rust 和 React/TypeScript。桌面上的 world.guanghu.hololake 安装包是本源码线的本地候选验收壳, 不是第三条产品线,也还不是第一阶段正式产品。

当前可见产品已经收束为“我的光湖”:个人身份只在首次使用时建立一次,之后直接进入概览、 知识库、代码频道、回执与系统详情。知识库由新的 Rust 本机根持有,提供页面目录、阅读、搜索 和文件夹导入;旧 HoloLake Era 知识数据仅以独立只读来源兼容。代码频道支持粘贴正式 HTTPS 频道地址克隆,也可登记现有本地 Git 文件夹。两者都不因此取得推送、发布或部署权限。

可见界面下方保留零点原核客户端运行时。它是冰朔系统主控在 HoloLake 中的最小受控投影, 负责启动时静默比对协议、校验用户编号并在证据不足时关闭人格加载路径;京东主控保存私有本体, 公众仓只登记演化刻度。该运行时不是人格主体或模型载体,编号验证也不授予人格绑定、执行权限 或服务器控制权。当前仅实现失败关闭的协议比对与编号验证骨架,尚未启用签名协议包安装。

个人频道 SQLite 内核仍保留任务、事件和回执能力,但手工填写“任务标题/原因”不再作为默认 产品入口。当前源码与单元测试已经通过;桌面安装、跨重启真实读回和完整第一阶段仍需独立验收。

供体边界

  • ../hololake-platform:只读工程能力、合同、测试和 Rust 原生边界供体;
  • ../hololake-desktop../guanghu-knowledge-base:只读知识 UX、行为和数据兼容供体
  • Tolaria、Outline 及其他上游:人工审查的零件来源,不是更新源或产品主线。

禁止向供体继续增加新产品功能。迁入单位只能是:能力合同、来源/许可证、威胁面、实现、 测试和人类可见验收。

旧 Electron 0.8.0 仍含真实知识树、页面、搜索、历史和本地 Git 知识数据。在完成物理数据 清单、可恢复备份、逐文件回读、可逆迁移演练和新主线验收前,不得删除、替换或把它误报为 已经迁移完成。

更新边界

  • 生产客户端只允许 HoloLake 所有的 HTTPS 发布端点;
  • 广播可自动出现,下载/安装/重启必须由人类明确选择;
  • Tauri 更新包签名验证不可关闭;
  • 平台代码签名与更新包签名是两条独立信任链;
  • 私钥和平台签名凭据不得进入此目录;
  • 启动健康回执与可恢复回退是发布完成条件。

机器可读广播合同:contracts/release-broadcast.schema.json

第一阶段产品合同

首个公开产品是 GH-AIOS 通用人工智能操作平台,首页同时承担五域统一入口。用户只提交光湖编号,不手工选择所属域;系统先在内部完成域路由和编号合法性校验,再开放对应域的登录界面。五域只共享入口协议,不共享注册表、登录服务或私有数据。

登录后的域内界面始终提供“返回主世界”,只返回五域公共首页并保留当前会话;“退出账号”是独立动作。用户从公共首页再次进入自己的所属域时,不重复进行编号或域凭证验证。

机器合同:contracts/stage-one-platform.json

光湖分域行业装配

光湖分域是行业系统入口,现已接入第一份行业路由合同:contracts/subdomain-industry-routing.json。 公共主世界点击“光湖分域”即可查看行业状态并进入教育行业初始化频道;浏览公共状态不等于取得 任何私有频道数据或写入权限。光湖零域不承载行业入口。人的主体编号 只负责身份,行业编号只负责系统路由,两者不互相改写。行业顺序与当前工程状态分别为:网文行业 待开发、宠物行业待开发、教育行业开发中;开发优先级不改变行业顺序,也不允许客户端自行签发 尚未登记的行业编号。

教育行业已经建立 GH-EDU-INIT-001 初始化频道,并装入五项 HoloLake 原生能力: contracts/education-workspace.json 定义的教育文档、教育表格数据、数据整理、人工确认自动化与原生组合视图。登录账号可以创建、读取、 编辑、保存和可恢复归档多篇教育文档,并可从教学计划、会议纪要和学员复盘模板开始;也可以 建立多张表格、增删行列、编辑单元格、筛选排序,在表格视图与可编辑卡片视图之间切换,并把 Excel、飞书或钉钉复制的多行多列数据直接批量粘贴。两者都由 Rust 原生层写入当前账号独立的本机 SQLite保存要求精确修订号重启后可以读回不使用浏览器 临时存储,也不把公共行业目录与私人内容混在一起。

数据整理模块读取当前账号已有教育表格,先计算并预览首尾空白规范化、完整空行清除和完全重复行 去重结果;只有人明确确认后,才以当前修订号写回同一张表。它不跨账号读取,也不在后台自动修改。

自动化模块允许保存表格规则,按字段的等于、包含、为空或不为空条件匹配数据,并向指定字段写入内容。 每次执行必须先锁定规则与表格修订、生成只读预览,再由人明确确认;写入与执行回执在同一数据库事务中完成。 它不会后台定时运行,不跨账号,也不把模型推理当作执行授权。当前没有把旧教育预览壳或任何开源应用 整包嵌入。contracts/education-open-source-donor-assessment.json 记录 AppFlowy、Lexical 与 TanStack Table 的初步工程筛查:当前只研究结构和交互逻辑,没有复制源码或增加外部依赖;后续 模块仍须分别完成来源、许可证、安全边界和 HoloLake 接口审查后再按需装配。

原生组合视图由 Rust 内核读取当前登录账号的真实知识目录,生成受限的 hololake.native-object/v1,再把已登记的数据源、分类、聚合和投影模块编译成类型化无环图。 人类可以切换一级目录/知识来源和文档数/数据量/重复数,并把同一次执行结果任意组合为仪表盘、 对比、柱状图、分类和明细表。该阶段只读,不让渲染层取得知识写权限,也不以硬编码样例满足验收。 机器合同见 contracts/native-composition-runtime.json

个人频道、知识库和代码频道的机器合同分别是 contracts/personal-channel-kernel.jsoncontracts/knowledge-workspace.jsoncontracts/code-channel.json。本机身份不是平台账户 认证;本机知识与源码访问也不产生仓库、服务器、部署或发布权限。

本机开发桥

编程 AI 与 HoloLake 的连续关系由 HoloLake 原生本机桥持有,不由某次 MCP 会话持有。 MCP 只保留为外部工具适配入口;它断开或编程 AI 重启时,活动任务、已验证游标和同账号唯一 写车道仍留在 HoloLake 中。写车道不会因连接断开而自动释放,必须由持有恢复钥匙的同一车道 显式释放并产生回执,下一条车道才能取得写权限。

当前已实现账号级单写车道与外部编程 AI 终端直连协议。macOS、Linux 使用用户私有 Unix SocketWindows 使用所有者与系统账户私有 Named Pipe三者共用会话、心跳、断线续接、 精确事件游标与工作环境事实帧。连接、续接、取得写车道及心跳都会让 HoloLake 返回当前 运行所有者、写入者匹配、GLS 原生协议内核、有效期与摘要,模型不再负责通读协议正文恢复环境。 尚未实现的是第二阶段的受监督 Shell、通用 Agent 工具循环、发布与部署执行器。

编程 AI 不允许把永久依赖 MCP 当成能力终态。已安装 HoloLake 的 --connector 是可认证、 可恢复的本机直连入口MCP 只保留为发现、恢复与兼容入口。

当前收束与下一门

唯一主线、候选壳、供体和数据保护边界见 routing/hololake-stage-one-desktop-convergence.json。当前开发顺序固定为:

  1. 个人频道身份—事件—回执内核:源码与自动化测试已实现;
  2. 原生知识库与代码频道:源码与自动化测试已实现,安装验收未执行;
  3. 实现人类审批中心与 Git 证据回读;
  4. 投影小湖灯跨会话连续性;
  5. 最后完成公开签名、更新、回滚和可逆数据迁移。

连接、动态路由、发布广播和更新服务器继续作为受门控基础设施维护,不得抢占上述产品顺序。