Files
MapLibreParticleLab/docs/报告/STEP-070_MapLibreParticleLab_V3-06_四类场Fixture与RN通用回归_Codex完成报告_v1.md
OpenAI Codex fcc533dc95
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
fix: finalize STEP-070 fixture validation
2026-09-11 11:22:44 +08:00

2.0 KiB
Raw Blame History

STEP-070 MapLibreParticleLab V3-06 四类场 Fixture 与 RN 通用回归 Codex 完成报告

结论:IMPLEMENTED / WAITING_ANDROID_VALIDATION。

Wind、Wave、Tide/Current 已形成真实本地离线 canonical fixture。Wind 从既有 v1 field 转换时,shared validity 现在严格要求 U/V 都 finite 且都不等于 -9999。Wave 直接读取 WeatherV2 2026090912 run 的正式 waves_particles.bin 与 sidecar:height 进入 scalar,规范化后的 unit_to_u/v 进入 DIRECTION vector,period 被明确排除。Tide 从 CMEMS 2026090900 run 的正式 current_vectors.bin 读取 U/V 形成 VELOCITY vector。每帧摘要记录源 BIN 与 sidecar SHA-256、target_time、bounds、grid、projection 与 provenance。

Rain 仍是明确的 rain-decoder-fixture:本任务未实现 PMTiles reader,其数值不是真实场值。所有 fallback/synthetic generation 均为小且严格递增的 1/2,不再使用 epoch 毫秒。

RN Test Host 的 Wave/Tide 已改用新 real 目录;所有提交继续只使用 @navsea/maplibre-particle-rn 的 FieldRuntime 公共 API 和本地 file URI。fixture validator、package TypeScript、Host typecheck、TurboModule schema 与 /tmp/step070-ccache 下的 source.test.cpp.o 精确重编译均 PASS。随后恢复 Linux OpenGL 完整依赖闭包构建,459/459 完成并成功链接 mbgl-test-runner;Source.ParticleFieldV3* 过滤测试 6/6 PASS,整条验证链退出码 0,git diff --check PASS。

未运行 Android Gradle/AAR/APK/ADB/Jest,故没有 Android PASS 声明。implementation commit 为 8588e6fcb4f3f5d874159c2e42619c5227cb7921(feat: add V3 field fixtures and RN regression host),已成功 push 到 origin/particle/main。最终 handoff 只提交 STEP-070 的 Metro .u8 asset 配置与验收文档,不纳入 STEP-062 两份用户 dirty 文档或历史 untracked/build/cache/tgz。未修改 WeatherV2、NavSea 或 Core Runtime 算法;Rain 真实 reader 与 Android/设备验收仍是后续工作,Linux 完整重链/过滤测试已经完成。