Add area quality gate

This commit is contained in:
2026-08-04 10:42:10 +08:00
parent b791c4350e
commit 7fcc4ee8cc
9 changed files with 908 additions and 550 deletions

View File

@@ -87,6 +87,22 @@ manifest 记录阶段输入/输出文件的 bytes、mtime、sha256、耗时、GL
`diagnose:area` 会读取这些 manifest如果已有 GLB 但 manifest 缺失,或者 manifest
记录的输入/输出 sha/bytes 和当前文件不一致,会在 `Stage manifests``Warnings` 里标出来。
## 区域质量门
提交或交付某个区域前,跑只读质量门:
```bash
npm run check:area -- --config config/areas/nantaizi-lake-innovation-valley.json
```
`check:area` 复用 `diagnose:area` 的 OSM、产物、metadata、GLB digest 和 stage manifest
检查,但输出更短的 PASS/FAIL 报告。它不会启动 QGIS、Blender、Cesium、压缩或任何重建阶段。
第一版会在这些条件下退出非零OSM bounds 缺失/无效、building multipolygon relation
异常、建筑 `height` 无法按正数米解析、Cesium GLB / metadata / preview 缺失或类型错误、
metadata JSON 损坏、GLB size / nodes / images 超过保守预算、期望存在的 stage manifest
缺失/损坏/stale。缺 QGIS preview 目前只作为 warning不阻断。
## 区域配置
新区域从模板复制: