Files
MapLibreParticleLab/recoder_step.md
tei 30d0e6665e
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
docs(upgrade): record android 13.6.1 native OpenGL compile PASS
2026-10-09 10:31:21 +09:00

5.9 KiB
Raw Blame History

recoder_step.md — MapLibre 上游升级实施流水记录

中文追加式记录。每个已完成/阻塞阶段记录事实、commit、当前状态与下一步;不覆盖旧记录。仅适用于隔离升级分支,不代表正式版本发布。

2026-10-09 / STEP-104 / Gate 0

  • 用户确认目标:以官方新版 Native 为底座重放自研 Particle + RenderSegment,并建立可重复升级流程。
  • 执行模型:GPT-6.1 Sol / High(待实际会话核实);RDC 负责独立构建和验收。
  • 升级分支:upgrade/android-native-13.6.1-20261009,独立 Mac worktree。
  • 官方新基线:Android Native 13.6.1,commit c7506d6aff3800e946f89e1a51432fc22d1a6534。
  • 旧扩展来源:发布 .21 630ec657687bad4200c059bbccbb950d9c6f7ce9;审计文档闭环 b433775348373b10fba02dc0e1f728bacd72f9e7。
  • 当前状态:官方代码已检出,尚未移植自研修改,尚未编译,尚未发布。
  • 下一步:与旧扩展历史三方合并;逐项处理路径重命名、Renderer 接口及模块注册,不覆盖官方修复。

2026-10-09 / STEP-104 / 源码冲突处理批次 1

  • 实际执行模型与档位:gpt-6.1-sol / high,已核对本会话 turn_context,RDC 亦独立确认。
  • 基线:HEAD e4c7af7c401aebc0fdb9d85309ad781e328baff4;RDC 已启动 merge,MERGE_HEAD b433775348373b10fba02dc0e1f728bacd72f9e7,初始 76 个 index 未合并路径。
  • 完成:对三方内容做路径/namespace 归一后合并,保留官方新增内容与 .21 扩展;24 个 Field/Ingress 文件搬到 mln,删除旧 include/mbgl/shaders/shader_manifest.hpp,在官方新 manifest 注册两个扩展 shader。
  • 完成:Particle/WeatherColor override、普通/隐藏清理/粒子 Fast Path update 入口传入官方新增 PaintParameters;Retained key/revision viewport 使用同帧 renderableSize,不恢复已删除 backendSize。
  • 完成:官方 CustomMVTVector factory 与 RasterArray factory 并存;新 source 的 retained reuse 保守退回 live;官方 ErrorScope、symbol error 转发、commandBuffer 所有权及 .21 资源清理/observer teardown 均保留。
  • 当前问题:源码写入后的静态完整性仍在核查;index 76 路径尚待 RDC 审查并暂存,不能把文本清理声称为 Git merge 完成。全部 build/link/codegen/GTest/Jest/设备检查 NOT RUN。
  • 下一步:检查构建清单、shader 注册、JNI 和未迁移引用,再交付 RDC Native OpenGL 编译 Gate。
  • 关联 commit:沿用启动 checkpoint e4c7af7c40;本批次未 commit,按用户新指令由 RDC 分批审查、暂存与提交。

2026-10-09 / STEP-104 / Gate 1:真实三方合并 checkpoint

  • 执行器:GPT-6.1 Sol / High,实际会话 turn_context 已通过 RDC 核实;Codex 编辑源码,RDC 完成 Git index 与提交。
  • 官方第一父:e4c7af7c401aebc0fdb9d85309ad781e328baff4,其父为官方 Android Native c7506d6aff3800e946f89e1a51432fc22d1a6534。
  • 旧扩展第二父:b433775348373b10fba02dc0e1f728bacd72f9e7(Particle .21 + UPSTREAM-001 文档)。
  • RDC 实际运行 Git 三方合并,76 个未合并路径;Codex 处理新旧目录映射及 Renderer/Source/Shader/JNI 接口,RDC 验证工作树冲突标记 0、index 未合并条目 0。
  • 新合并提交:f8378fd7113c4d230500f0b82902d2356907f4a9,message merge(upgrade): port particle extensions onto official native 13.6.1 (unverified)。
  • 代码路径的 git diff --cached --check PASS;整个 merge 的 git diff --cached --check 不通过,但仅涉及 3 份来自 .21 的原样历史文档既有尾随空格,未改写历史文档。
  • 已完成:合并树可提交、官方修复与自研层/Source/Particle/RenderSegment 并存;尚未编译、链接、运行、Android GPU 验证及 iOS 验证。
  • 下一步:RDC 以官方 Android 新树独立配置/精确编译;若失败保留首个真实错误并按明确范围修正或停止。

2026-10-09 / STEP-104 / Gate 2:Android Native OpenGL 编译 PASS

  • 目标与范围:仅验证官方 Android Native 13.6.1 底座上的自研 Particle / WeatherColor / RenderSegment 合并代码可编译链接;架构和正式发布未变化。
  • 实际验证提交:a4b5f4eaa0eccb734e00d67adb5e750bba320404,其中合并源码提交 f8378fd7113c4d230500f0b82902d2356907f4a9;执行器 GPT-6.1 Sol / High,Native 构建由 RDC 独立执行。
  • Mac 构建命令(在 platform/android):JAVA_HOME=/usr/local/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home ANDROID_HOME=/Users/tei/Library/Android/sdk ANDROID_SDK_ROOT=/Users/tei/Library/Android/sdk ./gradlew --no-daemon --max-workers=3 --console=plain -Pmaplibre.abis=x86_64 :MapLibreAndroid:externalNativeBuildOpenglDebug(环境变量需导出供子进程使用)。
  • 前两次尝试失败在 CMake 配置:第一次缺少 cheap-ruler-cpp,第二次缺少 tile-spec 内部 earcut 与 supercluster/LICENSE,均是新 worktree 第三方依赖未初始化/未检出,并非已知自研源码编译错误。RDC 按 Git 固定 SHA 检出 31 个顶层 Native 依赖,修复内部依赖与残缺工作树;中途 GitHub DNS/HTTPS 不稳定,不得伪报成功。
  • 第三次编译:BUILD SUCCESSFUL in 22m 24s,Gradle 18 tasks(4 executed / 14 up-to-date);RDC 确认构建进程 exit code 0、Ninja 编译与最终链接完成。
  • 产物:platform/android/MapLibreAndroid/build/intermediates/cmake/openglDebug/obj/x86_64/libmaplibre.so,ELF 64-bit x86-64 动态库,包含 debug_info,大小 377246848 bytes,SHA-256 ff5a5eb45f84ff633a87fe385fb04ee39ba63ed3bc486003408e02cea78c8907。
  • Gate 结论:Android x86_64 / OpenGL Native compile+link PASS。这不是 APK 实机验证,不是全 ABI、Vulkan/iOS/RN 11.5.0/发布 PASS;其他 ABI 和运行态 Gate 暂未执行。
  • 下一步建议:保留此为可复验的 Native 编译检查点;下阶段批量执行 Android 多 ABI 编译与 Test Host GPU 场景(Field/QBIN、Pan/Zoom/Rotate、RenderSegment、Style lifecycle),确认后再推进 RN 11.5.0。