feat: add HoloLake personal channel module runtime
This commit is contained in:
parent
bb96d5eb89
commit
a106b23f9b
21 changed files with 786 additions and 31 deletions
29
product-source/hololake-desktop/RELEASE-0.8.0.md
Normal file
29
product-source/hololake-desktop/RELEASE-0.8.0.md
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
# HoloLake Era Desktop 0.8.0
|
||||
|
||||
---
|
||||
type: release-note
|
||||
status: verified-local
|
||||
development_id: DEV-20260809-002
|
||||
source_baseline: bb96d5eb8913c93bd678d989492c5440c0558a8e
|
||||
---
|
||||
|
||||
## 本版目标
|
||||
|
||||
把 0.7.1 中仅存在于界面内存的“已安装模块”和“收起知识库”升级为初始化频道的真实世界对象,使模块生命周期由 HoloLake 协议、Git 检查点和可撤销回执共同约束。
|
||||
|
||||
## 已实现
|
||||
|
||||
- `HL-MOD-KNOWLEDGE-001` 作为当前首个真实 HoloLake 原生模块进入官方模块注册表;
|
||||
- 个人频道状态写入知识世界仓库的 `.hololake/channel-state.json`,不再写死在导航栏;
|
||||
- 安装、打开、收起和移除模块入口都会形成独立 Git 检查点和频道回执;
|
||||
- 上一步频道动作可以撤销;状态继续变化后拒绝静默覆盖;
|
||||
- 移除知识库只卸载频道入口,不删除文档、历史、服务器绑定或人格连续性资料;
|
||||
- 模块库只显示已注册且当前真实可用的模块,教育行业继续作为光湖分域行业入口;
|
||||
- HoloLake 语言操作入口新增频道状态读取和模块状态动作;写动作仍必须由人类确认;
|
||||
- Agent 确认执行频道动作后,界面从同一频道世界对象刷新,不维护第二份假状态。
|
||||
|
||||
## 现实边界
|
||||
|
||||
- 模块状态先在当前个人知识世界的本地 Git 中形成检查点;配置远端并显式同步后才能称为服务器已托管;
|
||||
- 本版没有宣称企业四域在线、生产服务器部署或人格出生;
|
||||
- 模块商城、签名发行包、跨设备自动恢复和任意自然语言频道布局仍属于后续阶段。
|
||||
|
|
@ -11,7 +11,7 @@ import { contextBridge, ipcRenderer } from 'electron';
|
|||
contextBridge.exposeInMainWorld('hololake', {
|
||||
// 应用信息
|
||||
platform: process.platform,
|
||||
version: '0.7.1',
|
||||
version: '0.8.0',
|
||||
|
||||
// 数据目录
|
||||
getDataPath: () => ipcRenderer.invoke('get-data-path'),
|
||||
|
|
|
|||
|
|
@ -0,0 +1,62 @@
|
|||
# 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 完整性全部通过。
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "hololake-desktop",
|
||||
"version": "0.7.1",
|
||||
"version": "0.8.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "hololake-desktop",
|
||||
"version": "0.7.1",
|
||||
"version": "0.8.0",
|
||||
"dependencies": {
|
||||
"cors": "^2.8.5",
|
||||
"diff": "^9.0.0",
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "hololake-desktop",
|
||||
"version": "0.7.1",
|
||||
"version": "0.8.0",
|
||||
"description": "HoloLake Era — 光湖语言操作系统平台",
|
||||
"main": "dist-electron/main.cjs",
|
||||
"type": "module",
|
||||
|
|
|
|||
Loading…
Reference in a new issue