Files
MapLibreParticleLab/docs/60_测试/STEP-116_FZG1_原PBF实机验收结果_20261011.md
tei 43e5f5b915
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
docs: record STEP-116 Android PBF Fast Path device result
2026-10-11 12:19:33 +09:00

5.2 KiB
Raw Blame History

STEP-116 原 STEP-113 PBF 专用 APP 实机测试报告

日期:2026-10-11 JST;结论:PARTIAL。空 Annotation / C 段结构修复确实有效;原 STATIC_RC 进入 Fast Path 的目标未达成(FAIL)。

1. 用户授权与源码/设备闭环

用户明确授权本次由 RDC 执行标准 Android APK 编译、安装和专用 APP 测试。环境:Mac.lan,仓库 /Users/tei/dev/MapLibreParticleLab,Particle源码commit c48a72a9d492ea0d05e4d58464f9643453158d50;Integration main 80667d6c343411d03a760425438e3d292f452118。Git tracked clean;两个STEP110/111用户文件仍未跟踪且不改动。Android Test App版本字符串13.6.1-particle.23,本轮真实二进制以commit和SHA而不是版本名辨识。

RDC执行标准 tools/particle_android_validation/build_validation_apk.sh,进程退出0,Gradle与APK pipeline回报BUILD SUCCESS,构建Native OpenGL/x86_64、Kotlin、ZIP/strip/体积检查通过。Java17;APK文件66,603,829字节,libmaplibre.so未压缩40,035,512字节。APK SHA-256:

a8b7f4e0f8e026bde8835e18a04876062be84cce3a3749a511cb08605d9f8a35

设备FZG1-2,ADB serial 192.168.200.139:5555。实际adb install -r返回Performing Streamed Install / Success,没有卸载应用或清空数据;pm path得到新安装base.apk,设备sha256sum与上述新APK完全一致。STEP115 Python工具的preflight-only返回PREFLIGHT_PASS,确认当前源HEAD、build-info、APK、设备ABI和安装包SHA完全匹配。build-info中的git_dirty=true来自构建前保护的两份未跟踪任务书,不是tracked源码变更。

2. STEP-113原STATIC_RC的90秒结果

RDC实际启动原 STEP-113 正式PBF STATIC_RC(非STEP114简化FAST_SMOKE),进程PID19771,同sceneGeneration=2/lifecycle=1,观察90.008秒。两份完整运行摘要一致且单调:

  • STATUS=NO_FAST_OBSERVED,工具exit=2(真实Fast目标未达成)
  • FastDelta=0,FullDelta=920
  • sceneReady=true,planValid=true,baseLayersPreserved=true
  • 原正式PBF基础63层定义/顺序保留;正式Style fingerprint e0f9c2d1df38ae5d5953b561c52efe2f8590336de80b988e1d2935580d30b996
  • Native实际层数65,R[0,63)、C[63,65);C只包含rn-weather-color和rn-weather-particles
  • emptyBuiltinAnnotationLayerRemoved=true、annotationInstancesAtRemoval=0、annotationSourcePreserved=true;原内建Annotation Source仍在Native列表并Loaded
  • 实际Native Sources为mapple:raster、navsea_delivery:vector、org.maplibre.annotations:annotations、rn-weather-fields:raster-array;tide Source确实缺失
  • R Cache Build=0、Reuse=0;lastFallbackReason=missing-source、missingSourceIds包含tide;placementCapable=true、placementGatePassed=false

RDC经设备菜单STEP093→STEP113→EXPORT LAST SNAPSHOT,回读真实Native完整JSON,大小274,693字节,SHA-256:

cd491d2acca97119f1d4f2d6f77eb7b229c17b90d4be1181a59202308429b219

完整120帧窗口验证:120帧、24项Gate、每帧knownMask=0xffffff、120/120 decisionConsistent=true、decisionMismatch=0;完成帧为119 Full、0 Fast;另1帧pending。

Gate 最近120帧失败数
#3 cache-invalid 120
#4 revision-mismatch 120
#12 static-unstable 105
#13 placement-or-fade 105
#22 unsupported-continuous-layer 0
#23 unsupported-scene 120

其他Gate当前窗口失败数为0。#22生命周期初期累计6次,不能称启动全程均无失败。#23仍因R不满足整体准入而持续失败。diagnostic decisionMismatch=0仅说明当前决策与trace一致,不代表Fast有效。

3. 与旧STEP-113相对照及有效性判断

原STEP-113旧APK的STATIC_RC Native层数66,多出内建org.maplibre.annotations.points Symbol落在C中,Gate #22/#23曾每帧失败,R Build=0、Fast=0。旧场景累计Full875,和新测试FullDelta920不是相同窗口/时长,不可据此计算帧率或性能提升。

新APK实际65层、C仅两张天气层,最近120帧#22为零,证实STEP116针对空Annotation/C准入的局部修复有效。然而真实R中缺tide、Placement/Fade条件未稳定、R Build/Reuse仍为0,#3/#4/#12/#13/#23持续失败;Fast仍为0,没有任何性能收益证据。没有改动或删除原63层,不以STEP114烟测替代。

4. 保存的证据和未覆盖的边界

本机Git忽略路径:artifacts/maplibre-particle/android-validation/step113-retest-20261011_121308/static_rc/,包括result.json、launch.txt、logcat.txt、native-full.json、screen.png、ui.xml。本轮截图仅存档,尚未人工验收像素/航标显示;没有执行五场景全部回归、Annotation真实增删、缺源恢复、Camera/Tile/Image负例、iOS或Native GTest(Mac先前CMake缺libuv)。本轮当前正式PBF用户目标已获得明确失败结论,不得标CLOSED/PASS。

后续必须由Particle Shared Core跨平台负责人确定R缺源零像素证明、Source同名重建的Full失效保证及Symbol Placement已提交GPU结果证书;不得伪造tide、删正式图层、禁用安全Gate或声称已有Fast性能改善。

注意:若本结果文档随后产生新的纯文档Git commit,APK仍绑定上述c48a72a9源码。后续使用STEP115严格HEAD预检时,不能拿新文档HEAD冒充该APK源码,也不得为修改审计证据而重新标记APK编译来源。未执行GSRL正式发行、Source Lock或Tag。