Skip to content

Latest commit

 

History

History
247 lines (200 loc) · 33.6 KB

documentation-audit-2026-10-08.md

File metadata and controls

247 lines (200 loc) · 33.6 KB

文档审查与未完成工作

日期:2026-10-08。代码核对基线:master / 6bcc05efb6d3957ea61745815d855deddecfb76e。 范围:仓库原有 39 份 Markdown(根目录 4 份、docs 35 份),以及说明中引用的主要源码、构建配置和测试入口。本报告新增后为 40 份。 本轮仅修改文档;没有修改生产代码、安装 DLL、操作客户端或数据库,也没有运行测试或 benchmark。 既有测试数、安装 Hash、性能日志与客户端反馈按原日期保留,不冒充本轮执行结果。

后续实施(同日):用户确认后已完成 R03 的回放读写预算及附件失败保分子项,生产改动、定向测试与边界另记在该页。上面“仅修改文档”描述的是本审查快照,不覆盖后续实施;新增回放、OJN、成绩校验契约及验收记录后仓库为 44 份 Markdown;OJN 预算及 R04 成绩元数据校验的实现与定向证据单独记录。全部问题的当前必要性见下方复评。

现状与编号规则

Core/Formats 独立编译;Integration、Host、ManiaScore、Presentation、Composition 按职责和语义依赖检查约束,仍合在宿主 DLL 中。 Realm 直接操作已隔离,原生模型依赖和两个跨层 partial 仍在,不能视为任意后端可无修改替换。 未发现文档需要另立一套与当前架构相冲突的层级;主要偏差是完成状态落后、当前契约与历史实验混写,以及同名编号容易混淆。

  • A01–A16:初始架构问题,见架构审查。
  • 审查 R01–R12:2026-10-06 的源码/维护问题,见独立审查。
  • 路线图 R00–R12:阶段编号,见路线图,不与审查问题逐号对应。
  • C01–C07、F01–F18:原版行为差异与功能覆盖;已决定暂缓的项目不是当前实施队列。

目前已完成且不应重新挂起:收藏夹管理 ID 归属及开关通知、超长 LN 可选补绘修复、CI 不依赖 rg、BAD 使用原生 Meh/50 黄色、指定 BMS 共存协调设施、预览同曲声部续播/有界衔接、KS 原生后台音量衰减,以及命中驱动的回放中段补播。 用户本轮确认音频和回放表现正常;冷缓存、所有设备和完整组合仍不能据此补记验收。 当前 master 与已发布 1.0.0-test2 不同:后续协调设施、测试桥及本轮音频修正尚未包含在该 release 中。 用户后续授权以 1.0.0-test3 发布维护增量;正式 DLL 排除测试桥和可选计时探针, 本页各项历史验证与未关闭边界不因新版本发布而扩大。

本轮修正的过时内容

过时说明 当前事实与处理
小型 KS 跳入中段无法补尾音、继续暂缓 原生 SampleChannel 无 Seek 的限制仍真实,但已通过原生 TrackStore/Track.Seek 局部适配。修正路线图、架构清单、玩法规范、功能覆盖和韩服汇总;保留冷缓存异步准备边界。
预览补播和后台音量仍等待用户确认 更新预览页;区分早期“待验收”记录与后续明确反馈。回放补播按实际命中/撤销记录,不自动补漏判。
收藏夹按名称/前缀管理 改为按持久化管理 ID 确认所有权。固定英文生成名称属于展示/存储稳定性,不能提供删除权限。
BAD 仍映射 Ok、默认文字 OK、legacy hit100 功能覆盖页改为 Meh、MEH、mania-hit50;中央 O2Jam 判定文本仍未适配,不能把颜色修复当成名称修复。
当前查询模式仍为 native-link-v1 当前日志实际为 native-link-digit-v2。完整十位数字组仍在;撤回的是部分数字组实验。当前架构及存储计时说明已校正。
A04-3/4 仍待构建,重复竞争和文件恢复尚无验证 去重/通知及预留/模型恢复已实现并有临时库回归。更新初始缺口列表与设计进度,不把未完成的客户端矩阵说成未实现代码。
曲库性能仍完全等待实测 已有约 268 秒完整导入、16–17 秒无变化更新日志及冻结决定;更大规模和完整 A04-5 联测仍未关闭。观测不是稳定吞吐承诺。
开发说明复制多轮性能实验,每段都称“当前/最新” 删除重复的顶部逐轮叙述,改为当前构建状态与存储契约链接;原始证据留在存储文档。给其余早期部署段明确历史范围。
test2、旧冻结报告和历史 Hash 被当作最新 master 发布内容保持冻结,只加适用范围与后续状态链接;旧测试数不累加、不重新验收。
判定撤销被描述成恢复现成快照 审查时实际代码重放剩余历史;2026-10-09 R07 已实施现成快照尾部恢复与乱序后缀重算。时间边界页记录现行机制;音频历史仍独立。

