From 89a3852f7a6cb476188a423228ff91214bab0bb3 Mon Sep 17 00:00:00 2001 From: OpenAI Codex Date: Sun, 30 Aug 2026 10:14:45 +0800 Subject: [PATCH] docs: close 30-02 with accepted context risk --- ...ong与ContextRecreation最小技术验证报告_v5.md | 50 +++++++++++++++++++ ...g与ContextRecreation验证_Codex完成报告_v5.md | 41 +++++++++++++++ 粒子开发记录.md | 10 ++++ 3 files changed, 101 insertions(+) create mode 100644 docs/60_测试/30_02_GPU_PingPong与ContextRecreation最小技术验证报告_v5.md create mode 100644 docs/报告/30_02_GPU_PingPong与ContextRecreation验证_Codex完成报告_v5.md diff --git a/docs/60_测试/30_02_GPU_PingPong与ContextRecreation最小技术验证报告_v5.md b/docs/60_测试/30_02_GPU_PingPong与ContextRecreation最小技术验证报告_v5.md new file mode 100644 index 000000000..3c68d604b --- /dev/null +++ b/docs/60_测试/30_02_GPU_PingPong与ContextRecreation最小技术验证报告_v5.md @@ -0,0 +1,50 @@ +# 30-02 GPU Ping-Pong 与 Context Recreation 最小技术验证报告 v5 + +日期:2026-08-30 + +正式状态:`PASS(EGL Context Recreation:Accepted Risk / 未验证;用户明确决定不阻塞)` + +## 1. 正式关闭结论 + +30-02 已正式关闭,允许进入 30-03。 + +用户已完成并确认 Android OpenGL 实机验证结果:ACTIVE / STATIC 控制、State A/B 与 Trail A/B 的 GPU ping-pong 验证、STATIC 下普通 MapLibre redraw 的冻结行为、DISABLE / ENABLE,以及 rotation 后 validation control mode 的恢复均已达到本验证项目的要求。 + +其中,STATIC 手势问题曾被用户实机判定为 T3 FAIL;v3 的最小修复后,用户已确认 pan、zoom、bearing、pitch 仍可使地图正常 redraw,但不会推进 State A/B update、Trail A/B fade/marker update、slot swap 或 simulation frame/index。该修复结果是本结论的一部分,并非通过禁止地图 redraw 达成。 + +## 2. 已完成实机结果的证据边界 + +以下结论来自用户完成的 Android OpenGL 人工运行验收;Codex 没有在本轮重新编译、安装、运行 Android 或执行 ADB: + +- ACTIVE 状态下 validation GPU ping-pong 与 Trail composite 可运行; +- STATIC 静止和 STATIC 下 pan、zoom、bearing、pitch 的地图 redraw 不再推进 simulation; +- DISABLE / ENABLE 行为正常; +- Activity rotation 后 validation control mode 可恢复,未再把 STATIC 强制改为 ACTIVE; +- 30-01 已正式 PASS,30-02 所依赖的 Core RenderLayer 接入与同帧 Transform 路径保持有效。 + +本报告不伪造 logcat 原文、帧号、GPU 数值或未由用户提供的上下文重建次数。 + +## 3. EGL Context Recreation:Accepted Risk / 未验证 + +真实 EGL context loss / recreation 没有获得独立、可复现的 Android OpenGL 实机证据。因此: + +- 不将 EGL Context recreation 写成已实机 PASS; +- 保留它为 `Accepted Risk / 未验证项`; +- 风险内容是:实际 EGL context 被系统销毁并重建时,validation-only RenderTarget generation/discard、重建和后续 composite 的完整运行时路径尚未单独验证; +- 用户已明确决定该未验证项不再阻塞当前阶段推进。 + +这是用户接受的验证残余风险,不是对 GPU ping-pong、STATIC freeze 或 rotation control-mode 修复失败的判定。 + +## 4. 历史状态与代码范围 + +- v1 的 `BLOCKED` 保留:它记录的是当时 30-01 尚未正式 PASS 的前置门槛,不能删除或改写; +- v2 记录 State/Trail A/B 与 generation 验证准备; +- v3 记录 T3 FAIL、根因及 STATIC frozen-composite 最小修复; +- v4 记录 Android rotation control-mode 恢复定向修复; +- 本 v5 只回填已完成实机结果与用户的风险接受决定,不新增 GPU 架构、RenderTarget、shader、Mask、Vulkan、iOS 或正式粒子实现。 + +## 5. 后续门槛 + +30-02 的正式状态为 PASS,且 EGL Context recreation 未验证风险已经由用户接受,不阻塞后续工作。允许进入 30-03。 + +若未来需要发布级 context-loss 覆盖,应将真实 EGL context recreation 单独列为新的验证项;它不追溯改变本报告所记录的用户决定。 diff --git a/docs/报告/30_02_GPU_PingPong与ContextRecreation验证_Codex完成报告_v5.md b/docs/报告/30_02_GPU_PingPong与ContextRecreation验证_Codex完成报告_v5.md new file mode 100644 index 000000000..be09ad77b --- /dev/null +++ b/docs/报告/30_02_GPU_PingPong与ContextRecreation验证_Codex完成报告_v5.md @@ -0,0 +1,41 @@ +# 30-02 GPU Ping-Pong 与 Context Recreation 验证 Codex 完成报告 v5 + +日期:2026-08-30 + +执行结论:`PASS(EGL Context Recreation:Accepted Risk / 未验证;用户明确决定不阻塞)` + +## 1. 本次工作 + +本次只将用户已经完成的 Android OpenGL 实机结果回填为 30-02 的正式结论,并正式关闭 30-02。没有重新修改 30-02 代码,没有重新编译,没有运行 Gradle、Android、安装、ADB 或任何设备命令。 + +30-02 因此允许进入 30-03。 + +## 2. 已回填的实机结论 + +用户已确认 30-02 的已完成运行结果,包括 ACTIVE / STATIC、State/Trail GPU ping-pong、STATIC 手势下冻结 simulation、DISABLE / ENABLE,以及 rotation 后 validation control mode 恢复。此前 STATIC 拖动地图会推进 simulation 的 T3 FAIL 已由 v3 最小修复解决;地图仍正常 redraw,只 composite 当前冻结 Trail,不进行 State/Trail update、slot swap 或 frame progression。 + +这些是用户实际运行确认;Codex 的职责是如实记录结论和既有修改范围,不补造日志或数值。 + +## 3. Accepted Risk + +真实 EGL Context recreation 没有独立 Android OpenGL 实机证据,故它不是已验证 PASS 项。它被正式标记为 `Accepted Risk / 未验证项`。 + +用户已明确决定该风险不阻塞 30-02 关闭或 30-03 开始。该决定只接受此残余验证风险,不表示宣称 EGL context-loss 路径已经实机通过。 + +## 4. 历史与范围 + +- v1 `BLOCKED`、v2 验证准备、v3 STATIC freeze 修复和 v4 rotation 修复报告均保留原样; +- 本次新建 v5,不篡改历史状态; +- 没有新增或修改 Core、gfx、RenderLayer、shader、RenderTarget、Mask、Vulkan、iOS 或正式粒子实现; +- 未跟踪的用户任务指令书继续保留在工作区,未纳入本次提交。 + +## 5. Git 收尾 + +- 任务开始 HEAD:`fb78f82777a5b2e0393b064b249b100ba86e80fd`。 +- 文档实质提交、本报告元数据收尾提交、push 结果与最终远端 HEAD 将在完成提交和推送后如实补记于最终交付。 + +## 6. 最终状态 + +30-02 正式关闭:`PASS`。 + +唯一保留事项为 EGL Context Recreation 的 `Accepted Risk / 未验证`;用户决定不阻塞。因此允许进入 30-03。 diff --git a/粒子开发记录.md b/粒子开发记录.md index 9373063b7..57c9264e8 100644 --- a/粒子开发记录.md +++ b/粒子开发记录.md @@ -117,3 +117,13 @@ - R1 STATIC、R2 ACTIVE、R3 DISABLED rotation 与 R4 STATIC gesture 回归等待用户实机验证;30-02 保持 `WAITING_MANUAL_VALIDATION`,不允许进入 30-03。 - 技术报告:`docs/60_测试/30_02_GPU_PingPong与ContextRecreation最小技术验证报告_v4.md`。 - Codex 完成报告:`docs/报告/30_02_GPU_PingPong与ContextRecreation验证_Codex完成报告_v4.md`。 + +## 2026-08-30 — 30-02 正式关闭(EGL Context Recreation Accepted Risk) + +- 用户已完成并确认 30-02 的 Android OpenGL 实机结果;ACTIVE/STATIC、GPU ping-pong、STATIC 手势冻结、DISABLE/ENABLE 与 rotation control-mode 恢复纳入正式结论。 +- 30-02 正式状态为 `PASS`,并正式关闭;允许进入 30-03。 +- 真实 EGL Context recreation 没有独立实机验证证据,明确标记为 `Accepted Risk / 未验证项`;用户已明确决定该风险不阻塞后续阶段。 +- 未伪造 context-loss PASS,也未重写 v1 `BLOCKED`、v2、v3 或 v4 历史报告。 +- 本次只回填报告与开发记录;未修改代码,未重新编译,未运行 Gradle、Android 或 ADB。 +- 技术报告:`docs/60_测试/30_02_GPU_PingPong与ContextRecreation最小技术验证报告_v5.md`。 +- Codex 完成报告:`docs/报告/30_02_GPU_PingPong与ContextRecreation验证_Codex完成报告_v5.md`。