LoopTrain 现在遇到的不是“没有文档”的问题,而是另一个更隐蔽的问题:文档开始变多了。
根目录有 README 和部署总览。looptrain/ 下面有架构、控制流、UI/UX、部署说明。materials/ 里有素材和控制层笔记。devlog/ 自己也有规格、设计、内容模型和开发日志。除此之外,还有 TBD/,里面放着还没有定稿的角色和机制设计。
这些文档各自都有价值。但如果不治理,很快会出现一个问题:
同一个项目状态,被多个文件用不同时间点的语言描述。
这比没有文档更危险。没有文档时,至少知道自己缺东西;文档漂移时,每一段单独看都像是真的,组合起来却会误导人。
当前决定
这次先不做代码重构,只做一件事:给 LoopTrain 建立一套轻量文档治理规则。
核心决策有三条。
1. TBD/ 保留为讨论稿区
TBD/ 不删除,也不迁走。
它的职责是保存还没有定稿的东西:
- 新 NPC 设计
- 机制草案
- 架构替代方案
- LLM Bridge 风险分析
- 内容外置化计划
- 暂时不知道是否要实现的长期想法
TBD/ 的内容可以是粗糙的,可以有多个方向,可以不稳定。它的价值就在于允许想法还没有变成正式方案。
但规则也很明确:
TBD/不代表当前事实。
如果一个方案还在 TBD/,它就不能直接作为实现依据。它需要先被讨论、收束、接受,再进入正式文档。
2. Devlog 成为正式长期文档中心
LoopTrain 的 devlog 一开始只是开发日志站。但项目演进到现在,它已经更像一个长期项目档案:
- 记录开发过程
- 记录版本变化
- 记录设计判断
- 解释当前状态
- 给试玩入口和路线图提供上下文
所以正式文档最终应该进入 devlog 内容区,而不是继续散落在各个目录。
长期目标结构会类似这样:
devlog/src/content/
├── devlog/ # 开发过程记录
├── changelog/ # 版本记录
├── characters/ # 可公开角色资料
├── design/ # 设计、机制、架构说明
├── technical/ # API、部署、测试、内容模型
└── decisions/ # 重要决策记录
这不是说马上把所有文档搬进去。第一步只是确定方向:
Devlog 不只是博客,而是 LoopTrain 的正式知识库。
3. 根目录只保留入口职责
根目录文档应该短。
README.md 负责告诉人:
- LoopTrain 是什么
- 当前主线是什么
- 怎么启动
- 怎么验证
- 哪些原则不能破坏
- 去哪里看详细文档
DEPLOYMENT.md 负责部署总览。
MANIFEST.json 负责机器可读的当前事实。
根目录不应该继续长成第二套文档系统。它应该像地图入口,而不是图书馆本身。
正式文档需要状态
以后正式文档至少要回答五个问题:
status: current
version: v0.5.0-standalone
lastVerified: 2026-06-15
scope: documentation
spoilerLevel: none
这几个字段的作用很简单:
status:这篇文档现在还有效吗?version:它对应哪个项目版本?lastVerified:最后一次确认是什么时候?scope:它管哪一块?spoilerLevel:它能不能公开?
LoopTrain 是悬疑叙事项目,所以 spoilerLevel 很重要。技术文档通常是 none。角色公开页最多只能有轻微设定。核心真相、隐藏身份、关键谜底不能进入公开页面。
旧 ST 内容要进入历史层
LoopTrain 已经从 SillyTavern 验证阶段迁移到 Standalone Runtime。
这不意味着旧 ST 文档没有价值。它们记录了项目早期如何验证想法。但它们不能继续作为当前架构说明。
所以旧 ST 内容以后要明确标记为:
status: legacy
或者在正文中写清楚:
本节描述历史实现,不代表当前 SLT 架构。
这样后面再看文档时,就不会把历史路径误当成当前事实。
当前事实谁说了算
当文档互相冲突时,按这个顺序判断:
1. 实际运行代码
2. MANIFEST.json
3. 根 README.md
4. devlog/src/data/site-status.json
5. devlog/src/data/site.ts
6. devlog 正式文档
7. looptrain/docs 旧文档
8. TBD 草稿
这条规则能避免很多争论。
如果 TBD 和 README 冲突,README 赢。
如果旧文档和运行代码冲突,代码赢。
如果 devlog 文章和 site-status.json 冲突,说明 devlog 文章需要更新。
下一步
第一阶段先不追求完整迁移,只做最容易减少误解的事情:
- 建立文档迁移清单。
- 标记旧 ST 内容为 legacy。
- 统一版本号表达。
- 补齐几个关键正式文档:API Reference、LLM Bridge、Testing Guide、Content Schema。
- 后续再把重要设计文档迁入 devlog 的正式分类。
这套规则的目标不是增加流程负担,而是让长期项目少丢上下文。
LoopTrain 接下来会继续变化。文档治理的作用,就是让变化留下可靠痕迹,而不是散落在不同目录、不同时间点、不同版本的说法里。