跳转到内容

Yomiya Implementation Spec 拆分方案

文档性质:实施规格文档治理与拆分方案
用途:把当前过重的 implementation spec 拆成可长期维护的文档体系
状态:当前有效
最后更新:2026-03-28


当前 yomiya-implementation-spec.md 已经承载了过多角色,包括:

  • 当前有效规格
  • 自查报告
  • 漏洞修复记录
  • 深度排查结果
  • 后续阶段定义
  • 运营定义补充
  • 附录式补丁决策

这会带来 4 个实际问题:

研发或运营打开文档时,很难一眼判断:

  • 什么是当前必须执行的最终规则
  • 什么是审查过程中提出来的问题
  • 什么是后续阶段再考虑的内容

问题 2:同一规则在多个位置重复出现

Section titled “问题 2:同一规则在多个位置重复出现”

例如:

  • Tab 分类逻辑
  • collection 规则
  • today featured 逻辑
  • topic / scene / tag 关系
  • 搜索、Push、播放模式等能力边界

一旦更新其中一处,其他位置很容易漏改。

问题 3:文档越来越像讨论记录,不像规格文件

Section titled “问题 3:文档越来越像讨论记录,不像规格文件”

规格文档的职责是“给执行层明确答案”。 现在这份文档越来越像:

  • 主规格
  • RFC 讨论串
  • 审核问题清单
  • 修复补丁记录
  • 未来规划草案

混在一起。

当前 implementation spec 中已经包含大量:

  • Phase 1 必做
  • Phase 2 / 3 / 4 能力
  • 暂未确认问题
  • 未来增强项

这会不断诱导团队把未来阶段能力混进当前执行面。


拆分后的目标不是“文件变多”,而是:

让每份文档只负责一件事,并且让读文档的人能迅速知道自己该看哪份。

最终要达到的状态:

  • 产品 / 研发要开工时,只看当前有效规格
  • 发现还有没定的问题时,看 open questions
  • 回顾为什么之前做过某种调整时,看 review log
  • 规划后续阶段时,看 future phases

product/yomiya-implementation-spec-core.md

只保留当前有效且直接影响执行的最终规格,包括:

  • 首页模块精确规格(仅当前版本)
  • 首批合集规格(仅当前版本)
  • 内容入库判断规则(当前生效版)
  • LLM 打标 Prompt 规格(当前生效版)
  • 数据结构(仅当前阶段确定会做的)
  • 今日学习 / 学习进度定义(当前生效版)
  • 标题处理规则(当前生效版)
  • 封面获取与存储策略(当前生效版)
  • 自查报告
  • 漏洞列表
  • 修复记录
  • 争议历史
  • 未来阶段设计
  • 还没定死的开放问题

任何进入 *-core.md 的内容,都必须满足:

  1. 已经定稿
  2. 当前阶段会执行
  3. 研发 / 运营现在就需要知道

product/yomiya-implementation-open-questions.md

只负责记录:

  • 还没定死的问题
  • 当前存在多个备选方案的问题
  • 会影响后续实现,但当前不阻断 Phase 1 的问题

例如:

  • 某些 admin 交互是否需要更完整版本
  • podcast 体系何时独立建模
  • topic 是否后续独立出单独实体
  • 搜索 Phase 2 如何展开
  • 推送个性化什么时候接入
  • 更复杂的会员权益如何演化
  • 问题描述
  • 为什么现在还不定
  • 不定会影响什么
  • 备选方案 A / B / C
  • 当前建议
  • 预计在哪个阶段决策

product/yomiya-implementation-review-log.md

只负责保留历史审查与修正痕迹,包括:

  • 自查报告
  • 致命漏洞清单
  • 修复记录
  • 第二轮排查
  • 运营定义层补充中属于“问题发现”的部分

这些内容不是没价值,恰恰相反,它们很有价值:

  • 帮助团队理解为什么后来做了某些收缩
  • 避免重复踩坑
  • 给后续 review 提供上下文

但它们不应该继续污染主规格


product/yomiya-implementation-future-phases.md

只收纳:

  • Phase 2 / 3 / 4 能力
  • 延后项
  • 增强项
  • 后续高级玩法

例如:

  • 完整搜索能力
  • 更复杂推荐系统
  • 播放模式增强
  • 成就 / 游戏化体系
  • Push 精细化策略
  • 更复杂的会员与商业化机制
  • 高级自动化内容运营能力

未来阶段文档可以完整,但不能反向要求当前 Phase 1 一起实现。


4. 当前已有文档与拆分后文档的角色关系