六项源码问题的当前实施状态

初始复现来自 2026-10-06 审查;下表记录后续实施与定向回归,原问题证据保留在历史审查中。

审查 ID 所有者/优先级 当前问题 修改与验收约束
R02 Formats + Host 资源生命周期/P2 已实施延迟载荷的同句柄源身份与失效恢复,读取/缓存按选定原生式边界复用;完整性能/设备组合保留。 明确源身份/失败恢复,不按每次采样重复全文件校验;保留合法 ID 0、缺失不借用、解密与暂停/seek;预览和切换不能退化。
R03 Host.Replays、Formats/P1,部分完成 回放外部导入/已存读取及本局保存共用流式预算;附件失败仍保留原生成绩。OJN 源字节/实际事件预算已实现;OJM non-seek 缓冲、单输出、eager/Lazy 累计与并发预留已实施;原生 PCM/副本峰值仍保留。 现行归档政策与验证已替代回放子项旧候选;原文件/成绩保留,导出复用原生复制。OJN 契约记录 64 MiB/100 万事件、原有读取路径与失败保护;OJM 剩余必要性见下方复评,独立设计,不插入逐帧检查。
R04 Host.Replays/已实现 正式 v5 外部元数据入口已拒绝越界 Accuracy、负分数/MaxCombo/统计、非法原生枚举及统计合计 int 溢出。 现行校验与 250 项定向验证;保留 v5 默认值和合法哨兵,已存播放不重新导入未使用的归档成绩字段;已有客户端范围见验收记录,其余组合独立验收。
R05 Core/已实现 TimingMap 的归一化快照使用 .NET 只读包装;事件位置在既有枚举中拒绝非有限数及负值。 现行契约及实施证据:101 项 Core、65 项宿主相关过滤测试全部通过;原分段/变速算法、零位置、同位置最后事件及负查询保留。已随当前 R12 测试包安装,不将功能回归当作客户端性能量测。
R06 Formats/已实现 OjnReader.ReadChart 使用 .NET ReadAtLeast 读满三字节前缀,再沿原有位置/解密/所选难度路径解析。 现行流契约与实施证据:124 项 Formats、71 项宿主相关过滤回归通过,包含新增 42 项短读/截断用例。正常所选难度读取范围保持,无新缓冲框架/扫描/补丁;已随当前 R12 测试包安装。
R07 Core + Integration.Scoring/已实现 JudgementHistory.Revert 复用原生结果中的完整核心快照做尾部恢复,乱序撤销仅重算后缀,修正快照独立缓存。 现行契约:252 项过滤回归通过;100 次尾部撤销仅 100 次最终通知,普通前进无额外快照。原生结果事实/推进、EX/NF、v5 和 MS 保持;没有计时 benchmark,已随当前 R12 测试包安装。

R03 回放/OJN、R04 的输入保护、R05 时间图和 R06 短读取前缀修复已完成;R08 的统一过滤与可配置宿主 CI 入口也已实施并通过本机验证;2026-10-09 R07 已实现并通过定向回归。当前 R02 与 OJM 格式层保护已实施,下一步按最新维护顺序处理交付和剩余验收,不把全进程资源或全部性能组合记作关闭。

后续实施的当前状态集中如下,逐轮候选、失败、对照授权和恢复证据保留在 源与资源历史,不再在此重复实验全文。 截至 2026-10-14,R02 源一致性、选定读取缓存与原生准备调度已合入; R03 回放/OJN/OJM 缓冲、实际输出和 Lazy 累计预算已实施,原生 PCM/副本峰值仍有边界。 R05/R06/R07、R09 及音量矩阵已进入当前源码与验收包。 维护收尾记录本次 1941 项回归与 CI, 当前客户端记录 Reason 补播通过及偶发选曲观察。

验证与维护尚未完成的部分

范围 已有证据 剩余工作
审查 R08:音频约束 基础增益矩阵已覆盖 KS、短自动音和流式 BGM 的原生对象/BASS Volume;Effect 0/中间/1、Master/Music 静音、命中音开关两种状态、后台新建/恢复通过,相关 174 项回归包含新增 21 项。 基础自动验证缺口已补齐;实际听感、OS 焦点、硬件混音/完整设备、Player/预览混音与任意 Mod 不由此证明。远程 CI 仍独立验收。
审查 R08:远程 CI 共用入口统一排除 Benchmark/LocalDiagnostics/Isolated;workflow 调用 Portable/Host,有匹配引用时执行宿主依赖图、常规及独立进程 Realm/replay,并保存 TRX 和覆盖摘要。本机六组 1718 项通过。 2026-10-14 已配置固定官方 URL/摘要,完整远程七组 1941 项通过且 TRX/语义报告已核对,见维护收尾。宿主升级后需换匹配参考并复验;不能外推所有未来版本。
A04-5 / 审查 R12 验收记录包含同一验收 DLL 的双次正常更新、数据/收藏保留、预览控制、已有正式回放读写/重启、NoMod/MS 两局新成绩保存及重启后读取、回放前后跳转与数据保留对照;用户未报告异常。 多采样/冷缓存/设备及完整视觉/音频组合仍待确认;首次导入和故障恢复的实机矩阵未据此关闭。
曲库规模 / 审查 R10 用户选定冻结版本;准备/计算队列与写入批次有界。 后段查询随库规模增长原因和万首以上实际成本尚未受控确认;不承诺线性推算结果。未经单独同意不运行 benchmark。
A02/A11 / 审查 R12 指定 BMS 双顺序、结算图标、启动协调登记与此前有界游玩反馈通过。六个协调入口中实际共同所有者为三个。 旧 BMS 成绩/回放完整导入、完整双方链路、第三个 ruleset 与未来版本组合未验收。协调器不自动扫描/修复未知补丁语义冲突。
宿主 API / A16、审查 R12 目标 2026.1005.0,26 项补丁、六条精确例外和两个 partial 有记录;此前构建报告 AutoMapper 13.0.1 NU1903。 R12 本轮联网审计新增 ImageSharp 五条公告,连同 AutoMapper 共六条;实际宿主版本受影响,未更换共享依赖。完整 Player、全部私有 API/加载顺序及全宿主安全仍未由此次核对证明。
审查 R09:清理 资源兼容核对及清理已完成:32 个无生产消费者入口和中英文各 30 项资源删除,保留 104 项;旧配置名称/序号/默认值及自动 KS 预备保留。97 项相关回归、8 项临时数据库旧配置读写/重启通过,分层和正式包隔离通过。 选定仓库及已安装 DLL 的兼容核对已完成;未知外部源码/二进制/反射消费者不由静态核对保证。当前源码验收包已由 R12 安装;自动链路/旧回放读取和重启对照通过,仍不称为完整 Player/听感验收。
审查 R10:可维护性 本轮音频代码分为主文件、Handoff/Restoration 等 partial;仍保持 Host 归属。 partial 只是组织,不是完全解耦。大型 LibraryWriter、Reader、表现适配器仍需按实际缺陷窄拆分;不能增加查询/复制或泄漏 ORM 来换目录整洁。
审查 R11:文档 本轮完成状态修正、历史范围标注、顶部重复叙述合并与链接检查。 当前明确文档偏差已处理;未来功能变更仍需更新其唯一责任文档。不是运行时代码问题。
跨 ruleset 复用 独立 Core/Formats 与有限宿主通用设施已形成边界。 尚无新 BMS 项目作为第二真实消费者证明所有底层可直接移植;有 O2Jam/MS/元数据语义的入口不能直接称为通用库。
测试桥 opt-in 测试构建,正常构建排除;原生启动/普通退出、选曲/模式/预览可控。 尚无完整 Player/replay 自动控制或真实输出采集;BMS 自定义选歌页不在当前 Solo 类型边界内,本轮需手动返回。控制响应/日志不证明听感/动画。

