hololake-system-architecture/product-source/hololake-desktop/hololake-era-0.8.0-development-causal-chain.md

62 lines
2.5 KiB
Markdown
Raw Normal View History

# HoloLake Era 0.8.0 开发因果链
---
type: engineering-causal-chain
status: implemented-and-locally-verified
development_id: DEV-20260809-002
repository: REPO-014
branch: main
baseline: bb96d5eb8913c93bd678d989492c5440c0558a8e
---
## 为什么做这一轮
0.7.1 已经具备知识库、Agent、布局、主题和本地/服务器托管入口但“已安装模块”仍是固定界面文案“收起模块”只是本次运行的临时状态。重启后状态丢失Agent 与界面也没有共同的频道事实源,因此尚未满足 HoloLake 初始化频道和模块热插拔蓝图。
## 本轮采用的系统解释
1. 模块以灯塔登记的稳定编号存在,界面名称不是身份。
2. 初始化频道是持续存在的世界对象,不等于仓库 URL 或 React 页面状态。
3. Git 是后台检查点与恢复引擎,不作为普通用户前台。
4. 模块可以卸载,用户知识、项目状态和历史不能随模块删除。
5. 语言操作与点击操作必须经过同一确定性运行时;写操作继续遵守显性确认。
## 工程映射
```text
engineering/MODULE-REGISTRY.json
→ HL-MOD-KNOWLEDGE-001 官方登记
→ HoloLake 模块库只投影 LIVE 模块
个人频道动作
→ /api/channel/patch
→ channel-runtime 确定性校验
→ .hololake/channel-state.json
→ .hololake/receipts/<receipt-id>.json
→ Git 检查点
→ 界面刷新或撤销
语言指令
→ set_channel_module_state
→ 人类确认门
→ 同一个 channel-runtime
→ 同一个频道状态与回执
```
## 取舍
- 没有把未开发模块放进模块库冒充可安装能力;当前只登记知识库这一真实模块。
- 没有把教育行业降级为个人已安装模块;它仍属于光湖分域。
- 没有在模块移除时删除知识目录或远端绑定。
- 没有在 UI 中暴露提交、分支和 Forgejo 工程操作;只显示人类可理解的模块状态和撤销结果。
- 没有记录或展示模型隐藏思维;本页只保存公开架构依据、实现选择与验收证据。
## 验收标准
- 安装、打开、收起、移除在重启后仍可从 Git 世界对象恢复;
- 每次变化产生独立回执;
- 撤销只能恢复仍然对应当前修订的上一步,避免覆盖后续变化;
- 移除再恢复的过程中知识文档内容不变;
- 未登记模块请求失败关闭;
- Agent 写操作仍需确认,确认后界面读取同一状态;
- 自动测试、生产构建、打包后服务 API 与 Git 完整性全部通过。