Add configurable area asset budgets

This commit is contained in:
2026-08-04 12:28:43 +08:00
parent f78080bbfa
commit 463cb06be4
18 changed files with 443 additions and 42 deletions

View File

@@ -323,6 +323,7 @@ node scripts/check-area.js [--config config/areas/<area>.json]
| Cesium GLB / metadata / preview 缺失或类型错误 | failure |
| metadata JSON 损坏 | failure |
| GLB size / nodes / images 超保守预算 | failure |
| GLB render triangles / embedded image bytes 超保守预算 | failure |
| expected stage manifest 缺失、损坏或 stale | failure |
| stage manifest warning 内容包含 budget exceeded | failure |
| QGIS preview 缺失 | warning不阻断 |
@@ -481,6 +482,7 @@ File records use this shape:
- `summary.glb.fileBytes`
- `summary.glb.counts`
- `summary.glb.extensionsUsed`
- `summary.budget`effective limits、usage 和 violationswarnings 来自同一个预算评估
`cesium` 会调用 preview 生成函数,但 preview HTML / route / vehicle model 的 freshness
所有权属于独立 `preview` manifest。否则单跑 `--stages preview` 会把 Cesium manifest
@@ -512,6 +514,7 @@ File records use this shape:
- `summary.options`
- `summary.compressionRatio`
- `summary.savedBytes`
- `summary.budget`:压缩 GLB 的 effective limits、usage 和 violations
Manifest files are written atomically via `*.tmp` then `renameSync`.
@@ -524,7 +527,7 @@ Manifest files are written atomically via `*.tmp` then `renameSync`.
| Manifest output 文件缺失 | 写入时抛错;诊断时报告 stale/missing |
| Manifest JSON 无法解析 | 诊断报告 invalid warning |
| Manifest 记录的 input / output sha/bytes 与当前文件不同 | 诊断报告 stale warning |
| GLB size / nodes / images 超保守预算 | manifest `warnings[]` 记录,诊断继续独立报警 |
| GLB size / nodes / images / render triangles / embedded image bytes 超保守预算 | manifest `warnings[]` 记录,诊断继续独立报警 |
| `intermediates` 后留有旧 reimport manifest | 成功后删除旧 reimport manifest |
| `reimport` 后留有旧 intermediates manifest | 成功后删除旧 intermediates manifest |