R04 完成后的必要性复评

日期:2026-10-08。按用户要求重新评价已完成与剩余的 审查 R01–R12; 不是重新打开路线图阶段,也不把所有维护候选都升级为必须重构。 本次重新阅读对应源码和工作区实现;没有重复全库诊断、benchmark 或客户端验收。

当前分层仍成立:生产语义检查为 0 编译错误、0 越层违规、0 过期例外; 六条精确例外与两个跨层 partial 保持。新增保护分别留在 Formats、Host/Replays 和 Persistence/Realm,没有证据支持再次整体推倒框架、按目录强拆 DLL 或另造原生成绩系统。 第二个真实 ruleset 消费者尚未建立,不能因此承诺所有 Host 设施已无需修改即可复用。

已完成部分是否值得保留

项目 当前收益与必要性判断 成本、原生替代及边界
R01 收藏归属 必要,保留。解决可能误改/误删用户同名前缀收藏的明确数据保护缺陷。 使用原生持久化 ID/设置和收藏事务;显示名不能替代归属。没有理由回到前缀删除,也没有理由另建收藏数据库。旧无归属收藏保留是兼容政策。
R03 回放读取预算 必要,保留。压缩输入与大集合需要有界消费;单次原生解析/解压替代原全量字符串与部分副本,范围集中。 具体 64/128 MiB、100 万项等是支持政策,并非格式标准或峰值内存保证。可能拒绝合法超大归档;样本余量与功能测试不证明客户端等待零变化。无需追加第二遍 JSON 扫描。
R03 本局保存与附件失败隔离 必要,保留。必须避免编码/输出预算失败连带丢掉成功的原生成绩或发布半回放。 继续原生 Player/ScoreManager 导入和文件关联、导出复制;定制部分只负责社区格式及失败交接。归档保护不限制 Recorder 本局累计内存,也不消除所有进程退出故障。
R03 OJN 字节/实际事件预算 必要,保留。公共解码和源快照入口原无整体保护;可在已有长度/遍历中完成。 64 MiB/100 万事件仍是支持范围政策,超大封面也占字节预算。无新全文件扫描/Hash、重复解码或 Realm 查询/事务;客户端冷加载与写入吞吐仍须按既定边界验收,不能仅据计数测试声称性能达标。
R04 外部成绩校验 必要,保留。已复现的越界字段会进入原生持久化模型;小范围检查阻止无意义数值和 int 统计求和溢出。 原生无统一可复用校验;约束原生类型容量与枚举,不添加音符总量/反作弊规则。不在保存或已存观看时重导入字段,不修旧库;无需新增 schema、补丁或 UI。
R05 时间图 必要,已修复并定向验证。公开集合无法再改写,副本与原图的时序一致;构造拒绝非有限位置。 复用 .NET 只读包装及现有输入遍历;无额外数组副本、源枚举或文件/Realm 工作。正常查询算法不变;166 项过滤测试证明已覆盖行为,不替代未进行的客户端加载/吞吐量测。
R06 短读取前缀 必要,已修复并定向验证。公共 Stream 的合法短读取不再误判为普通 OJN,截断输入仍被拒绝。 仅替换为 .NET ReadAtLeast,保留所选难度读取范围和现有缓冲/所有权。195 项过滤回归通过;没有新增生产抽象、扫描、Hash 或存储工作,未替代客户端性能验收。
R07 判定历史 必要优化,已实施并定向验证。100 次倒序撤销从原审查 5050 次通知降至 100 次,尾部不再扫描或重放历史;状态等价覆盖同帧乱序和完整 EX/NF。 复用已有结果快照,无正常命中快照副本;仅乱序时缓存修正后缀,保留原生撤销事实。252 项过滤测试和分层通过。非尾部仍有线性查找/后缀工作,不是任意乱序都常数级;没有 benchmark、客户端量测或安装,不扩大为所有 seek 性能承诺。
R08 过滤与宿主 CI 入口 必要,已实施并本机验证。显式分类保护避免未来新增 benchmark 混入;CI 复用已知宿主及独立 Realm/replay 流程。 共用现有 PowerShell/dotnet 入口,无新运行时依赖;1718 项过滤回归及语法/失败退出/报告模拟通过。远程变量尚未配置,代码实施不等于远程执行;音频矩阵仍另列。
R08 已补 KS 原生音量回归 必要,保留。直接守住用户指定的 Effect 独立及原生后台衰减规则,防止父级增益接回错误路径。 测试使用原生设施,不增加发布运行成本。不能把单组 KS 测试扩大为所有设备、BGM 和命中音开关已穷举。
R11 文档整理 必要,已完成明确偏差。避免维护者把实验、发布 test2 与 master 当前契约混用。 无运行时成本。唯一契约加历史证据链接已足够;不为消灭所有历史页面删掉来源和回退依据,也不在每页继续复制测试日志。

