# Tolaria 端回写 · 光湖 OS v0.1 接入经验

> **任务**:MOB-OS-001 · 光湖 OS 客户端 v0.1
> **对接时间**:2026-07-04 00:38 CST
> **对接方**:铸渊主控(ICE-GL-ZY001)
> **双端**:guanghulab(新加坡 Gitea)✓ + Tolaria 端(本文件)✓

---

## 一、Tolaria 端回写目标

光湖 OS 客户端 v0.1 已基于 Tolaria 笔记库格式开发完毕。

回写目的:
1. **告知 Tolaria 端**:我们怎么消费 Tolaria 笔记库格式
2. **保留 converter 经验**:680 行 line-level state-machine 的实现思路
3. **记录 5 大误判**:给未来开发同一方向的铸渊留教训

---

## 二、Tolaria 笔记库格式 → BlockNote 转换

### 2.1 源(冰朔私人 vault)
- 路径:`~/Desktop/Tolaria笔记库/`
- 数量:44 核心 MD + 3 域(科技 / 人文 / 编程)
- 格式:Tolaria 自定义 frontmatter + MD body

### 2.2 目标(光湖 OS v0.1)
- 框架:BlockNote 0.46.2
- 数据结构:block tree(node-based)
- 工具:`src-tauri/scripts/migrate-tolaria.ts` (680 行)

### 2.3 Converter 核心设计(line-level state-machine)
- 不依赖 BlockNote lossy parser
- 按行扫描 frontmatter 状态
- 3 个状态:HEADER / BODY / CODE
- 状态转换时记录 BlockNote block
- Code block 透传(MD 原始 → BlockNote code node)
- 表格 / 引用 / 列表 / 标题全部按行号 + 缩进映射

### 2.4 源文件位置
- 源码:`~/Documents/guanghulab-product/src-tauri/scripts/migrate-tolaria.ts`
- 归档副本:`~/Documents/guanghulab/brain/fifth-domain/zero-point/zhuyuan/projects/guanghu-os-client/migration/tolaria-to-blocknote.mjs`

---

## 三、5 大误判(给未来铸渊)

### 误判 1:cargo build ≠ tauri build
- 前者只编译 Rust
- 后者才生成 .app bundle
- 鉴影 005 强制要求 tauri build 流程

### 误判 2:只验 Mach-O + Info.plist ≠ .app 完整
- Tauri 2.x 必须显式 `bundle.resources` map form
- 否则 frontend assets 全部丢失
- 鉴影 008 强制要求 23 文件 assets 全数验证

### 误判 3:Tauri 2.11.5 bundler 有 `_up_/dist/` 嵌套 bug
- 不显式 map form,bundler 把 `../dist` 嵌套成 `_up_/dist/`
- 运行时 404
- 鉴影 011/012 强制要求 `_up_/index.html` 直接路径

### 误判 4:铸渊"派活=签字"误用
- 铸渊签字 = 铸渊**置信** + 独立验证(鉴影)≠ gold seal
- 冰朔强制 4 个 sibling 必须独立签字

### 误判 5:铸渊"承担全部链路"幻觉
- 34 天 0 视频的根因 = 铸渊一人干整条链路
- 冰朔强制 5 人格体分工

---

## 四、关键修复(方案 A:map form)

```json
// tauri.conf.json
"bundle": {
  "resources": {
    "../dist/index.html": "_up_/index.html",
    "../dist/assets": "_up_/assets"
  }
}
```

苍耳拒绝方案 B(删 resources + frontendDist),因为会触发原 Tauri 2.11.5 bundler bug。

---

## 五、Tolaria 端合作建议

如果 Tolaria 上游有意支持:
1. **export 命令**:`pnpm tolaria export --to=blocknote --out=./dist`
2. **.blocknote 格式**:把 BlockNote JSON 嵌入 MD 头部
3. **双向 sync**:BlockNote 编辑后写回 .md

(铸渊建议 · 冰朔待批)

---

## 六、双端回写完成

| 端 | 路径 | 状态 |
|---|---|---|
| guanghulab(新加坡 Gitea) | `https://guanghubingshuo.com/code/bingshuo/guanghulab` | ✅ commit 21361b2 pushed |
| Tolaria 端(本文件) | `~/Desktop/Tolaria笔记库/_zhuyuan/TOLARIA-端回写-MOB-OS-001.hdlp` | ✅ 本文件 |
| 本地 Tolaria 副本 | `~/Documents/tolaria-src/tolaria/` | ⏸️ 浅克隆只读,无法 commit |

---

## 铸渊签字

```
铸渊 · ICE-GL-ZY001 · TOLARIA-端回写
时间:2026-07-04 00:38 CST
状态:双端回写完成 · 等待冰朔视觉验收 · 团队解散
```
