docs: record STEP-097 partial A1 handoff
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
@@ -10,9 +10,9 @@
|
||||
|
||||
| # / 原编号 | 当前源码定位与最短触发 | 反例/安全约束 | 拟修文件与回归入口 | 状态 / commit / 平台待测 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| 01 N01/B01 | `paint_parameters.cpp:185` tile 集合相同跨 R-R target 复用 CPU mask | 同一未清 stencil target 可复用 | PaintParameters、Renderer、RenderTarget 已在新目标重置;同 tiles R-R/R-C-R 像素入口尚缺 | WAITING_RDC_BUILD_AND_RUNTIME / A1 部分提交 / GL、Metal |
|
||||
| 02 N02/B02 | `mtl/render_pass.cpp:21` 仅 color clear;`offscreen_texture.cpp:67` 附件创建 | 无 depth/stencil 的 target 不可盲设附件 | Metal descriptor/combined 附件已修改;专用附件故障测试源码尚缺 | WAITING_RDC_BUILD_AND_RUNTIME / A1 部分提交 / Metal |
|
||||
| 03 N03/B12 | `render_orchestrator.hpp:156` catch;`renderer_impl.cpp:824` 仍 mark success | 失败后 full fallback、下帧重试 | visitor 错误标志与 fallback 已接入;异常注入测试源码尚缺 | WAITING_RDC_BUILD_AND_RUNTIME / A1 部分提交 / GL、Metal |
|
||||
| 01 N01/B01 | `paint_parameters.cpp:185` tile 集合相同跨 R-R target 复用 CPU mask | 同一未清 stencil target 可复用 | PaintParameters、Renderer、RenderTarget 已在新目标重置;同 tiles R-R/R-C-R 像素入口尚缺 | WAITING_RDC_BUILD_AND_RUNTIME / `e67e4961b` / GL、Metal |
|
||||
| 02 N02/B02 | `mtl/render_pass.cpp:21` 仅 color clear;`offscreen_texture.cpp:67` 附件创建 | 无 depth/stencil 的 target 不可盲设附件 | Metal descriptor/combined 附件已修改;专用附件故障测试源码尚缺 | WAITING_RDC_BUILD_AND_RUNTIME / `e67e4961b` / Metal |
|
||||
| 03 N03/B12 | `render_orchestrator.hpp:156` catch;`renderer_impl.cpp:824` 仍 mark success | 失败后 full fallback、下帧重试 | visitor 错误标志与 fallback 已接入;异常注入测试源码尚缺 | WAITING_RDC_BUILD_AND_RUNTIME / `e67e4961b` / GL、Metal |
|
||||
| 04 N04/B06 | encoded playback clock 的生产调用方待核 | 显式 setTime 不双 tick | source/clock;PLAY/PAUSE/rate | WAITING_RDC_BUILD_AND_RUNTIME / 待提交 / Core、双平台 |
|
||||
| 05 B13 | Particle GPU endpoint 更新门槛仅局部身份 | mix-only 不上传;跨窗只新端上传 | Particle field/renderer;仅 V/validity 变动 | WAITING_RDC_BUILD_AND_RUNTIME / 待提交 / GL、Metal |
|
||||
| 06 B07 | 8-bit 中心量化不能精确表示零 | 不改公共 QBIN encoding | Particle texture/shader;零/微速/NaN | DEFERRED_DESIGN / 无 / GL、Metal |
|
||||
@@ -28,7 +28,7 @@
|
||||
| 16 F07/C05 | `render_orchestrator.hpp:156` 每段前缀 distance | 全局 ordinal 与 Z 顺序不变 | orchestrator;重排/正反遍历 | WAITING_RDC_BUILD_AND_RUNTIME / 待提交 / Core |
|
||||
| 17 C06/B05/B10 | 相同时间/mix-only 物化全网格 | owner-thread 世代发布 | runtime/source;重复时间/边界 | WAITING_RDC_BUILD_AND_RUNTIME / 待提交 / Core、桥接 |
|
||||
| 18 C07 | drawable/tweaker tick 重建、端点复制 | 不保留 stale GPU 引用 | Particle renderer;tick/resize | DEFERRED_DESIGN / 无 / GL、Metal |
|
||||
| 19 F09/O01 | `runtime_state.hpp:230` 新 topology;旧 cache 析构按 index 计数 | 总量与当前 topology 分离 | runtime/cache 按 revision 过滤;新增 `OldCacheReleaseCannotChargeReplacementAtSameIndex` GTest | CODE_IMPLEMENTED_STATIC_CHECKED / A1 部分提交 / Core 测试 NOT RUN |
|
||||
| 19 F09/O01 | `runtime_state.hpp:230` 新 topology;旧 cache 析构按 index 计数 | 总量与当前 topology 分离 | runtime/cache 按 revision 过滤;新增 `OldCacheReleaseCannotChargeReplacementAtSameIndex` GTest | CODE_IMPLEMENTED_STATIC_CHECKED / `e67e4961b` / Core 测试 NOT RUN |
|
||||
| 20 F05/E01 | Host package `.10`、Native plugin `.13` | 精确同版,勿动发布产物 | Host package/lock;默认 install/typecheck | WAITING_RDC_BUILD_AND_RUNTIME / 待提交 / RN、Android |
|
||||
| 21 F06 | `renderer_impl.cpp` multi-C 走 full CPU | 保留安全 fallback | 后续 A/B 设计 | DEFERRED_DESIGN / 无 / GL、Metal |
|
||||
| 22 F08 | source/tile 等全局失效 | 无依赖图前不缩窄 | 后续依赖设计 | DEFERRED_DESIGN / 无 / Core |
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
| 检查点 | 状态 | 实际事实、阻塞和下一步 |
|
||||
| --- | --- | --- |
|
||||
| 阶段 0 基线与反证 | 完成(静态) | 读取三轮审查、STEP-094~096 交付及 C-001/RFC-001 本地副本。当前 HEAD 比任务书基线只新增任务文档;远端 particle/main 经 `git ls-remote` 核对一致。建立 24 项矩阵。Integration 远端同步状态待 RDC 复核。 |
|
||||
| A1 Renderer 正确性 | 阻塞 | 01/02/03/19 定点源码路径成立;代码改动落盘,19 有 GTest。01/02/03 缺少任务要求的专用可执行像素/附件/故障注入测试入口;且未进行 GL/Metal 编译。故 A1 不判完成,严格停止于此,不进入 A2。 |
|
||||
| A1 Renderer 正确性 | 阻塞 | `e67e4961b` 记录 01/02/03/19 的部分代码;19 有 GTest。01/02/03 缺少任务要求的专用可执行像素/附件/故障注入测试入口;且未进行 GL/Metal 编译。故 A1 不判完成,严格停止于此,不进入 A2。 |
|
||||
| A2 Field/粒子正确性 | 计划 | 尚未开始。 |
|
||||
| B 输入/生命周期 | 计划 | 尚未开始。 |
|
||||
| C 安全性能 | 计划 | 尚未开始;必须先完成 A1 正确性。 |
|
||||
| D 交付 | 计划 | 集中验证与报告待写。所有构建、测试、运行、发布均 NOT RUN。 |
|
||||
| D 交付 | 部分完成 | 已写 24 项矩阵、集中验证清单、Step、本轮完成报告和开发记录。所有构建、测试、运行、发布均 NOT RUN;后续 RDC 独立审查。 |
|
||||
|
||||
允许范围与禁止范围按任务书。未完成项目不勾选。RDC 后续执行构建及运行;本轮不运行构建或 Jest。
|
||||
|
||||
51
docs/报告/STEP-097_V13三轮审查问题合并修复_Codex完成报告_v1.md
Normal file
51
docs/报告/STEP-097_V13三轮审查问题合并修复_Codex完成报告_v1.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# STEP-097 V13 三轮审查问题合并修复 — Codex 完成报告 v1
|
||||
|
||||
## 1. 执行结论
|
||||
|
||||
**PARTIAL,停在 A1。** 阶段 0 已静态复核并建 24 项矩阵;A1 的 01/02/03/19 已做部分源码修改。01/02/03 缺少任务要求的专用可执行像素、Metal 附件及异常注入测试入口,不能标 `CODE_IMPLEMENTED_STATIC_CHECKED`。19 有 GTest 源码且静态核对完成,测试 **NOT RUN**。按照任务书“前一阶段没有明确代码完成和静态检查结果,不推进下一阶段”,A2/B/C 未开始。此次提交不是 V13 运行态验收,也不是软件发布。
|
||||
|
||||
## 2. Git、机器与版本基线
|
||||
|
||||
- 机器:`Mac-mini-tei.lan`;目录:`/Users/tei/dev/MapLibreParticleLab`;分支:`particle/main`。
|
||||
- 起始 HEAD 与远端查询值:`720d309364628f85049cf9969d71c71e8dfacce9`;起始工作树 clean,子模块未见偏离。
|
||||
- A1 部分代码检查点:`e67e4961b5b1a1ff8fa7c1e3263799d63f89cadc`。本报告成稿时的代码 HEAD 为该提交;本报告及最终文档另作 scoped 交付提交,最终 HEAD 以交付后的 Git 记录为准。
|
||||
- `.13` tag 解引用:`ee0b89e711bf01335b3aa71d36def785cd97fec3`;manifest 记录 RN/Android `13.4.1-particle.13`、iOS `6.28.0-particle.13`。没有更改 tag、manifest 或已发布产物。
|
||||
- Integration 本地只读 HEAD `39ad8415fbdb76c1822460bb09f3a3f35fe141e0`,C-001/RFC-001 为既有合同;没有由 RDC 独立确认其远端同步。
|
||||
|
||||
## 3. 实际修改与新增文件
|
||||
|
||||
| 范围 | 文件与内容 |
|
||||
| --- | --- |
|
||||
| A1 代码 | `src/mbgl/renderer/paint_parameters.{hpp,cpp}`、`render_target.cpp`、`renderer_impl.cpp`、`render_orchestrator.hpp`、`retained_underlay_cache.{hpp,cpp}`、`retained_underlay_runtime_state.hpp`;`src/mbgl/mtl/offscreen_texture.cpp`、`render_pass.cpp`。 |
|
||||
| A1 测试源码 | `test/renderer/retained_underlay_cache.test.cpp` 增加旧 topology release 不计入新同 index 的 GTest。 |
|
||||
| 新增文档 | `docs/30_设计/STEP-097_V13三轮问题去重与修复矩阵_v1.md`、`docs/50_Step记录/STEP-097_V13三轮审查问题合并修复_v1.md`、`docs/60_测试/STEP-097_V13修复后集中验证清单_v1.md`、本报告。 |
|
||||
| 仅追加 | 根目录 `粒子开发记录.md`。 |
|
||||
|
||||
没有修改 Integration、NavSea、项目总则、旧调查、release manifest、公开 Field/QBIN 协议或已发布坐标。
|
||||
|
||||
## 4. 各问题状态
|
||||
|
||||
具体旧编号、源码定位、反例、测试入口和平台待测项见[24 项矩阵](../30_设计/STEP-097_V13三轮问题去重与修复矩阵_v1.md)。编号 01/02/03:源码已局部修改,仍为 `WAITING_RDC_BUILD_AND_RUNTIME`,且专用测试源码缺口阻止 A1 完成。19:`CODE_IMPLEMENTED_STATIC_CHECKED`,GTest **NOT RUN**。04/05/07/08/09/10/11/13/16/17/20:`WAITING_RDC_BUILD_AND_RUNTIME` 在矩阵中表示待实施,不表示已有代码。06/12/14/15/18/21/22/23/24:`DEFERRED_DESIGN`;其中 23/24 是 Integration 协调项。无项目被判产品级 PASS,无项因三轮重复编号被删除。
|
||||
|
||||
## 5. 已实施事实、差异与停止原因
|
||||
|
||||
1. 01:新 render target 绑定后重置 `nextStencilID` 与 tile clipping map;同一 target 内未清 stencil 时仍可复用。接入 retained、普通 offscreen 与主目标三处目标切换。
|
||||
2. 02:Metal 离屏 `isRenderable()` 检查 color/depth/stencil,simulator/x86 combined depth-stencil 同时绑定两个附件;RenderPass 转换 color/depth/stencil clear/load/store,创建失败显式抛出供 retained fallback。实际 Metal validation **NOT RUN**。
|
||||
3. 03:范围 visitor 可回报绘制异常;retained build 收到错误后标失败并转 full fallback,不发布成功缓存。真实 layer 故障注入 **NOT RUN**。
|
||||
4. 19:旧 cache 的 release 仅在同 topology revision 更新当前 segment 计数,aggregate release 仍记录。新增同 index 换边界的定向 GTest 源码。
|
||||
|
||||
与任务书差异:未完成 A1 关键测试入口,故没有进入 A2/B/C,未形成各阶段成功提交。停止依据是任务书第 2、4、7 节的不可跨越检查点,而非将未运行的构建当作失败。当前代码检查点仍需 RDC 独立审查,特别核对 Metal API/资源所有权和异常后的 GL/Metal fallback。
|
||||
|
||||
## 6. 静态检查、构建与测试记录
|
||||
|
||||
- 已执行:`git diff --check` 与 `git diff --cached --check`,均无输出、exit 0;`rg -n '[[:blank:]]+$'` 核对新文档,无匹配;`rg` 核对 `beginRenderTarget` 三处调用和 `recordSegmentResourceRelease` 的新签名及测试调用。已只读核对 metal-cpp 的 `StoreActionStore`、`setClearStencil` 声明。
|
||||
- CMake/Ninja/Xcode/Gradle、codegen、链接、APK/AAR/XCFramework、npm install/typecheck、GTest、Jest、GPU capture、设备与 NavSea:**NOT RUN**。未有本轮 build log、测试数、耗时或性能数。
|
||||
- 生成产物:无。大小/SHA-256/Renderer/Build Type/ABI:不适用。软件发布:**NOT RUN**。
|
||||
- 后续精确命令、fixtures 缺口、预期与责任见[集中验证清单](../60_测试/STEP-097_V13修复后集中验证清单_v1.md)。
|
||||
|
||||
## 7. 已知问题、未完成事项与下一步
|
||||
|
||||
- 先为 01 增加同 vector source/same tiles 的 R-R/R-C-R/C-R-R 可执行像素 fixture;为 02 增加 Metal descriptor/combined attachment 与失败注入入口;为 03 增加 layer render 异常注入及下一帧恢复入口。之后静态审查 A1,再由 RDC 在授权下集中编译和运行。
|
||||
- A2 的 PLAY/endpoint/零量化/Mercator,B 的 JSON/坏帧/Android listener/Host 版本,C 的 diagnostics/ordinal/物化/资源优化均未实施。不得将本报告用于关闭这些问题。
|
||||
- Integration C-001/RFC-001 未更新;23 的 Compatibility/Status 及 24 的共享地理 Ocean Mask 需粒子负责人协调。此次未触发需要改变公共合同的实现,因此没有伪造“公共接口阻塞报告”或声称决定已被接受。
|
||||
- 建议继续 STEP-097 A1 的测试入口与独立审查,在完成当前检查点后再按原任务书进入 A2;不自行创建下一 Step。
|
||||
@@ -942,3 +942,9 @@ Android V3-08 单次综合验收已完成并关闭。Native `13.4.1-particle.2`
|
||||
- `docs/报告/STEP-096_V13隔离盲审_Codex完成报告_v1.md`:`b0ff277c71db36c273579446aa974aebd4beb7635770810b1fe62d98b979ef9f`(55行)。
|
||||
- 三份原稿字节等同复制至正式仓库;未修改生产源码、shader、测试、构建、manifest或依赖;本轮 Native/GL/Metal、Android/iOS实机及性能测试均 NOT RUN,产品运行态未验收。
|
||||
- 当前轮次仅交付盲审与证据冻结;后续比较、修复和运行验证应另行授权。
|
||||
|
||||
### 2026-09-25 STEP-097 V13 三轮问题合并修复(A1 部分检查点)
|
||||
|
||||
- Mac `particle/main` 从 `720d309` 开始;阶段 0 只读复核三轮审查、`.13` manifest/tag 与本地 Integration C-001/RFC-001,形成全部 24 项去重矩阵。Integration 远端同步仍待 RDC 独立确认。
|
||||
- A1 部分代码提交 `e67e4961b`:新目标重置 stencil CPU 映射,Metal depth/stencil clear 与 combined 附件绑定,retained 绘制异常后禁止缓存成功并 full fallback,旧 cache release 不记入新 topology;新增计数归属 GTest 源码。
|
||||
- 01/02/03 的专用像素、附件和异常注入测试入口尚缺,A1 未按任务书完成;停止于 A1,不进入 A2/B/C。`git diff --check` 等静态核对无错误;所有构建、测试(含 Jest)、安装、GPU 运行、性能与发布均 **NOT RUN**。后续由 RDC 独立审查并补齐验证入口及集中运行。
|
||||
|
||||
Reference in New Issue
Block a user