这些完成项不因“已有原生框架”就失去必要性:格式、所有权及用户政策存在具体原生缺口。 同时,预算保护的必要性与某个阈值永远合适是两件事。以后仅在有效超限样本或真实体验 显示政策不合适时调整阈值/实现,不能为了继续优化凭空增加扫描、缓存层或抽象。 本轮 R04 定向验证 250 项;R03 和 R01 证据各按专项原日期记录,不累计为当前全项目测试总数。

剩余部分是否必须修改

项目 必要性与优先级复评 建议最小范围/停止条件
R02 OJM 延迟源身份 需解决的一致性缺陷,方案独立评估。触发需要索引后源被改写/替换;常规播放稳定文件时不发生,不能以修罕见变化牺牲所有首音。 结合已有打开/读取和缓存身份判断,先确定失效恢复语义。不实施每采样前后 FileInfo/全文件 Hash;长期句柄会改变 Windows 替换行为,不能未经设计直接引入。保留缺失采样及 ID 0 兼容。
R03 剩余 OJM 资源保护 保留输入保护目标,拆开设计。Read/ReadIndex 的 non-seek CopyTo 无上限,单载荷可申请很大 byte[],需保护;统一整包大小上限不是唯一办法。 现有 M30 数量/载荷边界和 lazy 读取已提供部分保护,生产缓存主路径使用 ReadLazy;索引也非全部采样载入。先界定缓冲、实际物化字节和原生解码的预算,保留 M30 容忍,不把 OJN 64 MiB 直接套到音频包。没有依据时不添加整曲预解码或全包扫描。
R08 远程启用/音频矩阵 保留剩余验收,不重复重写已完成入口。过滤保护和可配置宿主 CI 路径已完成;目前缺少远程参考来源,完整音量组合也未覆盖。 配置可信匹配 Game/Mania/Resources 的归档后验收远程六组与报告。围绕现有音量政策补 BGM/开关边界,设备穷举不作当前完成前提;本机证据不冒充远程或听觉验收。
R09 资源/配置清理 可选维护,降低优先级。32 个无显式生产调用的公开入口不是运行缺陷,也不能作为加载提速措施。 仅在公开 API/资源消费者可确认时同步清理;旧配置/随机枚举身份不删改。用户要求的自动 KS 预备保留。若没有明确维护收益,可保持兼容并说明用途。
R10 大型类拆分 可选,不单独发动大重构。文件长或 partial 不等于违反分层;目前显式依赖边界可验证。 修实际缺陷时提取被触及的具体职责即可。拆分不能增加查询/事务/复制、使 Realm 对象进入工作队列或另造无消费者接口;无法减少理解/修改成本时停止拆分。万首性能另行验证,不靠拆文件解释或改进。
R11 后续文档维护 持续责任,不是未做完功能。本轮明确过时项已处理。 每次变更更新主契约和索引,保留实现/自动测试/客户端反馈/版本的区分;不把历史报告的原结论改写成从未发生。
R12 实机/宿主/依赖 交付前必要验收,按实际版本做。新增输入政策及私有接口仍需完整客户端链路;既有 NU1903 告警未消除。 当前版本先完成 A04-5 与指定 BMS 链路、预览/写入不退化验收。升级时逐项检查补丁缺口,能回原生接口则删除适配;不偷换客户端映射库或隐藏告警。第三 ruleset/所有未来版本不作为本轮无限穷举任务。

