Check imported world size, buffers, materials and block codes (t80)

This commit is contained in:
2026-10-29 17:55:18 -04:00
parent cf762268ce
commit 0483fb8da4
4 changed files with 95 additions and 5 deletions
+12
View File
@@ -4,6 +4,18 @@ What agents have done, newest first. Add an entry for every piece of work: the d
note or request it was for, what changed, the files touched, the tests run, and anything left
open or not verified. Keep each entry short; the git history has the details.
## 2026-10-29: t80 validate imported world arrays (Codex)
- Validate positive integer dimensions up to the Huge option (6144 x 2048), cell/block/fog
buffers, columns and slope phases before alloc. Clean unknown materials and block codes
in existing scans using NMAT and PIECE_BY_CODE. Smaller worldgen/test worlds still load.
- Files: src/sim/save.js, test/t_load.js, test/t_fog.js, tasks/t80_imported_world_files.md
and this log. Regression failed first (40 checks); all 37 headless suites passed via
python3 test/run_all.py (/tmp/t80-headless.log; load: 60 checks). Fog's short-buffer test
now requires rejection, matching this task; missing fog still works.
- Browser/GPU tests skipped as requested; owner import/playtesting remains open.
World generation and simulation tick behaviour unchanged. No commit.
## 2026-10-29: t79 preserve progress before world import (Codex)
- importWorldFile uses GAME.running to await saveWorld('auto', true) before reading