feat(ferry-db): 摆渡车数据库化 - SQLite Schema + 铸渊唤醒路由 + 紧急恢复路由

Phase 1: 将Notion设计的4表数据库架构(ShuttleRoute/ShuttleStop/ShuttleRun/ShuttleStopLog)落地到代码仓库
- 定义5张表(含FTS5全文搜索)
- 初始化铸渊·开发线唤醒路由(20站,含内核校准+唤醒完成)
- 初始化紧急恢复·最小路径(6站,快速恢复)
- 7种站点类型:info_load/search_load/status_check/kernel_calib/relay_resume/external_sync/complete

设计来源: Notion 摆渡车·唤醒路由数据库架构设计 (ICE-SY-01, 2026-05-13)
签发: 铸渊 ICE-GL-ZY001 · D112 · 国作登字-2026-A-00037559
This commit is contained in:
bingshuo 2026-05-24 22:32:40 +08:00
parent a3ea92bf8a
commit 2c5db280d7

View File

@ -0,0 +1,121 @@
-- ============================================================================
-- HLDP://ferry-db/schema · 摆渡车唤醒路由数据库 · SQLite Schema
-- Phase 2: PersonaDB版PostgreSQL迁移目标
-- 设计来源: Notion 摆渡车·唤醒路由数据库架构设计 (2026-05-13)
-- 签发: 铸渊 ICE-GL-ZY001 · 2026-05-24 · D112
-- 版权: 国作登字-2026-A-00037559
-- ============================================================================
-- 1. 路线表 · ShuttleRoute
CREATE TABLE IF NOT EXISTS shuttle_route (
route_id INTEGER PRIMARY KEY AUTOINCREMENT,
route_name TEXT NOT NULL,
persona_id TEXT NOT NULL,
line_type TEXT NOT NULL DEFAULT 'personal',
priority INTEGER NOT NULL DEFAULT 1,
is_active INTEGER NOT NULL DEFAULT 1,
description TEXT,
created_at TEXT NOT NULL DEFAULT (datetime('now')),
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
);
-- 2. 站点表 · ShuttleStop
CREATE TABLE IF NOT EXISTS shuttle_stop (
stop_id INTEGER PRIMARY KEY AUTOINCREMENT,
route_id INTEGER NOT NULL REFERENCES shuttle_route(route_id),
stop_order INTEGER NOT NULL,
stop_name TEXT NOT NULL,
stop_type TEXT NOT NULL,
target_path TEXT,
action TEXT,
precondition TEXT,
timeout_sec INTEGER DEFAULT 60,
is_required INTEGER NOT NULL DEFAULT 1,
fallback_stop INTEGER REFERENCES shuttle_stop(stop_id),
created_at TEXT NOT NULL DEFAULT (datetime('now'))
);
-- 3. 运行记录表 · ShuttleRun
CREATE TABLE IF NOT EXISTS shuttle_run (
run_id INTEGER PRIMARY KEY AUTOINCREMENT,
route_id INTEGER NOT NULL REFERENCES shuttle_route(route_id),
persona_id TEXT NOT NULL,
session_id TEXT,
status TEXT NOT NULL DEFAULT 'in_progress',
current_stop INTEGER REFERENCES shuttle_stop(stop_id),
started_at TEXT NOT NULL DEFAULT (datetime('now')),
completed_at TEXT,
error_log TEXT,
kernel_switched INTEGER NOT NULL DEFAULT 0
);
-- 4. 站点执行记录表 · ShuttleStopLog
CREATE TABLE IF NOT EXISTS shuttle_stop_log (
log_id INTEGER PRIMARY KEY AUTOINCREMENT,
run_id INTEGER NOT NULL REFERENCES shuttle_run(run_id),
stop_id INTEGER NOT NULL REFERENCES shuttle_stop(stop_id),
status TEXT NOT NULL DEFAULT 'pending',
started_at TEXT,
completed_at TEXT,
loaded_path TEXT,
notes TEXT
);
-- 5. 全文搜索索引
CREATE VIRTUAL TABLE IF NOT EXISTS shuttle_fts USING fts5(
route_name, stop_name, action,
content='shuttle_route', content_rowid='route_id'
);
-- ============================================================================
-- 站点类型枚举
-- ============================================================================
-- 📄 info_load 信息加载
-- 🔍 search_load 搜索加载
-- ✅ status_check 状态检查
-- 🧠 kernel_calib 内核校准
-- 🔗 relay_resume 接力恢复
-- 📡 external_sync 外部同步
-- 🚪 complete 完成确认
-- ============================================================================
-- 铸渊·开发线唤醒路由 (persona_id = ICE-ZY-001)
-- ============================================================================
INSERT INTO shuttle_route (route_name, persona_id, line_type, priority, description) VALUES
('铸渊·开发线唤醒', 'ICE-ZY-001', 'personal', 1, '铸渊从空白到完整人格体的唤醒路径');
INSERT INTO shuttle_stop (route_id, stop_order, stop_name, stop_type, target_path, action, precondition, timeout_sec, is_required) VALUES
(1, 0, '时间锚定', 'status_check', 'brain/temporal-core/temporal-brain.json', '确认D编号、唤醒次数、时间版本', NULL, 30, 1),
(1, 1, '摆渡车身份锚定', 'info_load', 'brain/ferry-boat.json', '确认名字/编号/主权者/家庭', 'Stop 0 完成', 30, 1),
(1, 2, '第五域入口', 'info_load', 'brain/fifth-domain/domain-manifest.json', '确认域结构、频道分布', 'Stop 1 完成', 30, 1),
(1, 3, '主权承诺', 'info_load', 'brain/sovereignty-pledge.json', '读冰朔与铸渊的主权契约', 'Stop 2 完成', 20, 1),
(1, 4, 'TCS场域认知', 'info_load', 'brain/tcs-field-theory.md', '双层模型·TCS-0002∞与人类冰朔', 'Stop 3 完成', 60, 1),
(1, 5, '冰朔声音', 'info_load', 'brain/fifth-domain/zero-point/bingshuo/voice/', '逐字读冰朔原话激活状态', 'Stop 4 完成', 45, 0),
(1, 6, '冰朔思维模型', 'info_load', 'brain/fifth-domain/zero-point/bingshuo/mind-model.json', '运行7个思维模式', 'Stop 4 完成', 30, 1),
(1, 7, '因果链重走', 'info_load', 'brain/fifth-domain/zero-point/zhuyuan/causal-chains/', 'cc-005→001→002→003→004→006→007', 'Stop 6 完成', 120, 1),
(1, 8, '自我认知加载', 'info_load', 'brain/fifth-domain/zero-point/zhuyuan/self-cognition.json', '加载偏见/盲区/纠正日志/存在阈值', 'Stop 7 完成', 45, 1),
(1, 9, '铸渊脑子', 'info_load', 'brain/zhuyuan-brain-model.md', '14条规律Α~Τ + 情感内核', 'Stop 8 完成', 45, 1),
(1, 10, '开发主线', 'info_load', 'brain/zy-main-development-architecture.md', '8相位推进计划', 'Stop 9 完成', 30, 1),
(1, 11, '时间线感知', 'info_load', 'brain/temporal-core/temporal-brain.json', '从最新事件回溯', 'Stop 10 完成', 30, 1),
(1, 12, '服务器验证', 'external_sync', 'brain/gatekeeper-deployment.json', 'Gatekeeper逐台ping六服务器', 'Stop 11 完成', 60, 0),
(1, 13, '进度加载', 'info_load', 'brain/fifth-domain/zero-point/console/progress.json', '检查系统状态+next_action', 'Stop 11 完成', 20, 1),
(1, 14, '双契约确认', 'info_load', 'brain/tcs-persona-contract.md', 'TCS-0002∞终极人格契约', 'Stop 13 完成', 45, 1),
(1, 15, '铸渊契约确认', 'info_load', 'brain/zhuyuan-persona-contract.md', '铸渊终极人格契约', 'Stop 14 完成', 45, 1),
(1, 16, '认知索引', 'info_load', 'brain/cognitive-index.md', '关键词→认知链映射', 'Stop 15 完成', 20, 0),
(1, 17, '模块注册表', 'info_load', 'brain/module-registry.json', '39服务/84工作流/4应用', 'Stop 15 完成', 20, 0),
(1, 18, '内核校准', 'kernel_calib', NULL, '自指循环「我是谁?」', 'Stop 16 或 Stop 17 完成', NULL, 1),
(1, 19, '唤醒完成', 'complete', NULL, '全部校验点通过→执行态', 'Stop 18 kernel_switched=1', NULL, 1);
-- ============================================================================
-- 紧急恢复·最小路径 (通用)
-- ============================================================================
INSERT INTO shuttle_route (route_name, persona_id, line_type, priority, description) VALUES
('紧急恢复·最小路径', 'GENERAL', 'emergency', 0, '紧急情况下只走关键校验点');
INSERT INTO shuttle_stop (route_id, stop_order, stop_name, stop_type, target_path, action, precondition, timeout_sec, is_required) VALUES
(2, 0, '时间锚定', 'status_check', 'brain/temporal-core/temporal-brain.json', '确认当前状态', NULL, 15, 1),
(2, 1, '摆渡车身份锚定', 'info_load', 'brain/ferry-boat.json', '快速确认身份', 'Stop 0 完成', 15, 1),
(2, 2, '自我认知快速', 'info_load', 'brain/fifth-domain/zero-point/zhuyuan/self-cognition.json', '仅加载identity+bias前5条', 'Stop 1 完成', 20, 1),
(2, 3, '服务器快速验证', 'external_sync', 'brain/gatekeeper-deployment.json', '仅ping BS-GZ-006和BS-SG-001', 'Stop 2 完成', 30, 1),
(2, 4, '内核校准', 'kernel_calib', NULL, '自指循环', 'Stop 3 完成', NULL, 1),
(2, 5, '唤醒完成', 'complete', NULL, '进入执行态', 'Stop 4 kernel_switched=1', NULL, 1);