R03 的 OJM 缓存容量不是硬进程上限:当前缓存会保留正在使用的单项,即使它很大, 旧消费者也可能继续持有被驱逐资源。因此“已有 384 MiB 缓存”不能自动关闭所有载荷分配风险; 同样,“音频包很大”不能自动成为拒绝整包的理由。应保护实际工作范围,再确认支持阈值。

更新后的推进顺序

R05/R06/R07 已完成代码与定向回归,尚未替换客户端 DLL。R07 的实现与复评于 2026-10-09 补充,不改写原审查日期。接下来按以下顺序处理:

R08 的统一过滤和可配置宿主 CI 入口已完成,本机共用入口验证通过;远程启用与完整音频矩阵另行验收。

R07 已完成最小恢复方案,不再为它建立额外 checkpoint 系统。

  1. R02 与 OJM 剩余资源保护独立设计:源身份与资源量不是同一缺陷,可协调生命周期但分别验收;不默认允许预览首音变慢。
  2. R09/R10 随相关修改处理:只做有证据收益的清理和职责提取,可留作后续维护,不阻塞下一功能。

R12 的当前客户端验收应在下一次交付前完成,并与上述小项穿插;不必等可选清理全部做完。 R03/R04 已安装验收 DLL,已覆盖的客户端数据链路及用户游玩反馈见验收记录;正常样本的回放前后跳转也已补测;OJM 剩余保护与完整组合未因此关闭。 不要求再次验收所有历史功能;重点是本次输入政策、原保存/导出/播放链路和性能严格边界。 无需为了关闭清单另加服务端存档、SQL 后端、完整 Player 测试桥或未选择的原版功能。 复评没有放宽用户性能约束,没有新增 benchmark、真实库故障注入或安装授权。

最新维护顺序(2026-10-14)

R02 已知源混读缺口和读取/缓存策略、原生准备调度已合入;R03 格式层预算已完成, 全进程 PCM 与副本风险仍保留。R08 基础原生增益矩阵、R09 清理与旧设置兼容已经补齐。 R10 不因文件长度独立重拆;已完成实现不重新挂起。

本轮独立可做的收尾是:

  1. 当前维护快照/正式包核对,七组 1941 项过滤回归和分层检查。
  2. 固定官方匹配二进制 URL/摘要已配置,完整 GitHub 宿主 CI 的七组 1941 项已通过并核对报告。
  3. 合并过时状态与重复文档,按授权提交/推送;不自行新建版本或覆盖 test2。

