1. CSV Overflow Panic: Use saturating_sub to prevent underflow when total_failed_paths > n 2. Heuristic Scale Mismatch: octile_distance_3d now divides by ITILE_SIZE to match g-score units 3. Goal Z Offset: Correct target.as_ivec3() - ivec3(0,0,1) not ITILE_SIZE (target already has +1.0) 4. Gravity Yo-Yo: Clear current_path and target when entity falls to prevent teleportation loop