fix: handle raster array in offline download
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
@@ -30,10 +30,10 @@
|
||||
|
||||
## 构建与检查
|
||||
|
||||
- Linux OpenGL 受影响 Core 精确对象编译:PASS。
|
||||
- `clang-format --dry-run --Werror`、`git diff --check`、fixture generator:待本轮最终收尾复跑。
|
||||
- Linux OpenGL 受影响 Core 精确对象编译:PASS(`offline_download.cpp.o`,`-Werror`)。
|
||||
- `clang-format --dry-run --Werror`、`git diff --check`:PASS;fixture generator 不受本次枚举接入影响,未重跑。
|
||||
- adapter smoke:`uniform-east`、`uniform-north`、`vortex` 均 valid;`nodata` valid 且有 1 个 invalid cell。
|
||||
|
||||
## 当前结果、阻塞与下一步
|
||||
|
||||
正式 Source/Layer/RenderLayer 已不依赖 source-less `particle-validation` Layer;历史 validation Layer 只保留为既有验证工具。唯一阻塞是按用户指令等待 GPT 复审新远端 commit;复审通过后才允许用户开始 Android OpenGL APK 手工验收。
|
||||
正式 Source/Layer/RenderLayer 已不依赖 source-less `particle-validation` Layer;历史 validation Layer 只保留为既有验证工具。`RasterArraySource` 的当前 contract 为平台 FileSource 读取确定性 fixture bytes(40-01 Android 为 APK `asset://`),不含 tileset 或由 OfflineDownload 管理的 URL/resource;故 OfflineDownload 的资源计数与下载队列均明确 no-op。Linux 精确编译、format、diff 与全仓 SourceType switch 复核已通过;提交与推送待本轮收尾。Android OpenGL APK 手工验收仍由用户执行。
|
||||
|
||||
@@ -35,6 +35,13 @@ Stage A 代码与静态检查完成,任务状态为 `WAITING_MANUAL_VALIDATION
|
||||
- adapter smoke test:PASS,三份普通 fixture 成功 decode/validate;`nodata` fixture 的单 cell invalid 标记被保留且 field 整体合法。Android asset 与仓库 fixture byte parity:PASS。
|
||||
- 未运行 Gradle、APK 安装、ADB 或 Android 实机验证,遵守任务书限制。
|
||||
|
||||
## 4.1 RasterArray 离线下载枚举接入修复
|
||||
|
||||
- Android OpenGL 实际编译发现 `OfflineDownload` 的“required offline resource count”与“offline resource queue/download”两个穷尽 `SourceType` switch 漏掉 `RasterArray`。
|
||||
- 当前 `RasterArraySource` 只以 `FileSource::request(Resource::source(...))` 读取 metadata 与 field;40-01 的 URL 是 APK `asset://integration/particle-fixtures/...`。其 Impl 未定义 tileset、zoom range 或 OfflineDownload 可管理的 URL/resource contract,因此这两个 switch 均增加显式 `SourceType::RasterArray` no-op,不增加资源计数或下载队列。
|
||||
- 未添加 `default:`;全仓非 vendor 的 `SourceType` switch 复核后,除本文件两个遗漏外均已处理 `RasterArray`。
|
||||
- Linux/Core 精确编译 `offline_download.cpp.o`(含 `-Werror`)、`clang-format --dry-run --Werror` 与 `git diff --check`:PASS。commit 和 push 结果在本轮交付中报告;状态继续为 `WAITING_MANUAL_VALIDATION`,未运行 Gradle 或 ADB。
|
||||
|
||||
## 5. 已知问题与未完成事项
|
||||
|
||||
- Android OpenGL 的 T1-T12 仍待用户执行,T1 rotation 无按钮恢复是硬门槛。
|
||||
|
||||
@@ -216,6 +216,10 @@ OfflineRegionStatus OfflineDownload::getStatus() const {
|
||||
break;
|
||||
}
|
||||
|
||||
// RasterArraySource currently reads deterministic fixture bytes from the
|
||||
// platform FileSource (Android assets for 40-01). It has no tileset or
|
||||
// OfflineDownload-managed resource contract.
|
||||
case SourceType::RasterArray:
|
||||
case SourceType::Video:
|
||||
case SourceType::Annotations:
|
||||
case SourceType::CustomVector:
|
||||
@@ -330,6 +334,10 @@ void OfflineDownload::activateDownload() {
|
||||
break;
|
||||
}
|
||||
|
||||
// RasterArraySource currently reads deterministic fixture bytes from the
|
||||
// platform FileSource (Android assets for 40-01). It has no tileset or
|
||||
// OfflineDownload-managed resource contract.
|
||||
case SourceType::RasterArray:
|
||||
case SourceType::Video:
|
||||
case SourceType::Annotations:
|
||||
case SourceType::CustomVector:
|
||||
|
||||
@@ -166,3 +166,9 @@
|
||||
- `ParticleFieldSnapshot` 将 cell validity 独立于 fixture validity:合法 NoData cell 产生 invalid mask,GPU texture alpha 表示该 mask;State sample 命中 NoData 后确定性 respawn,不将 `-9999` 当普通速度;NaN/Inf 仍拒绝。新增 `nodata` deterministic fixture。
|
||||
- STATIC/context recreation 的 zero-step bootstrap 未推翻:新资源自动建立并首帧 composite,bootstrap commit 不增加 simulation frame。
|
||||
- Linux Core 精确编译、format/diff、fixture generator、adapter/asset parity 检查在最终收尾复跑;未运行 Gradle、APK、ADB 或 T1-T12。最终状态仍只能是 `WAITING_MANUAL_VALIDATION`,等待 GPT 再次复审远端代码。
|
||||
|
||||
## 2026-09-01 — 40-01 RasterArray OfflineDownload 穷尽接入
|
||||
|
||||
- Android OpenGL 实际 C++ 编译暴露 `OfflineDownload` 的 required-resource-count 与 resource-queue 两处 `SourceType` 穷尽 switch 漏掉 `RasterArray`。
|
||||
- 根据当前实现,`RasterArraySource` 只从平台 `FileSource` 获取确定性 fixture metadata/field bytes;40-01 Android 输入固定为 APK `asset://integration/particle-fixtures/...`,且 Source Impl 不包含 tileset、zoom range 或 OfflineDownload 托管资源 contract。因此两处都以显式 `SourceType::RasterArray` no-op 表达语义,不虚报资源数、不进入下载队列。
|
||||
- 不增加 `default:`;全仓非 vendor 的 `SourceType` switch 已复核,本次仅修复新增枚举的直接遗漏。Linux/Core `offline_download.cpp.o` 精确编译(`-Werror`)、`clang-format --dry-run --Werror` 与 `git diff --check` 均通过;未运行 Gradle 或 ADB,40-01 继续为 `WAITING_MANUAL_VALIDATION`。
|
||||
|
||||
Reference in New Issue
Block a user