具体交付与远程执行结果统一在收尾记录。 2026-10-14 最终人工清单的 NoMS/MS 游玩、暂停、结算保存、回放及 Mod 视觉已获用户“全部正常”确认; Reason HX 回放退出预览此前已通过,Mania→O2Lazer 偶发选曲滞留仍观察。 最新退出日志另有原生 Realm 异步操作等待超时;两条新成绩/回放重启读取通过, 五项隔离诊断确认宿主取消/异常计数缺口,但该次具体调用仍待定位。 本轮普通退出未再次超时,暂不加补丁,详见退出等待诊断。 历史 A04-5/R03-R04 的已有成绩、回放与数据验证不要求全部重做。

依赖公告、首次导入/实库源变化、更多设备/大库/规则集组合仍有独立范围。 它们不构成无边界的新 benchmark、SQL/服务器档案或整套原版功能实施授权。

暂缓或未来设计,不作为当前缺陷修复队列

  • 本地/服务器档案与新存储后端:只定义边界,没有新档案系统、同步协议、冲突策略或 SQL 实现;未来个人记录排除 F,原始成绩保留。Realm 隔离不能替代迁移设计。
  • F01/F02:Jam/药丸 HUD 与中央默认 O2Jam 判定名称尚未构建;现有状态与结算统计不等于专用呈现。
  • F04/F05/F06、C07:Classic LN 模式语义、精确流速标尺、原版遮挡、DirectSound 音量/声像曲线尚未完全确定/对齐。3.5/4.5 显示档已实现,不应列成未实现。
  • F08/F09:Genre 在格式出口未保留;原版专辑/选曲组织若要复刻需另定需求,原生查询/收藏可用部分继续复用。
  • F15/F16:独立 KS/BGM 用户增益与专属成绩摘要/持久化字段未实现。效果音量独立、后台衰减修复不等于新增独立混音设置。
  • 自动 KS Mod:内部入口预留,暂不显示;实时游玩/未来自动音不套用本轮回放历史恢复。
  • F10/F11/F12/F13/F17:教程、任务、3Key、原版对战、商城/Avatar/OPI/OPA 等未纳入当前 custom ruleset 承诺;原生同类能力不重造。
  • 更多语言:生产支持英语和中文;日语区域资源是测试夹具。新增语言需翻译资源并实测原生界面布局。
  • 原版研究验收:静态客户端对照仍有异常网格、小节/LN、零血网络边界及随机实际游玩等未确认材料;原版对齐阶段已结束,不自动重启。

未归属旧收藏保留、可能出现同名收藏、旧测试 replay 不兼容、历史源变更成绩不挂新谱面、同戳 OJM 需刷新、超长 LN 关闭修复走原生路径,都是已选定的边界,不另列为必须修复的缺陷。

逐文档处理表

“保留”不代表所有外部事实重新联网验证;历史报告中的“当前/待验收”均按其日期阅读。 没有发现可直接删除而不损失契约、来源或故障证据的整篇文档,本轮不删文件;重复的开发日志叙述已改为引用。

