Uncommitted work from a finished agent worktree on ludothinkpad (/home/ludovic/.t3/scratch/2026-10-03-i-want-you-to-retro-e5fa4461/.claude/worktrees/agent-ac2ea1edb29c4454e), saved before the worktree was removed. Not built or verified.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Port StructurePiece's orientation frame and block helpers, template pieces
with data markers, chest/dispenser loot block entities and the five
smaller legacy structures. Structure stubs use the chunk middle (block 8).
For seed 0 over 97x97 chunks all 35 starts of implemented structure types
match the vanilla oracle (pieces, boxes, positions).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Templates store palette states as id/properties; reading only Name made
every template block air. Add a vanilla oracle (structure placement, start
selection and Structure.generate over a chunk rectangle), a bench mode
dumping Rust starts in the same format, and a comparison script. For seed
0 over 97x97 chunks all 15 jigsaw starts (villages, trial chambers, trail
ruins, abandoned camps) match vanilla piece for piece.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>