- 新版设计各域 SoT 按本轮实现同步:总体架构、模块设计、接口契约、数据模型、功能规格、文件设计与决策记录。 - 接口契约生成物重新导出(openapi 与前端客户端随契约一致)。 - 实现回顾与专项检查台账保留历史结论;本轮收尾发现另见 .agents.local 下的收尾报告与审查处置。
88 lines
7.7 KiB
Markdown
88 lines
7.7 KiB
Markdown
<!-- 导航元信息: {"内容描述": "B01 作品规划", "使用场景": "设计、实现或评审对应主题", "使用要求": "与阅读指南的主题权威分工一致"} -->
|
||
# B01 作品规划
|
||
|
||
## 职责与对象
|
||
|
||
作者的作品身份、探索稿与未来叙事安排。规划不直接改写正文或确认故事事实。
|
||
|
||
实例归属以[总体架构](../总体架构.md)为准;结构、状态和公开外壳分别引用数据模型与接口契约。
|
||
|
||
## 公开接口
|
||
|
||
| 用例 | 输入责任 | 输出与后果 |
|
||
|------|----------|------------|
|
||
| create_work | 作品档案与创作目标 | 作品身份及初始目录版本 |
|
||
| save_exploration | 草稿 ID、内容、预期哈希 | 原子保存回执;内容留私人草稿 |
|
||
| propose_plan | 作用域、有效结构、来源和作者意图 | 规划候选与任务身份 |
|
||
| edit_plan_candidate | 确切候选版本、哈希和字段变更 | 同一候选追加版本,重新审阅后才能确认 |
|
||
| confirm_plan | 被审版本和批准范围 | 规划正式版本与影响 |
|
||
| prepare_recent_plan | 当前章、已确认前置与预算 | 已有可用细纲或细化任务 |
|
||
| reorder_chapters | 稳定章节身份与预期目录版本 | 新顺序与受影响引用 |
|
||
| save_plan_nodes | 预期目录版本与完整节点次序 | 同一目录版本中的卷、章、场景归属;正文保持其稳定章身份 |
|
||
| query_progress | 作者与作品身份 | 带目录、正文、候选版本和任务事件位置的只读进度 |
|
||
|
||
所有接口在本模块的接口.py 暴露。输入输出类型由同一公开表面导出,外部不导入私有模型或 SQL。
|
||
|
||
## 内部职责
|
||
|
||
| 文件 | 职责 |
|
||
|------|------|
|
||
| 接口.py | 作品规划公开用例和可导入合同 |
|
||
| 模型.py | 作品规划稳定对象、外壳及内部状态 |
|
||
| 存储.py | 作品规划所属记录的 SQL 与版本读写 |
|
||
| 作品档案.py | 作品、系列、定位、目标与计划 |
|
||
| 探索草稿.py | 受控私人稿件身份、原子保存和内容哈希 |
|
||
| 探索交接.py | 最终格式检查与正式规划候选 |
|
||
| 分层规划.py | 全书、卷、章、场景和节奏安排 |
|
||
| 近期细化.py | 章级细纲与可写条件 |
|
||
| 目录调整.py | 稳定章节身份、重排、节点视图与影响 |
|
||
| 规划版本.py | 规划候选、确认、分支及合并 |
|
||
| 进度查询.py | 正文、任务和决策的真实进度查询 |
|
||
| 提示词/生成作品规划.md | 书级规划任务模板 |
|
||
| 提示词/细化章节计划.md | 章级细纲任务模板;兼容文件名及资源名 `规划/细化章节计划.md` |
|
||
|
||
完整路径及运行模板见[目标文件清单](../项目目录与文件职责.md)。逐文件意图、边界与目标见[文件合同](../文件设计/后端-B01-作品规划.md)。
|
||
|
||
## 实现约束
|
||
|
||
进度查询经B01、B05和S02公开查询组装,不建立第二份进度表。已保存章数仅表示主分支存在正文版本,候选、排队任务或质量检查都不算完成正文;各项带其实际读取版本和事件位置。该进度用于查看当前工作,不作为定稿或切换的原子版本快照。
|
||
|
||
新版私人探索由作者配置的`文件.探索草稿`指定目录,按已认证作者和稳定稿件身份分区保存。文件封装原始文本、名称、版本与稿件哈希,原子保存不写PG。网页、CLI和主会话调用同一B01接口;客户端只传稿件身份,不传物理路径。最终格式检查读取安装包中的交付结构,检查结果绑定确切稿件哈希;方向确认和正式规划候选是后续独立动作。
|
||
|
||
明确选定方向时,B01将该稿的确切快照写入PG的选定版本,并经S01保存同事务回执。作品的选定当前指针单独版本化;改变方向追加版本,私人稿后续修改不改既有选定快照。作者归属与时间由服务端决定,旧自报确认JSON不能代替该动作。所选快照是允许的规划来源,仍不等于正式规划内容或本书事实。
|
||
|
||
规划候选编辑在同一候选身份下追加不可变版本,保存时核对被编辑版本与正式基线。字段变更作用于服务端读取的候选内容,仍受当前S04用途策略约束;作者不能借编辑改变作品、目标节点或原始正式基线。旧候选版本和对应决定保留可查,编辑后的内容须重新打开审阅。正式基线或必要来源已改变时,作者应基于当前规划另拟候选,不隐式重定基线。
|
||
|
||
目录节点由B01代码保护node_id、kind与parent_id,内容计划继续使用S04动态结构。卷位于作品下,章可直属作品或属于卷,场景属于章;同级顺序由节点列表决定。目录修订保留已有节点身份与种类,新增、改名或移动形成新目录版本;章节列表是该版本的顺序投影,不形成第二份目录权威。旧的单层章节操作仍经同一存储更新;已有分卷时跨卷移动使用节点目录命令。正文始终引用原chapter_id,目录变化产生原有directory_changed影响。
|
||
|
||
规划目标可以指定稳定node_id;章节点与原chapter_id入口指向同一规划身份。节点ID及章节归属放在稳定外壳,不混入动态内容。书级/卷级大纲、章细纲、场景卡使用各自声明的适用粒度;scene的旧block表示叙事场景,不等同正文段落。目录节点保存本身不确认这些节点的规划内容。
|
||
|
||
- 阶段 0 按素材、联系、中心和结构渐进探索;代码只管理受控保存、最终格式与正式交接。
|
||
- 不同题材字段经 S04 结构,书级规划和章级细纲各有适用合同。已有细纲必须核对当前来源才可复用。
|
||
- 规划引用按目标类型归属解析;下层规划的导航关联不构成反向依据。可用细纲还需通过当前写作用途投影的必需内容校验,历史查看不能代替可用性判断。
|
||
- 章节与场景有稳定身份;节点视图操作形成明确变更,重排计算时点与下游影响。
|
||
- 实际进度读取 B05 与 S02 公开结果,未查询到状态不能被记为已完成。
|
||
|
||
受控模型规划由“冻结规划→模型规划→保存规划候选”三个 S02 步骤执行。规划角色固定为 planner、零工具;模型输出合同取 S04 规划用途可读字段与作者可编辑字段的交集,隐藏字段不进入模型材料。新作品可从已授权的本书目录建立首份规划,不依赖一份尚不存在的细纲。现有规划、明确选定探索及字段用途均固定版本与哈希,恢复和交付时重验。
|
||
|
||
模型交付只经 B01 写入 Shadow 候选,并保留任务、快照、调用、提示词哈希和技术证据;候选查询区分模型来源与人工来源,人工编辑仍追加候选版本。模型不调用作者确认入口;正式采纳复用 S01 并复检冻结方法依据。任务创建与已验证配置绑定同事务,角色配置缺失或输入预算不合法时不留下孤儿任务。
|
||
|
||
## 协作与失败
|
||
|
||
通过 B09 取得允许来源,向 S02 发起规划角色任务,确认经 S01;必要世界设定转交 B02 独立确认。
|
||
|
||
未确认前置、源变化、目录并发变化或结构不兼容时拒绝继续写作并返回具体缺项。
|
||
|
||
## 验收行为
|
||
|
||
- 新作品与短篇不需要增加作品号分支。
|
||
- 探索稿不进入正式上下文。
|
||
- 重排不改章节身份或现有正文。
|
||
- 细纲源变化后不能直接复用。
|
||
|
||
验收入口和替换条件见[迁移与验收](../迁移与验收.md);这些条目是目标行为,不是已通过测试的声明。
|
||
|
||
## 节奏能力边界
|
||
|
||
当前节奏标注、题材档位和节奏分布是离线纯函数,已有单元用例;尚未接入CLI/HTTP或编排用户旅程。保留公开函数及模型,空场景明确报RHYTHM_INVALID,不把零消费者当作删库或开放新流程的依据。开放节奏旅程须先确定消费者、输入语义、兼容和验收,再独立实施。
|