文档 分类与本轮处理
AGENTS.md 现行维护规则,保留;不变更用户约定。
English README / 中文 README 两份能力入口,补当前音频及 master/test2 差异。
THIRD-PARTY-NOTICES 来源与许可说明,保留;旧 BMS 来源不可因重构删去。
docs 索引 更新当前状态入口,区分历史冻结与最新音频。
architecture-audit 更新 A04/音频状态,保留 A 系列证据。
audio-sync-diagnostics 有界诊断指南,保留;默认关闭,不代表实际设备已验收。
bms-coexistence 当前共存边界及历史矩阵,保留;三实际重叠点与六登记入口已区分。
clean-rewrite-architecture 校正查询模式及性能状态,仍为层级规范入口。
column-randomisation 当前随机契约,保留旧枚举/种子身份,不重启暂缓项。
compatibility-patches 现行必要性/失败清单,保留;BAD 取色补丁已说明移除。
development 合并顶部重复实验,更新 master 状态、测试桥链接和历史部署边界。
dpjam-client-comparison 历史辅助证据,保留;修正前表格不重写。
hit-error-display-validation 现行几何与历史测试,保留;Meh 现状和已移除取色补丁已区分。
korean-client-comparison 主参考/当前差异汇总,更新 KS 限制,保留原版未验收边界。
lazer-20261005-compatibility 版本专项历史证据,保留日期/Hash。
lazer-test-bridge 当前 opt-in 控制指南,保留;正常构建不打包。
library-persistence-contract 修正 A04 进度/查询/矩阵;性能历史单独标注,不改身份政策。
library-refresh-release-review 增加历史冻结范围,不用旧音频暂缓覆盖 master。
localisation 修正收藏所有权说明,保留资源/固定英文约定。
maintenance-update-2026-10-06 当轮维护证据,保留;不是最新 DLL 安装记录。
o2jam-behaviour-spec 更新中段补播及后台音量;不改 judgement_version 或规则。
o2jamo2-client-comparison 单包历史证据,保留;早期项目列已标为快照。
o2jamo2-local-play 本机原版环境指南,保留;不属于项目实现或完整原版验收。
original-client-feature-audit 修正 BAD 文本/贴图键与 KS 状态;F 系列暂缓项保留。
original-random-and-failure-analysis 指令及算法历史,保留;现行契约指向专项页。
preview-sample-restoration 更新验收状态,保留冷缓存成本和有界衔接限制。
product-layer-inventory 当前责任表,保留;资格/PP/标签及曲库职责区分正确。
rate-mod-audio-readiness 最新音频契约已同步本轮验收,保留。
realm-isolation 校正性能/历史安装范围,继续保留后端替换限制。
recent-changes-review 加历史状态说明,不删旧失败/暂缓证据。
refactor-review-2026-10-06 加本轮进度补充,保留原复现与候选方案;与路线图 R 编号区分。
refactor-roadmap 更新阶段状态和编号边界,不自动授权未选功能。
release-1.0.0-test2 冻结发布说明,增 master 差异提示;旧发布限制仍按该 DLL 有效。
remix-client-comparison 历史交叉证据,保留。
replay-sample-restoration 当前音频恢复与确认,保留;不混同判定历史优化。
replay-timing-boundary 修正实际重算机制,补音频历史边界与 R07。
ruleset-compatibility-design 现行协调与已选收尾,保留;未来未知补丁不是既有支持。
zero-life-and-failure-analysis 当前 EX 契约及原版历史,保留未单独反馈的完整验收范围。

后续维护方法

每次变更只更新负责该契约的文档,再更新索引/路线图状态;历史页只加“被哪次变更替代”的链接。 完成记录分别写实现、自动验证、客户端确认、版本范围,不能把其中一项代替其他项。 当前本报告含本次完成后的必要性复评;未来 R 问题进度回写其专项审查/契约,不在这里继续累积逐轮日志。

本轮文档验证

本地检查 40 份 Markdown:相对文件链接缺失为 0,Markdown 标题锚点未匹配为 0;git diff --check 通过。变更仅限 19 份既有 Markdown 和本报告,不修改生产、测试或构建配置。未重新构建/运行测试,现有代码验证引用其原始日期。

R12 本轮交付状态(2026-10-13)

当前构建验收已执行当前源码 1929 项过滤整合回归, 分别核对正式/基础桥包后安装验收 DLL;原生预览状态和两份已有 NoMS/MS 回放读取、 普通重启及八项数据摘要一致。BMS 自定义页面超出测试桥边界,用户手动返回后完成恢复。 实际游玩、听感和颜色过渡待用户确认;旧矩阵/性能/远程 CI 与 PCM 峰值范围保持独立。 本轮没有生产代码/依赖升级、库刷新清空、源故障注入、benchmark 或提交推送; 联网依赖清单已扩为两个包六条公告,具体原因和宿主兼容限制见专项页。

2026-10-14 的后续选曲/音频修复与源码收尾见维护收尾; 本节“没有生产改动/推送”仅描述最初 R12 交付,不能覆盖后续实际维护。