diff --git a/roadmap.md b/roadmap.md index 3397c282..706871b4 100644 --- a/roadmap.md +++ b/roadmap.md @@ -21,12 +21,12 @@ | 2026-09-28 | **M-2 关卡画面独立化完成(迭代 3+4 已入库,出口闸目检通过)**:独立屏 LevelMapScreen+独立性断言(状态记录 224)/关卡画面样张 v1 机检 11/11 冻结+节点图标组接线+终稿落码+换层挂点(art-bible v2.14,状态记录 225);出口检查单 `design/qa/m2-exit-gate-checklist-2026-09-28.md` 用户八项目检通过(状态记录 227) | | 2026-09-29 | **迭代重排(用户裁决「内容逻辑闭环先于验收」)**:M-3 更名「数值标定与 Alpha 创建」——战斗演出完善前移迭代 6、魔法道具+元进度标定编入迭代 7、Alpha 验收后移迭代 8;M-4 转 Alpha 后深化与内容扩展(本批,状态记录 242) | -## 当前位置(2026-09-29) +## 当前位置(2026-10-11 刷新) -- **阶段**:Vertical Slice Implementation(`stage.txt`) -- **已达成**:一局完整三关冒险+存档+元进度+营地闭合(数值 provisional,归 M-3 调参批标定);**M-1 切片表现收口关闭**(初步验收 2026-09-28,出口检查单 `design/qa/m1-exit-gate-checklist-2026-09-28.md`);**M-2 关卡画面独立化关闭**(出口闸 2026-09-28 通过,出口检查单 `design/qa/m2-exit-gate-checklist-2026-09-28.md`);UX 文档面四 spec 齐(battle / level-map / level-clear / interaction-patterns) -- **挂起待用户输入(批次解锁点)**:① 真人试玩批次(并入 M-3 迭代 5 读数)——已解闸存档:M-1 出口闸目检(2026-09-28 通过);**M-2 出口闸目检(2026-09-28 通过,八项全过)**;ADR-0007 裁决(裁丙,状态记录 210);高墙档=D 投影+字体=Fusion Pixel OFL;样张 v1 否决原因四条(已断言化,样张 v2 冻结);关卡画面独立形态(2026-09-28 用户裁决——M-2 立项依据) -- **已知挂账**:魔法道具内容批(迭代 7 承接,node-reward spec 随批出生);元进度柜台定价标定(迭代 7);反制批 Alpha(M-4);迭代 5 出口三件**已全闭**(2026-09-30 收口批状态记录 290——目检 15/15 过/带改普通 L2 [10,15]+丙追认/荆棘外延否决根因改判);完美 L1 越带处置已并入带换代承接(难度曲线与Boss.md 带换代节:落带收敛归全局难度批、M-4 排序——先带 D 悬崖修复后带值收敛;原「战斗阶段数值问题」06 条目随四带换代收口移除) +- **里程碑语义(2026-10-09 立规换代,详见下方里程碑表的换代注)**:现行里程碑 = **M3「Alpha 版本的完整实现」**——用户未明令宣布完成前停留 M3,迭代只排 M3 需求;M4=Beta 版本的完整实现,一律不排期。下文里程碑表的旧编号(M-3/M-4)保留作历史序列,语义以本节为准。 +- **迭代进度**:迭代 19 五卡全部已入库(2026-10-08,批末闸全绿);迭代 20 尚未开工(头卡=主菜单开局缺陷修复批四件已立,待用户发令);迭代 21/22 规划冻结(2026-10-09 用户令,重启=用户直接发令)。 +- **近期主战场**:文档治理与设计换代连续批(秘宝/奇物正文换代、件表扩容、全库术语统一、天赋树 v0.4、武器锻造成文),批次详情见 git 提交史;下一前沿=专长与秘宝实装批写卡、迭代 20 卡A,均待用户发令。 +- **实时状态**:以根目录 [active.md](active.md) 顶部「当前状态快照」节为准(`stage.txt` 已定性为旧阶段开关,仅存档)。 ## 主线路线(里程碑 × 迭代序列) diff --git a/tools/doc_term_audit.py b/tools/doc_term_audit.py index d30652c2..44d43632 100644 --- a/tools/doc_term_audit.py +++ b/tools/doc_term_audit.py @@ -47,6 +47,14 @@ RETIRED_TERMS = [ DEFAULT_DIRS = ["design/gdd", "design/registry"] +# 词级语境豁免:某词退役的只是特定机制语境,另一现行机制合法沿用同一词时, +# 命中行含豁免语境信号即不算退役词命中(不进疑似、不进留档计数)。 +# 充能:挖掘期/战斗段充能退役(2026-09-19),但秘宝主动件「每冒险充能」(同调件 +# 使用次数账,迭代 11 起在役)系现行机制共用该词——秘宝/同调/主动件等语境不算命中。 +TERM_CONTEXT_EXEMPT = { + "充能": re.compile(r"秘宝|同调|主动件|每冒险|冒险开始|充能账|充能维护|attunement"), +} + # 行级白名单信号:命中任一即归"留档类" WHITELIST_RE = re.compile( r"2026-\d{2}-\d{2}" @@ -70,6 +78,10 @@ def scan(paths): if SECTION_RE.match(line): in_version_section = True hits = [(m.group(0), t) for t in terms for m in [t[0].search(line)] if m] + hits = [ + (word, t) for (word, t) in hits + if not (t[0].pattern in TERM_CONTEXT_EXEMPT and TERM_CONTEXT_EXEMPT[t[0].pattern].search(line)) + ] # 上一 2 行带留档/作废/历史标记(如"下表留档作废"头注)→ 本行视为留档 prev = " ".join(prev_lines[-2:]) if prev_lines else "" prev_lines.append(line)