Files
MapLibreParticleLab/docs/报告/STEP-060B_GateC封存环境与CustomAAR接入修正_Codex完成报告_v1.md
OpenAI Codex 2d9f18b6cb
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
docs: finalize STEP-060B report metadata
2026-09-07 19:32:30 +08:00

3.7 KiB
Raw Blame History

STEP-060B Gate C 封存环境与 Custom AAR 接入修正 — Codex 完成报告

状态:IMPLEMENTED / WAITING_USER_GATEC_AAR_BUILD_AND_ANDROID_VALIDATION

实际完成

  1. 以 粒子开发记录.md 的 STEP-000 为 Gate C 事实来源:Ubuntu 24.04 x86_64、Linux OpenGL/mbgl-render/mbgl-render-test-runner,以及 Android OpenGL/Vulkan Debug apackage 均为已封存的 MapLibre Native 编译环境历史。没有修改它。
  2. publication 源码核对:MapLibreAndroid apply maplibre.gradle-publish;openglRelease 被发布;openglrelease publication 的 artifactId 是 android-sdk-opengl;artifact settings group 是 org.maplibre.gl、VERSION 是 13.4.1。因此精确 Maven Local task 是 :MapLibreAndroid:publishOpenglreleasePublicationToMavenLocal。
  3. 旧 MapLibreAndroid-opengl-release.aar 仍在约定路径,mtime 为 2026-08-29,SHA-256 为 5c67d2751fafe211a0df4b82deded09ab1c07cf6ca0f4a12a880283287f85e5c;classes.jar 有旧 MapLibreMap、没有 WeatherRuntime,不能用于当前验证。
  4. MLRN 11.3.6 实际 Gradle 模板用 root extras nativeVariant/nativeVersion 解析 org.maplibre.gl:android-sdk-${variant}:${version}。Test Host plugin 固定 opengl/13.4.1;Bridge 直接依赖同一 org.maplibre.gl:android-sdk-opengl:13.4.1。
  5. 修正 plugin repository rule:此前排除整个 org.maplibre.gl 会阻断 MLRN 所需 android-sdk-turf 与 plugins。现在 Maven Local 仍在首位,但 Maven Central 只排除唯一 custom module android-sdk-opengl。因此 custom SDK 没有 Maven Central fallback,且没有新增 flatDir/files/第二 Maven repository route。
  6. 文档明确 Gate C AAR build 与 Test Host generated Android toolchain 是不同层次。Test Host 首次 prebuild 观察到 Gradle 9.3.1 / AGP 8.12.0 / Kotlin 2.1.20 / SDK 24/36/36 / NDK 27.1.12297006 / Hermes ON / New Architecture ON,不反向修改 Gate C。package declaration 是 npm 10.9.4,而当前 shell 实际为 Node 24.20.0/npm 11.19.0;先前 npm ci 已通过。

修改文件

  • integration/react-native/MapLibreParticleRNTestHost/plugins/withParticleNativeAndroid.js
  • integration/react-native/MapLibreParticleRNTestHost/README.md
  • docs/60_测试/STEP-060_RNTestHost_Android人工编译与验收_v1.md
  • docs/50_Step记录/STEP-060A_RNTestHost编译前修正_v1.md
  • docs/50_Step记录/STEP-060B_GateC封存环境与CustomAAR接入修正_v1.md
  • docs/报告/STEP-060_RNTestHost与WeatherRuntime薄桥接_Codex完成报告_v1.md
  • 粒子开发记录.md 与本报告。

验证

  • publication group/artifact/version/component/task、MLRN/Bridge exact coordinate、old AAR SHA/mtime/classes:静态核对 PASS。
  • NativeWeatherRuntimeBridge.ts 与 Kotlin 20 个 Codegen override:静态一致性 PASS。
  • throttle 下 npx tsc --noEmit、Node plugin syntax、package/lock、无受控 yarn.lock、无 flatDir/files/第二 dependency route、git diff --check:PASS。

未执行 / 风险

没有执行 Android Gradle build/assemble/publish、Expo prebuild、APK/AAB、ADB、设备/模拟器或 Jest。当前 HEAD 的新 AAR、Maven Local POM/module metadata、Test Host 实际 resolution、Android codegen/compile 与 Phase A/B 尚未验证,必须由用户按更新人工说明完成。用户手工生成的 integration/react-native/MapLibreParticleRNTestHost/android/ 保持 untracked,未删除、修改或提交。

Git

  • Starting HEAD:80f360be7849be3e63557c4e074ee3a0fc02e15f
  • 功能 commit:48b93b8609457b280de1034fe1dedc57cb3971e2(fix: align RN test host with Gate C Maven handoff)
  • 文档 commit:e0da7f0c0c7d0c8153de5ce1fcc8e2af0bd0d780(docs: record STEP-060B Gate C Maven alignment)
  • Final HEAD / Remote HEAD / push:由本报告元数据收尾 commit 与 push 后交付消息给出。