Replace unfiltered generate_snapshot with compute_observer_snapshot that combines shadowcasting + vision cone to send only visible entities and tiles. Enforces information asymmetry (D-011): NPCs behind walls or in the blind spot are excluded from the snapshot. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>