Section titled “4. 当前已有文档与拆分后文档的角色关系”
  1. yomiya-phase1-execution-spec.md
  2. yomiya-canonical-naming.md
  3. yomiya-phase1-scope-boundary.md

这 3 份文档已经承担了“收口层”的职责。

  • yomiya-phase1-execution-spec.md
  • yomiya-canonical-naming.md
  • yomiya-phase1-scope-boundary.md

负责:

  • 当前阶段目标
  • 当前名词冻结
  • 当前范围边界
  • yomiya-implementation-spec-core.md

负责:

  • 当前执行细节
  • yomiya-implementation-open-questions.md
  • yomiya-implementation-review-log.md

负责:

  • 未决问题
  • 历史问题与修复痕迹
  • yomiya-implementation-future-phases.md

负责:

  • 后续能力

5.1 从现有 yomiya-implementation-spec.md 中移出的内容

Section titled “5.1 从现有 yomiya-implementation-spec.md 中移出的内容”
  • “深度自查报告”整段
  • “致命漏洞修复记录”整段
  • “第二轮深度排查”整段
  • 所有以“漏洞 / 卡点 / 修复”叙述为主的内容
  • 仍未定死的方案型问题
  • 暂时保留多方案并列的问题
  • 只记录了建议但尚未正式冻结的部分
  • Phase 2 以后的搜索
  • 更复杂推荐与 Push
  • 更完整会员演化
  • 成就 / 游戏化体系
  • 高级播放模式

只有下列满足“当前有效”的规则才保留在 core:

  • 首页当前版模块定义
  • Collection 当前版规则
  • 当前生效的数据表与接口设计
  • 当前生效的打标与入库规则
  • 当前生效的 UI / 内容结构规则

如果一段内容读起来更像:

  • “之前发现了一个问题”
  • “这里有一个风险,建议这样修”
  • “以后可以这么演化”

那就不应该留在 core。


先明确:

  1. yomiya-canonical-naming.md
  2. yomiya-phase1-execution-spec.md
  3. yomiya-phase1-scope-boundary.md

这 3 份优先于 implementation 类细节文档。

Step 2:从现有 implementation spec 中抽出 core

Section titled “Step 2:从现有 implementation spec 中抽出 core”

生成:

  • yomiya-implementation-spec-core.md

要求:只保留当前生效规格。

Step 3:把历史审查内容整体迁出

Section titled “Step 3:把历史审查内容整体迁出”

生成:

  • yomiya-implementation-review-log.md

生成:

  • yomiya-implementation-open-questions.md

生成:

  • yomiya-implementation-future-phases.md

旧的 yomiya-implementation-spec.md 不建议立刻删除。 建议改造成:

  • 过渡索引文档,说明文档已拆分
  • 或归档文档,顶部明确“已拆分,请优先阅读新文档”

这样能避免链接和上下文突然断掉。


后续任何人进入项目,文档阅读顺序建议固定为:

  1. yomiya-research.md
  2. yomiya-content-strategy.md
  3. yomiya-phase1-execution-spec.md
  4. yomiya-canonical-naming.md
  5. yomiya-phase1-scope-boundary.md
  1. yomiya-phase1-execution-spec.md
  2. yomiya-canonical-naming.md
  3. yomiya-phase1-scope-boundary.md
  4. yomiya-implementation-spec-core.md
  1. yomiya-implementation-review-log.md
  1. yomiya-implementation-open-questions.md
  2. yomiya-implementation-future-phases.md

8. 这次拆分真正想解决的,不是文档多,而是文档可信度

Section titled “8. 这次拆分真正想解决的,不是文档多,而是文档可信度”

项目走到现在,最大风险已经不是“没有想法”,而是:

文档越来越多,但每份文档的职责越来越模糊,最后谁都不敢完全信哪一份。

拆分的真正价值是:

  • 让当前有效规格重新变得可信
  • 让历史问题有地方放,但不污染执行面
  • 让未来阶段有地方规划,但不侵入当前范围

规格文档负责给答案,不负责保留所有讨论过程。

历史记录值得保留,但必须退出主规格。

未来阶段值得规划,但不能反向扩大当前执行范围。

任何一份文档都必须让读者在 3 分钟内知道:它到底是做什么用的。


这次拆分的目标,不是把一份大文档拆成很多小文档,而是把“当前有效规格、未决问题、历史修复痕迹、未来阶段规划”四种不同性质的信息彻底分层,让 Yomiya 的文档体系重新恢复可执行性和可信度。