Python atlas_pack.py was a stop-gap substitute while davoryn was
down (preventing pull of the real node baker). With sporel-tool-
atlas-baker v0.2.0 shipping padding + blob-14 schema validation +
collision sidecar pass-through + alpha-analysis opaque flag, the
Python substitute is no longer needed.
Changes:
- scripts/atlas_pack.py removed
- scripts/bake_testbench.py: drop atlas_pack import + pack() call;
now produces source PNGs only. Node baker does the packing.
- scripts/bake_singles.py: same simplification, plus copies the
shared blob_rectilinear collision.json into each single-material
source dir (so atlas-baker E2 validation finds the sidecar).
- scripts/bake.sh: rewritten to call the node baker for all 8
atlases. Single-material variants (4 base styles + 3 tinted
singles) bake with `--schema blob-14` for E1+E2 validation.
Mixed-material blob_testbench bakes without --schema (42 tiles
don't match the canonical 14-slot pattern).
- 3 collision.json copies committed under assets/_sources/blob_
rect_{stone,grass,wood}/ — same content as the shared
blob_rectilinear one (since these single-material atlases share
the same blob geometry).
Single codepath for atlas production now: node baker only. No more
two-tool drift. Future-Python-changes to source generation auto-
flow through to baked atlases via bake.sh.
End-to-end verification: bake.sh produces 8 atlases cleanly; all
single-material bakes pass --schema blob-14 + collision validation;
opaque flag set on slot_13_solid (alpha-all-255), absent on the
other slots (transparent regions). SPOREL_CI=1 vagrant-skeleton
rc=0 with both blob_testbench (legacy multi-material) and
blob_rect_stone (vertex-painted single-material) loading correctly.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>