From a0cc418e0534fba72cb9226d638efbd3e0e42fbc Mon Sep 17 00:00:00 2001 From: GeWuYou <95328647+GeWuYou@users.noreply.github.com> Date: Mon, 20 Apr 2026 12:46:08 +0800 Subject: [PATCH] =?UTF-8?q?docs(ai-plan):=20=E4=BF=AE=E6=AD=A3=20PR=20?= =?UTF-8?q?=E8=AF=84=E5=AE=A1=E5=90=8E=E7=9A=84=E6=81=A2=E5=A4=8D=E6=96=87?= =?UTF-8?q?=E6=A1=A3=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 更新 tracking 文档中的 PR #260 review follow-up 状态描述 - 修复 trace 文档重复的三级标题,避免 Markdown 锚点冲突 --- .../todos/data-repository-persistence-tracking.md | 4 ++-- .../traces/data-repository-persistence-trace.md | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/ai-plan/public/data-repository-persistence/todos/data-repository-persistence-tracking.md b/ai-plan/public/data-repository-persistence/todos/data-repository-persistence-tracking.md index ad7c246e..84858d2c 100644 --- a/ai-plan/public/data-repository-persistence/todos/data-repository-persistence-tracking.md +++ b/ai-plan/public/data-repository-persistence/todos/data-repository-persistence-tracking.md @@ -33,8 +33,8 @@ - `GFramework.Game.Internal.VersionedMigrationRunner` 已统一前向迁移注册校验、缺链失败、声明版本一致性与非递增防护 - `SettingsModel` 现在以当前内存设置实例的 `Version` 作为目标运行时版本;若迁移失败则保留当前实例并记录错误日志 - `SaveRepository` 继续在 `LoadAsync(slot)` 期间迁移并回写,但其核心链式校验已与设置迁移共用同一实现 -- PR #260 最新 review 仍要求补齐 `VersionedMigrationRunner` / `SettingsModel` 的 XML 异常契约,并确保 - `SaveRepository` 单次加载不会在并发注册期间读取到变化中的迁移链 +- PR #260 review follow-up 已完成:`VersionedMigrationRunner` / `SettingsModel` 的 XML 异常契约已补齐, + `SaveRepository` 单次加载已切换为迁移表快照,避免并发注册期间读取变化中的迁移链 - `docs/zh-CN/game/index.md` 当前仍承担最低接入示例,因此其中的 `JsonSerializer` 配置必须避免鼓励对 用户可篡改存档启用不受限的多态反序列化 diff --git a/ai-plan/public/data-repository-persistence/traces/data-repository-persistence-trace.md b/ai-plan/public/data-repository-persistence/traces/data-repository-persistence-trace.md index c595bf42..bb2dec07 100644 --- a/ai-plan/public/data-repository-persistence/traces/data-repository-persistence-trace.md +++ b/ai-plan/public/data-repository-persistence/traces/data-repository-persistence-trace.md @@ -24,7 +24,7 @@ - 历史 trace 归档: - `ai-plan/public/data-repository-persistence/archive/traces/data-repository-persistence-history-pre-rp001.md` -### 下一步 +### 下一步:JsonSerializer 配置契约补充 1. 后续继续该主题时,只从 `ai-plan/public/data-repository-persistence/` 进入,不再恢复 `local-plan/` 2. 若 active 入口再次积累多轮已完成且已验证阶段,继续按同一模式迁入该主题自己的 `archive/` @@ -40,7 +40,7 @@ - 在定向单测中固定“序列化器暴露活动配置实例”的当前契约 - 在 `docs/zh-CN/game/serialization.md`、`docs/zh-CN/game/index.md` 与 `GFramework.Game/README.md` 中同步修正接入建议 -### 下一步 +### 下一步:JsonSerializer 配置契约补充 1. `dotnet test GFramework.Game.Tests/GFramework.Game.Tests.csproj -c Release --filter "FullyQualifiedName~JsonSerializerTests"` 已通过(9/9) 2. 验证过程中出现的 analyzer warning 为仓库既有 warning,未在本轮扩大 @@ -66,12 +66,12 @@ - `SettingsModelTests`:重复注册拒绝、不完整链路保持当前实例、缓存失效场景 - `PersistenceTests`:迁移结果版本与声明版本不一致时显式失败 -### 验证 +### 验证:迁移执行器统一收敛 1. `dotnet test GFramework.Game.Tests/GFramework.Game.Tests.csproj -c Release --filter "FullyQualifiedName~SettingsModelTests|FullyQualifiedName~PersistenceTests"` 已通过(20/20) 2. 过程中出现的 analyzer warning 来自仓库既有项,未在本轮扩大 -### 下一步 +### 下一步:迁移执行器统一收敛 1. 进入 codec / persistence pipeline 边界评估 2. 重点查看压缩、加密、元数据、备份是否仍然跨越 `Serializer` / `Storage` / `Repository` 多层分散 @@ -98,12 +98,12 @@ - `PersistenceTests` 已新增“迁移失败不污染持久化数据”断言,以及并发注册下固定迁移快照的回归测试 - `docs/zh-CN/game/index.md` 的 `JsonSerializer` 接入示例已改为 `TypeNameHandling.None`,并补充白名单 binder 说明 -### 验证 +### 验证:PR #260 review follow-up 1. `dotnet test GFramework.Game.Tests/GFramework.Game.Tests.csproj -c Release --filter "FullyQualifiedName~SettingsModelTests|FullyQualifiedName~PersistenceTests" -m:1 -nodeReuse:false` 已通过(21/21) 2. 本次验证未再出现本轮新增的 XML doc warning;输出中的 analyzer warning 仍为仓库既有项 -### 下一步 +### 下一步:PR #260 review follow-up 1. 回到 codec / persistence pipeline 边界评估 2. 继续判断压缩、加密、元数据与备份策略是否需要新的 dedicated pipeline abstraction