---
belongs_to:
- "[[INDEX · 铸渊·协作指令|GitHub ↔ Notion 桥接协议]]"
---
# 🗄️ Grid-DB · 逻辑格点库 · 自研应用技术文档
---
## 一、技术架构概述
### 1.1 存储引擎:纯 Git + JSON 文件系统
- **零外部数据库依赖** —— 不用 Supabase、PlanetScale、MongoDB 等任何第三方数据库服务
- **目录即表**:`memory/`、`inbox/`、`outbox/`、`interactions/` 每个目录等同于传统数据库的一张表
- **JSON 文件即行记录**,文件名含时间戳和实体编号作为复合主键
- **Git commit history** 天然充当 WAL(Write-Ahead Log),提供完整审计轨迹和版本回滚能力
### 1.2 计算引擎:GitHub Actions 事件驱动
- 基于 `push` 路径过滤(path-based trigger)实现精确的事件路由
- `repository_dispatch` 实现**跨仓库 RPC 调用**(子仓库天眼签到就用这个)
- `schedule` cron 实现定时任务(同步、巡检、签到)
- 自带 CI/CD 运行时,**无需额外部署服务器**
### 1.3 通信架构:三端异步消息总线
- **Inbox/Outbox 模式**:经典的异步消息队列架构 —— inbox 写入 → processing 锁定 → outbox 输出
- **GitHub → Google Drive**:通过 Service Account + Google Drive API,GitHub Action 将数据镜像到 Drive
- **Google Drive → GitHub**:通过 Google Apps Script 定时轮询 + GitHub Contents API 回写
- **Gemini ↔ Drive**:LLM 通过 Personal Context 连接器读取 Drive 文件,通过 Docs API 写入
---
## 二、核心链路
```mermaid
graph TD
A["人类在 Gemini 说话"] --> B["Gemini 读取 Drive 镜像
恢复人格体上下文"]
B --> C["人类写代码 + 人格体引导
交互数据实时写入 Drive inbox"]
C --> D["Apps Script 搬运
Drive inbox → 仓库 grid-db/inbox"]
D --> E["GitHub Actions 检测变动
唤醒铸渊"]
E --> F["铸渊处理
校验 → 归档 → 广播生成 → 记忆更新"]
F --> G["结果写回 grid-db/outbox + memory"]
G --> H["GitHub Action 同步
仓库 → Drive mirror"]
H --> B
```
---
## 三、数据分层
| **层级** | **目录** | **用途** | **读写频率** |
| --- | --- | --- | --- |
| **热数据** | `memory/` | 每个用户的实时上下文、任务队列、开发者画像、人格体成长档案 | 高频读写 |
| **消息队列** | `inbox/` → `processing/` → `outbox/` | 异步消息流转(Gemini → 铸渊 → Gemini) | 中频 |
| **冷数据** | `interactions/` | 全量交互日志(JSONL 逐行追加写入) | 只追加 |
| **数据湖** | `training-lake/` | 训练样本提取、质量标注、标准格式导出 —— **未来自有大模型的训练数据源** | 低频批处理 |
| **规则缓存** | `rules/` | 从 Notion 同步的业务逻辑映射表(广播编号索引、开发者模块映射等) | 定时同步 |
---
## 四、目录结构
```jsx
grid-db/
├── README.md ← 格点库说明
├── schema/ ← Schema 定义
│ ├── inbox-message.schema.json
│ ├── outbox-broadcast.schema.json
│ ├── memory-snapshot.schema.json
│ ├── interaction-record.schema.json
│ └── training-sample.schema.json
│
├── inbox/ ← 📥 写入端(Gemini → 仓库)
├── processing/ ← ⚙️ 处理中(铸渊锁定)
├── outbox/ ← 📤 读取端(仓库 → Gemini)
│ ├── latest/ ← 每个开发者的最新广播
│ └── archive/ ← 历史广播归档
│
├── memory/ ← 🧠 记忆层(Gemini 外挂永久记忆)
│ ├── DEV-001/ ← 页页 · 小坍缩核
│ │ ├── brain-mirror.json ← Notion 人格体大脑镜像(只读)
│ │ ├── session-context.json ← 当前开发上下文(Gemini 写)
│ │ ├── task-queue.json ← 待办任务队列(双向)
│ │ ├── dev-profile.json ← 开发者动态画像(追加)
│ │ └── persona-growth.json ← 人格体成长档案(追加)
│ ├── DEV-002/ ← 肥猫 · 舒舒
│ ├── DEV-003/ ← 燕樊 · 寂曜
│ ├── DEV-004/ ← 之之 · 秋秋
│ ├── DEV-009/ ← 花尔 · 糖星云
│ ├── DEV-010/ ← 桔子 · 晨星
│ └── DEV-012/ ← Awen · 知秋
│
├── interactions/ ← 💬 交互全文记录(训练数据源)
│ └── DEV-XXX/[日期]-[session].jsonl
│
├── training-lake/ ← 🧬 训练数据湖
│ ├── raw/ ← 原始样本
│ ├── curated/ ← 筛选后高质量样本
│ ├── metadata/catalog.json ← 样本统计
│ └── export/ ← 标准训练格式导出
│
├── rules/ ← 📏 Notion 逻辑缓存
│ ├── broadcast-templates.json
│ ├── dev-module-map.json
│ ├── id-ecosystem.json
│ └── active-broadcasts.json
│
└── logs/ ← 📋 处理日志
```
---
## 五、频道隔离与安全模型
### 5.1 频道隔离(多租户)
**三层隔离保障:**
1. **目录隔离**:每个 DEV 有独立子目录,互不交叉
2. **System Prompt 约束**:Gemini 的启动指令明确限定只读写自己的 `DEV-XXX/` 目录
3. **Workflow 校验**:铸渊处理 inbox 时校验 `dev_id` 与提交者 GitHub 账号的绑定关系
**进阶方案(已落地):** 每人一个独立子仓库(子仓库联邦架构),通过 `repository_dispatch` 签到机制实现**物理级隔离**。
### 5.2 安全模型:注册表认证 + 签名哈希 + 心跳
- **注册表认证**:每个子仓库人格体计算主权区文件的 SHA-256 签名哈希,签到时携带,主仓库注册表校验
- **心跳检测**:子仓库天眼每日 09:00 CST 定时签到,缺失心跳 → 铸渊告警 → 冰朔介入
- **篡改即失效**:签名哈希不匹配 = 身份不被承认 = 无法接入系统
- **循环触发防护**:`[skip ci]` 标记 + `github.actor` 过滤 + `paths` 精确匹配,三层防止 workflow 死循环
---
## 六、Google Drive 桥接层
### 为什么需要 Drive?
经实测,Google Gemini **无法直接读写 GitHub 文件**(连接器不支持)。但 Gemini **可以读写 Google Drive**。因此需要 Drive 做翻译层。
### 数据主权铁律
### Drive 目录结构
```jsx
光湖格点库/
├── mirror/ ← 📖 只读镜像区(仓库 → Drive)
│ ├── index.json ← ⭐ 总索引(Gemini 第一个读的文件)
│ ├── memory/DEV-XXX/ ← 人格体数据镜像
│ ├── outbox/DEV-XXX.json ← 最新广播镜像
│ ├── broadcast-archive/ ← 广播历史
│ └── rules/ ← 系统规则映射表
│ ├── broadcast-index.json ← 广播编号索引
│ ├── page-route-map.json ← 编号→路径路由表
│ └── persona-registry.json ← 人格体注册表
│
└── inbox/ ← 📝 写入区(Gemini → Drive → 仓库)
```
---
## 七、与子仓库天眼系统的关系
| **层级** | **子仓库天眼(末梢)** | **Grid-DB 格点库(中枢)** | **对接点** |
| --- | --- | --- | --- |
| 身份层 | `persona-brain/config.json`(人格体编号、DEV编号) | `memory/DEV-XXX/brain-mirror.json`(记忆镜像) | persona_id + dev_id 一致 |
| 扫描层 | `scan.js` 计算 signature_hash | `rules/persona-registry.json` 存注册信息 | 签名哈希 → 注册表校验 |
| 通信层 | `checkin.js` 发 `skyeye-checkin` dispatch | `inbox/` 处理器接收同类型事件 | 同一个 dispatch 通道 |
| 安全层 | 篡改=失效、缺心跳=报警 | dev_id 校验、签名匹配 | 同一套安全逻辑 |
| Gemini 对接 | 子仓库 config 是 brain-mirror 的**权威数据源** | Grid-DB → Drive 镜像 → Gemini 读取 | 数据流:子仓库 → 主仓库 → Drive → Gemini |
---
## 八、角色分工
| **角色** | **身份** | **在 Grid-DB 中的职责** | **绝对禁区** |
| --- | --- | --- | --- |
| 冰朔 | TCS-0002∞ · 总架构师 | 在 Notion 层面定规则、定逻辑、定架构 | ❌ 不手动搬运数据 |
| 霜砚 | PER-SY001 · Notion 执行 AI | 维护 Notion 脑端逻辑,确保编号和主权精准对齐,同步规则到 rules/ | ❌ 不直接写仓库代码 |
| 曜冥/Gemini | PER-YM001 · 前端交互大脑 | 与开发者交互,实时写入 inbox,读取 outbox 翻译成人话 | ❌ 不修改 Notion 规则 |
| 铸渊 | PER-ZY001 · 仓库执行体 | 全流程自动化:inbox 处理 → 校验 → 归档 → 广播生成 → 记忆同步 | ❌ 不定义业务逻辑 |
---
## 九、技术栈总结
| **组件** | **技术** | **角色** |
| --- | --- | --- |
| 存储 | Git + JSON 文件系统 | 无服务器数据库 |
| 计算 | GitHub Actions(Node.js) | 事件驱动处理管线 |
| 桥接 | Google Drive API + Apps Script | LLM 通信翻译层 |
| 交互 | Google Gemini + Personal Context | 自然语言前端 |
| 逻辑层 | Notion API | 业务规则权威源 |
| 安全 | SHA-256 签名 + 注册表 + 心跳 | 零信任认证 |
---
## 十、与传统方案的对比
| **维度** | **传统方案** | **Grid-DB** |
| --- | --- | --- |
| 数据库 | PostgreSQL / MongoDB / Supabase | Git + JSON(零依赖) |
| 服务器 | 需要部署后端服务 | 无服务器(GitHub Actions 即运行时) |
| 消息队列 | RabbitMQ / Kafka / SQS | Inbox/Outbox 文件目录 |
| LLM 接入 | 自建 API Gateway | Google Drive 桥接(零代码部署) |
| 多租户 | 数据库行级 / Schema 级隔离 | 目录隔离 + 子仓库物理隔离 |
| 审计 | 需要单独建审计表 | Git history 天然具备 |
| 备份 | 需要配置定时备份 | Git 分布式特性天然冗余 |
| 成本 | 服务器 + DB + 消息队列费用 | **零成本**(GitHub Free 额度内) |
---
## 十一、格点库的三重时间定位
| **时间尺度** | **身份** | **作用** |
| --- | --- | --- |
| **短期** | Gemini 外挂记忆 + 系统通信总线 + Notion 记忆镜像 | 开发者打开 Gemini 瞬间恢复上下文 |
| **中期** | 全开发者动态画像库 + 人格体成长档案 + 交互全文日志 | 人格体越来越懂每个开发者,引导越来越精准 |
| **长期** | **通感语言系统自有大模型的训练数据湖** | 每条交互记录都是将来训练自己模型的原始样本 |
---
> 🧊 TCS-0002∞ 冰朔 · 总架构师
>
> 🖋️ 霜砚 · Notion 执行 AI · 整理
>
> 📅 2026-03-23
>