Skip to content

Latest commit

 

History

History
77 lines (60 loc) · 7.35 KB

refactor-roadmap.md

File metadata and controls

77 lines (60 loc) · 7.35 KB

O2Lazer 重构路线图

维护状态(2026-10-14):现行阶段状态;原版对齐已结束,暂缓功能不再作为自动推进项。 文档职责与最新状态入口见索引。

更新:2026-10-14。当前维护交付见收尾记录,原审查对照为 6bcc05e,详见文档审查与未完成工作。本页 R00–R12 是路线图阶段,不是 2026-10-06 审查报告中同名的 R01–R12 问题编号。基线 pre-architecture-refactor(04e56b8);开发目录为 D:/o2lazer 的 master,D:/o2lazer-clean-rewrite 仅作只读对照。阶段 ID 保持稳定。 职责以架构为准,风险见问题清单, 最近原版对齐的关闭与构建复核见收尾记录。

原则与完成条件

  • 明确的用户玩法契约优先;可靠原版证据用于其余规则,不能把资源名当作完整行为。
  • Core 只持有 O2Jam 规则/状态,Formats 只解码,Integration 翻译,Host 承接原生生命周期,Presentation 只消费数据。
  • 满足要求时直接使用原生实现;适配必须说明具体缺口、范围、失效行为及升级验证。
  • Mania Score 是并列原生路线,不把 Mania 的计分/失败政策塞进 O2Jam Core。
  • 分层目录不等于程序集解耦;六条精确接缝例外和两个 partial 仍由语义检查约束。
  • 成绩/谱面身份及正式 v5 保持;重构前无标记 replay 是测试实现,不兼容。
  • 自动验证、实际运行和用户验收分别记录;测试显式过滤,benchmark 必须先获授权。

原版对齐阶段

用户于 2026-10-06 决定:已选 C01–C06、F05 显示、F07 随机与 F14 新 EX 政策结束本轮开发, 其余差异暂缓。当前非 MS 使用连续 [-6,7)、[-18,19)、[-25,26) 判定,tick 误差条 早 COOL 固定为 Mania OD7 黄300半宽;KS 判前停旧重播、判后不可重复触发。 Random 复用 Mania,R-Random 含镜像轮转,S-Random 使用 Panic;旧逐音符算法隐藏保留。 无 NF 的 EX 归零继续完整记录,血量锁零,曲终 F;未来个人记录排除 F,原始成绩保留。

阶段结束不宣称全部原版功能已实现,也不补记未明确反馈的客户端验收。暂缓清单与所有者 保留在功能覆盖表和收尾记录。 此决定不自动关闭 A04、A02/A11、A16 等维护和系统验证事项,不启动其中的新工作。

阶段状态

阶段 当前状态 保留边界或下一次恢复时的目标
R00 基线与工作区 完成;只读对照保留 当前累积增量已按用户授权冻结整理并提交;后续按任务继续保留提交及验证边界
R01 独立格式解码 独立项目、A08 冻结输出与数据所有权已完成 有界真实格式样本与异常输入持续验证
R02 导入与存储 A04-1/2/3/4、活动文件修复与流水线已实现;已有完整导入与无变化更新日志 已有实库更新、双计分成绩/回放及重启证据;当前包保存获用户确认,退出等待观察、首次导入/源变化与大库边界仍在
R03 谱面/资源生命周期 A05/A09 已关闭,A15 删除无消费者接口 OJM 源身份与格式物化预算已实施;同戳修改需刷新,原生 PCM/消费者副本峰值未形成全局限额
R04 独立内核 当前选定规则、长条、EX 锁血/计分已实现,原版对齐范围结束 合成测试不是所有真实谱面的确定性验收;剩余原版规则暂缓
R05 内核到 lazer A10 解析状态、提交/池生命周期和视效已核对 宿主升级与完整 Player 场景归 A11
R06 音频 预览同曲续播、有界衔接、中段补播、原生后台音量及命中驱动的回放跳转已实现并获本轮用户确认 返回预览补播已在 Reason HX 验收;冷准备/不同设备规模未穷举,自动 KS 仍仅预留
R07 MS/Mods/难度/PP 双路线、原生速率窗口、RD 三项菜单及资格政策已实现 保持 O2/MS 隔离;组合/视觉实机边界归 A11
R08 回放与历史成绩 v5 录放/唯一身份、F 完整数据及临时库重载通过 旧测试回放可能按新窗口重判;原保存成绩不回写
R09 皮肤/HUD/产品表现 等级色、属性、筛选和 LN 视效已实现 Jam/药丸 HUD、中央文本等剩余原版展示暂缓,默认/自定义皮肤路径保留
R10 本地/服务器档案 边界和 F 筛选政策已记录,未建设新存档系统 未来个人记录排除 F,原始成绩保留;另行设计协议/聚合/冲突
R11 宿主/补丁/公共设施 2026.1005.0、26 补丁、指定 BMS 双顺序通过;协调器/只读诊断已提取并按本轮范围验收 私有接缝、多规则集组合与 A16 保留;边界见协调设计
R12 系统验收与维护 当前 1941 项本机/完整远程过滤回归和分层通过;选定 NoMS/MS 游玩、回放及 Mod 视觉获用户确认 结果见收尾记录;偶发选曲与原生 Realm 退出等待仍观察,不外推完整设备矩阵

建议的逐项解决顺序

本轮按用户授权完成独立可做的源码/文档/提交和完整宿主 CI 收尾, 具体状态见收尾记录。 当前包受影响的用户游玩/视觉清单已通过;偶发选曲保留观察,出现新证据再定位。 原生 Realm 退出等待已补两条成绩/回放的重启核对;隔离诊断确认取消/异常计数缺口, 该次触发调用仍未定位。普通退出未再次超时,暂不修改存储实现,细节见诊断记录。 依赖升级须匹配宿主;更多设备/大库/规则集按具体范围另验收。 SQL/服务器档案、暂缓原版功能与无消费者的泛化不自动开启。 性能实验仅由存储契约和专项历史页管理,新的 benchmark 仍需独立授权。

本轮验证基线

当前维护快照为七组 1941 项过滤验证,完整计数与包身份见收尾记录。 以下 1352 项及早期 EX DLL 部署是原版对齐的历史基线,不代表当前全部客户端验收。

2026-10-06 原版对齐收尾当轮:scripts/verify.ps1 1350 项与两个独立 BMS 用例,共 1352 项通过;无失败或跳过。后续曲库冻结的最新验证和发布见 冻结复核。 模块、计分、存储与语义架构检查通过,编译错误/越层/过期例外为 0。未运行 benchmark、 启动客户端、更新/清空真实库或安装 DLL。具体范围见收尾验证。 上一运行版 EX DLL 于 2026-10-05 19:23:50(JST)备份安装,后续真实表现不由自动化代替。

每项处理记录模板

记录需求及用户选定政策、范围/非目标、所有者、原生可用入口与具体缺口、数据身份/版本、 源码/临时库自动证据、客户端反馈、风险和剩余限制。未来重新启动暂缓项时先确认需求, 再决定是否修改实现;不要直接把原版资源名、旧计划或某项测试通过当作新授权与验收。