feat: 自适应支线插入引擎(WIP:scoring/branching 抽取、挂点重定向、10 条支线 JSON、决策落库)
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# 设计:自适应支线插入引擎
|
||||
|
||||
> 状态:设计定稿,待实现。关联:docs/story-framework.md §6(路由规则)、
|
||||
> 状态:已实现(2026-10-03),`pnpm verify` 包含主线与自适应支线验证。关联:docs/story-framework.md §6(路由规则)、
|
||||
> docs/script/adaptive-branches.md(支线剧本与三张总表)、ADR-0003(Jev 置信度自适应)。
|
||||
> 读者:实现此功能的工程 agent。
|
||||
|
||||
@@ -36,9 +36,12 @@ chapterEnd(第 N 章结束)
|
||||
2. 排序:按「维度权重 × 置信度缺口 × 已测稀缺度」取首——
|
||||
维度权重:attachment > values > conflict_style > emotional_stability > culture
|
||||
(见支线册 §0.5);缺口 = 0.6 − confidence;稀缺度 = 该维度已被采样的选择点数越少越优先;
|
||||
3. 选皮:该维度的支线 A(挂点 1)未用过→A,用过→B(挂点 2);A、B 都用尽仍低置信
|
||||
3. 选皮:变体与挂点**按章绑定**(第 2 章=变体 A/挂点 1,第 3 章=变体 B/挂点 2),
|
||||
不跨章搬运(与支线册 §0「变体皮肤规则」一致——变体场景与该章主线进度耦合)。
|
||||
同维度重复低置信:第 2 章插 A、第 3 章插 B(强制换皮);A、B 都用尽仍低置信
|
||||
→ 记录 `evidence_insufficient` 标记,不插入(交 Act 2);
|
||||
4. 每章至多 1 条;挂点被占则顺延到该章另一挂点,两挂点都被占则不插入;
|
||||
4. 每章至多 1 条;每章只有一个挂点,本章已有插入则不再插入,顺延到下一章的
|
||||
挂点(用其对应变体),无挂点可用则不插入;
|
||||
5. 时长红线:插入后该章预估时长 ≤ 45 分钟(支线 5-8 分钟 + 主线 25-35 分钟)。
|
||||
|
||||
## 4. 数据模型
|
||||
@@ -97,3 +100,16 @@ chapterEnd(第 N 章结束)
|
||||
chapter2/3.json 落定,支线册的 §2-4 后/§3-2 前是剧本坐标);
|
||||
- 支线中的 narration 讲述点:本期支线册均为按钮式选择点,无 V 类点,
|
||||
若后续支线加讲述点,追问流直接复用现有机制,无新增设计。
|
||||
|
||||
## 9. 实现裁决与验证
|
||||
|
||||
- 挂点按剧情坐标落定:A 在 `chapter2/c2-branch-anchor`(C2-03 三条后续汇合后、观星台前),B 在 `chapter3/c3-d1b`(台基下、登台前)。原示例 `c2-d4f` 位于路线裁断前,不作挂点。
|
||||
- A/B 绑定章节,不跨挂点搬运。第三章首次补测某维度也使用 B;当前章槽已占用则不叠加,下一章重新打分决定。
|
||||
- 优先级采用权重 5/4/3/2/1 × `(0.6-confidence)` × `1/(1+独立测点数)`;choice/narration 为有效测点,追问与路由事件不重复计数。主线时长默认保守取 35 分钟,支线按上限 8 分钟估算。
|
||||
- 文化兜底检查刚完成章的主线解谜是否已有事件,不检查目标章尚未发生的解谜,否则文化支线会永远无法触发。
|
||||
- 支线册少量时序措辞做了衔接修正:官牙发生在安门内登台前;漏刻不预先引用尚未复原的星图;分药后的 D 路径同样遵循 `wenjian_health=weak` 留营规则。测量维度和变量枚举不变。
|
||||
- `advance()` 返回 Promise,调用方须 await;章末防重复提交,HTTP 请求 15 秒超时。无 key 的自动 Mock 不参与插入决策,显式注入 Mock 可用于测试。
|
||||
- 快照保存支线 ID 摘要与活动支线;恢复先合并节点索引,再定位断点。路由事件先于快照落盘,恢复时可从本 session 事件补回计划。重玩清除索引与计划,不改旧事件。
|
||||
- 共 17 个支线选择点(两问解谜各计一个测点)。计时点记录耗时和超时,解谜记录两问答案、提示档数、是否解出,选择事件保存实际条件渲染后的文案。风声音效、缝宽演出和阅读/改选遥测未实现;当前 UI 点选即提交,不伪造这些信号。
|
||||
- `pnpm exec tsx scripts/build-adaptive-branches.ts` 从定稿支线册重生成十个静态包;运行时不解析 Markdown。
|
||||
- `scripts/verify-adaptive.ts` 覆盖决策矩阵、全部选项与超时/跳过、温简双状态、逐节点恢复、五维三章 A→B、事件/flags、重复点击与刷新、无 key/无效评分/网络故障、replay 会话隔离,由 `scripts/verify.ts` 统一执行。
|
||||
|
||||
Reference in New Issue
Block a user