# 旧模块到 TCS 原生模块的迁移规则 这不是把 Rust、TypeScript 或 Tauri 源码逐行换一种拼写。每个捐赠件只保留已经证明有价值的领域 语义、状态机、失败经验、用户入口和验收证据,再用 TCS 重新声明主体、目标、输入输出、动作图、 权限、资源、停止、清理、回滚与回执。 迁移顺序固定为: 1. P0:TCS 语言、编译器、GIR 运行核、注册核和原生质量门; 2. P1:编号、频道、广播、Agent、知识库、外部 AI、模块生命周期和商城; 3. P2:人格体、记忆、关系事件和情感核; 4. P3:共同世界投影仪,最后根据真实运行核决定宿主 UI 零件。 每个模块只有同时满足下列条件才能替代旧实现: - TCS 源码由编译器 B 编译; - GIR 不含未解析自然语言; - 未授权、路径越界、哈希漂移和未知操作测试失败关闭; - 至少一个真实目标宿主执行并读回; - 与捐赠件能力逐项对照,未迁移能力必须明确拒绝,不能静默丢失; - 注册、安装、挂载、激活和验收保持为不同状态。 机器队列见 `migration/tcs-module-migration-registry.json`。现有宿主语言只能留下最小文件、网络、 窗口、密钥存储和硬件驱动适配层;不得继续拥有 TCS 语义、权限判断或模块状态真相。