2.3 KiB
2.3 KiB
STEP-071 — MapLibreParticleLab V3-07 Linux 综合冻结
状态:CLOSED / PASS(Linux)
日期:2026-09-11
基线:fcc533dc9518395d0c25794131f53f0fae20d51c
目标
在进入 V3-08 Android 统一验收前,对 V3-02~V3-06 的 canonical field、Host ingress、Timeline、RasterParticle 与 RN 公共桥接做一次 Linux 综合冻结。
冻结链结果
- canonical fixture validator:PASS。
packages/maplibre-particle-rnTypeScript:PASS。- RN Test Host
npm run typecheck:PASS。 - RN TurboModule codegen:PASS。
mbgl-test/mbgl-test-runnerLinux OpenGL target:PASS / up-to-date。- V3 综合过滤测试:21/21 PASS。
git diff --check:PASS。- Android Gradle/AAR/APK/ADB/Jest:本 Step 不运行。
综合测试覆盖
过滤范围:Source.ParticleField*、Source.HostField*、Source.RasterArrayTimeline*、Source.RasterArraySharesCanonicalSnapshotsWithWeatherColorLayer、Layer.RasterParticle*。
最终 18 个 Source + 3 个 Layer,共 21 项全部 PASS。
冻结中发现并修正的测试问题
HostFieldSubmissionRejectsInvalidWithoutChangingLastValidField旧测试用同一uniform-eastpayload 构造 T0/T1,正确 Runtime 会先返回 Duplicate。测试改为 east→north 两份兼容但不同内容。RasterArrayTimelineCandidatesReachReadyThroughFieldAdapter使用的 east/north/vortex 旧 fixture 均为timeIndex=0;当前 Adapter 保留validTime=timeIndex+1,导致 Timeline 正确 fail-closed。测试仅在局部 metadata 副本中改为 0/1/2,未修改共享 fixture。- 两处均为 test fixture 陈旧,不修改 Runtime、Duplicate 判定顺序、Timeline fail-closed 或生产 API。
对应 Codex 任务:
docs/40_任务/STEP-071A_V3-07_Linux综合冻结_测试Fixture修正_Codex任务_v1.mddocs/40_任务/STEP-071A_V3-07_Linux综合冻结_测试Fixture修正_Codex任务_v2.md
边界
- 未修改
src/、include/、shader、JNI、Android、RN runtime、WeatherV2 或 NavSea。 - 已知既有
Layer.WeatherColorUsesIndependentFixedOpacity断言债不属于本 Step,不修、不作为 V3-07 gate。 - STEP-062 用户 dirty 与历史 untracked/build/cache/tgz 均保持隔离。
- 下一步:V3-08,一次 Android 编译/安装/实体机综合验收。