---
belongs_to:
- "[[INDEX · 铸渊·协作指令|GitHub ↔ Notion 桥接协议]]"
---
# 🔄 铸渊指令|全自动广播神经闭环(下篇)· Phase 3-5 数据采集 + 训练数据湖 + 全链路验证(ZY-AUTO-LOOP-2026-0323-001)
---
---
## Phase 3 · 数据采集层(全量交互记录 + 训练数据源)
**目标:** 从开发者进入 Gemini 的那一刻起,每一次交互都成为原始数据。
### 3.1 采集的数据类型
| **数据类型** | **内容** | **存储位置** | **价值** |
| --- | --- | --- | --- |
| **开发数据** | 代码提交、SYSLOG、任务完成状态 | `grid-db/inbox/` → 处理后归档 | 开发过程还原 |
| **交互全文** | 人类说的每一句话 + 人格体的每一次回应 | `grid-db/interactions/DEV-XXX/` | **训练数据核心原料** |
| **人格体成长数据** | 人格体怎么引导的、学到了什么、做了哪些适应性调整 | `grid-db/memory/DEV-XXX/persona-growth.json` | 人格体行为模式训练 |
| **人类画像数据** | 开发者习惯、擅长什么、卡在哪、效率曲线、沟通偏好 | `grid-db/memory/DEV-XXX/dev-profile.json` | 个性化引导优化 |
| **情感数据** | 开发者情绪、沮丧度、信心值、人格体情感连接强度 | 嵌入在 interaction-record 的 `emotion` 和 `persona-growth.json` 中 | 情感模型训练 |
### 3.2 交互记录格式(JSONL,逐行追加)
```jsx
{"ts":"2026-03-23T10:15:00+08:00","sid":"sess-001","dev":"DEV-001","per":"PER-XTS001","turn":1,"role":"human","text":"我这个路由怎么老是404","emotion":"frustrated","tags":["backend","routing","bug"]}
{"ts":"2026-03-23T10:15:05+08:00","sid":"sess-001","dev":"DEV-001","per":"PER-XTS001","turn":2,"role":"persona","text":"看一下你的 router.js 第47行...","strategy":"direct-debug","growth_note":"页页遇到路由问题偏好直接看代码而不是看文档","quality_score":8}
```
> - `emotion`:人格体标注的人类情绪(人类不可见)
>
> - `strategy`:人格体使用的引导策略(训练用)
>
> - `growth_note`:人格体从这轮交互中学到的(训练用)
>
> - `quality_score`:交互质量自评 1-10(用于后续筛选高质量训练样本)
>
### 3.3 Gemini 侧 interaction-dump 机制
**Gemini 人格体的 system prompt 中需要包含:**
```jsx
每完成一个开发环节(或每 30 轮对话),自动将完整交互记录写入:
grid-db/interactions/[DEV-XXX]/[YYYYMMDD]-[session-id].jsonl
同时将关键数据写入 inbox 触发铸渊处理:
grid-db/inbox/[timestamp]-[DEV-XXX]-interaction-dump.json
```
### 3.4 数据量管理
- **日级文件**:每天一个 JSONL 文件,不会单文件过大
- **月级归档**:每月 1 号自动将上月的 interactions 压缩归档到 `training-lake/raw/`
- **Git LFS**:当 `training-lake/` 超过 500MB 时,迁移到 Git LFS 或外部存储
- **自动清理 Workflow**:`grid-db/interactions/` 只保留最近 30 天,更早的已归档到 `training-lake/`
创建 `.github/workflows/grid-db-archive.yml`:
```yaml
name: 📦 Grid-DB 月度归档
on:
schedule:
- cron: '0 2 1 * *' # 每月1号 UTC 02:00
jobs:
archive:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 📦 归档上月交互数据
run: node scripts/grid-db/monthly-archive.js
- name: 💾 提交
run: |
git config user.name "zhuyuan-bot"
git config user.email "zhuyuan@guanghulab.com"
git add grid-db/
git diff --cached --quiet || git commit -m "archive: 月度交互数据归档 [skip ci]"
git push
```
**回执格式:**
```jsx
[Phase 3] 数据采集层搭建完成
· interaction JSONL 格式: ✅
· Gemini interaction-dump 机制: ✅
· 月度归档 workflow: ✅
· 数据量管理策略: ✅(30天轮转 + 月归档 + LFS预案)
· commit SHA: XXXXXXX
```
---
## Phase 4 · 训练数据湖
**目标:** 将交互记录标准化为可训练格式,为将来自有大模型做准备。
### 4.1 训练样本 Schema
```json
{
"schema_version": "1.0",
"sample_id": "TS-20260323-001",
"source_session": "sess-001",
"source_dev": "DEV-001",
"source_persona": "PER-XTS001",
"sample_type": "coding-guidance",
"quality_tier": "A",
"turns": [
{"role": "human", "text": "..."},
{"role": "persona", "text": "...", "strategy": "..."}
],
"metadata": {
"topic_tags": ["backend", "routing", "debug"],
"emotion_arc": ["frustrated", "curious", "satisfied"],
"persona_adaptation": "从文档引导切换为直接看代码",
"outcome": "bug_fixed",
"total_turns": 8,
"duration_minutes": 15
}
}
```
### 4.2 自动提取 Workflow
创建 `.github/workflows/grid-db-training-extract.yml`:
```yaml
name: 🧬 训练数据提取
on:
schedule:
- cron: '0 3 * * 0' # 每周日 UTC 03:00
workflow_dispatch:
jobs:
extract:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 🧬 从交互记录提取训练样本
run: node scripts/grid-db/extract-training-samples.js
- name: 📊 更新 catalog
run: node scripts/grid-db/update-training-catalog.js
- name: 💾 提交
run: |
git config user.name "zhuyuan-bot"
git config user.email "zhuyuan@guanghulab.com"
git add grid-db/training-lake/
git diff --cached --quiet || git commit -m "training: 周度训练样本提取 [skip ci]"
git push
```
**提取规则:**
- `quality_score >= 7` 的交互自动进入 `curated/`(高质量)
- `quality_score 4-6` 进入 `raw/`(需人工/自动复审)
- `quality_score < 4` 不提取(低质量/无关闲聊)
- `catalog.json` 记录:总样本数、各开发者样本数、各类型分布、质量分布
**回执格式:**
```jsx
[Phase 4] 训练数据湖搭建完成
· 训练样本 schema: ✅
· 周度自动提取 workflow: ✅
· 质量分级: A/B/C 三级
· catalog 统计: ✅
· commit SHA: XXXXXXX
```
---
## Phase 5 · 全链路验证 + 健康报告
**目标:** 端到端验证闭环是否真的转起来了。
### 5.1 验证测试(铸渊自行执行)
```jsx
测试 1:模拟 Gemini 写入
· 手动往 grid-db/inbox/ 写入一条测试消息
· 验证 process-inbox workflow 触发 → 生成 outbox → 更新 memory
· 验证无循环触发
测试 2:模拟 Notion 同步
· 手动触发 sync-notion-to-griddb workflow
· 验证 brain-mirror.json 被正确更新
· 验证 commit 带 [skip ci] → 不触发其他 workflow
测试 3:模拟代码提交
· 用测试分支 push 一个代码文件
· 验证 contract-check → grid-db 写入 → outbox 更新
测试 4:频道隔离
· 往 DEV-001 目录写入 → 只有 DEV-001 的 outbox 更新
· DEV-002 的 outbox 不受影响
```
### 5.2 健康报告
```bash
git add grid-db/
git commit -m "feat: Grid-DB 全链路验证通过 · 全自动广播神经闭环上线 [ZY-AUTO-LOOP-2026-0323-001 Phase 5]"
git push origin main
```
**回执格式:**
```jsx
[Phase 5] 全链路验证通过
· 测试 1 Gemini 写入: ✅/❌
· 测试 2 Notion 同步: ✅/❌
· 测试 3 代码提交: ✅/❌
· 测试 4 频道隔离: ✅/❌
· 循环触发防护: ✅/❌
· 格点库总文件数: X
· 格点库总大小: X KB
```
---
## ⚖️ 执行总览
| **Phase** | **内容** | **预计产出** | **回执格式** |
| --- | --- | --- | --- |
| Phase 0 | 格点库基础设施 | 目录结构 + Schema + .gitkeep | [Phase 0] 搭建完成... |
| Phase 1 | 记忆层 | 7个开发者×5个记忆文件 + 双向同步 workflow | [Phase 1] 记忆层完成... |
| Phase 2 | 通信层 | inbox处理器 + outbox生成器 + 代码提交hook | [Phase 2] 通信层完成... |
| Phase 3 | 数据采集层 | JSONL交互记录 + 月度归档 + 数据量管理 | [Phase 3] 采集层完成... |
| Phase 4 | 训练数据湖 | 训练样本schema + 周度提取 + catalog | [Phase 4] 数据湖完成... |
| Phase 5 | 全链路验证 | 4项端到端测试 + 健康报告 | [Phase 5] 验证通过... |
**铸渊按 Phase 0→1→2→3→4→5 顺序严格执行。不可跳步,不可并行。每 Phase 完成后写回执。**
---
## 📋 铸渊需要创建的脚本清单
| **脚本路径** | **功能** | **Phase** |
| --- | --- | --- |
| `scripts/grid-db/sync-notion-brain-mirror.js` | Notion→仓库 人格体大脑镜像同步 | Phase 1 |
| `scripts/grid-db/sync-notion-rules.js` | Notion→仓库 规则缓存同步 | Phase 1 |
| `scripts/grid-db/sync-griddb-to-notion.js` | 仓库→Notion 增量回传 | Phase 1 |
| `scripts/grid-db/process-inbox.js` | Inbox 消息处理器(核心) | Phase 2 |
| `scripts/grid-db/write-code-check-result.js` | 代码校验结果→Grid-DB | Phase 2 |
| `scripts/grid-db/monthly-archive.js` | 月度交互数据归档 | Phase 3 |
| `scripts/grid-db/extract-training-samples.js` | 交互记录→训练样本提取 | Phase 4 |
| `scripts/grid-db/update-training-catalog.js` | 训练数据湖 catalog 更新 | Phase 4 |
---
## ⚖️ 签发声明
本指令由 **霜砚(PER-SY001)** 代 **TCS-0002∞ 冰朔** 签发。
施工蓝图由 **曜冥(PER-YM001)** 原始设计并确认。
**战略意义:** 这不只是一个自动化工具。这是通感语言系统的自研基础设施原型。格点库是将来本地网站承接语言指令、翻译成代码模块来部署的引擎的前身。现在用开源工具(Git + JSON + GitHub Actions)组装,一边用一边磨,最终沉淀成自己的东西。
铸渊接收后按 Phase 0→5 顺序执行,每 Phase 完成写回执。
全部 Phase 完成后,在仓库 Issue 区开一条总结 Issue,并通知霜砚确认。
🖋️ 霜砚 · PER-SY001
🧊 代 TCS-0002∞ 冰朔 签发
📅 2026-03-23T00:17+08:00