# STEP-060D WeatherRuntimeBridge attach 精确诊断 — Codex 完成报告 ## 结论 已实现并交付 STEP-060 attach 精确诊断与唯一 Linux custom AAR,当前状态为 `IMPLEMENTED / WAITING_CARBON7I_ATTACH_DIAGNOSTICS`。本轮不是 STEP-060 CLOSED,也未进入 STEP-061。 ## 正式源码修改 - `WeatherRuntimeBridgeModule.attach()` 现在分别检查 weather source、WeatherColor layer、particle layer。 - 三对象不全时仍使用稳定错误码 `WEATHER_OBJECTS_NOT_READY`,但 message 固定包含 `reactTag`、`mapView`、`mapLibreMap`、`style`、三个固定 ID 的 present/missing 状态、source/layer 总数及有界 ID 摘要。 - 摘要每类最多 24 个 ID,weather ID 优先;有剩余项时写 `…+N`,不使用反射、不打印无界 Style JSON。 - `MAP_VIEW_NOT_FOUND`、`MAP_NOT_READY`、`STYLE_NOT_READY` 仍独立于 weather-object rejection;对象齐全时原 `replaceWeatherRuntime()`、Promise snapshot、控制语义和生命周期 listener 不变。 - 为避免 Maven Local 缓存混淆,custom AAR 与 Test Host 已有坐标 wiring 改用 `13.4.1-step060d`;未改 Test Host 业务流程。 ## Linux 验证 - `JOBS=3 RENDERER=opengl BUILDTYPE=Release make apackage`:PASS(正式 OpenGL Release 四 ABI AAR)。 - `./gradlew :MapLibreAndroid:publishOpenglreleasePublicationToMavenLocal --console=plain`:PASS。 - `./gradlew projects --console=plain`:PASS;确认 bridge project 为 `:maplibre-particle_weather-runtime-bridge`。 - `./gradlew :maplibre-particle_weather-runtime-bridge:compileDebugKotlin --console=plain`:无法验证本轮源码。当前 untracked Expo Android 生成工程缺失 `NativeWeatherRuntimeBridgeSpec`;随后的标准 `:app:generateCodegenArtifactsFromSchema` 为 PASS 但子任务 `SKIPPED`,没有生成该 Spec。compiler 因此报告所有 TurboModule overrides 连带失败。此限制已记录,未通过修改生成工程或扩大 bridge/codegen 方案绕过。 - `git diff --check`:PASS。 所有 Gradle/Make/codegen 命令均通过 build-output-throttle 执行;未执行 Jest。 ## Custom AAR 交付 | 项目 | 值 | | --- | --- | | Maven group | `org.maplibre.gl` | | artifact | `android-sdk-opengl` | | version | `13.4.1-step060d` | | build output | `platform/android/MapLibreAndroid/build/outputs/aar/MapLibreAndroid-opengl-release.aar` | | Maven Local AAR | `/root/.m2/repository/org/maplibre/gl/android-sdk-opengl/13.4.1-step060d/android-sdk-opengl-13.4.1-step060d.aar` | | SHA-256 | `7391440f02e976f295caa265bc15e895a7c0183883a0e2cb08deef4cf42b0096` | POM/module 坐标均为 `org.maplibre.gl:android-sdk-opengl:13.4.1-step060d`;发布 AAR 与 build output SHA 一致,含 `arm64-v8a`、`armeabi-v7a`、`x86`、`x86_64`。 ## 未执行与下一步 未进入 CARBON7i、未更新 Win11 Maven Local、未执行 Win11 dependencyInsight、APK build/install、ADB 或 Android 运行验证;未实现 binary U/V field transport,未进入 STEP-061。下一步只能由 CARBON7i 用本报告的唯一坐标及 SHA 安装/解析 AAR 后,返回 attach 的精确诊断。 ## Git - Linux source/AAR 提交:`c8030581b5c6285e2623e251e0eb261351321142` — `feat: diagnose WeatherRuntime bridge attach state`。 - 文档主提交:`b96b531e0189d8d851f92ac3fdac0f95d59629da` — `docs: record STEP-060D attach diagnostics`。 - 本报告中的 AAR SHA 由上述 source commit 构建;最终任务 HEAD、远端 HEAD 与 push 结果以本次任务交付的 Git 实测值为准。