3511493687
- RegionTickLoop: nouveau ctor 4-arg (registry, gravityApplier, regionVisualizer, errorHandler). Les ctors 2-arg et 3-arg existants delegent (back-compat tests). Tick appelle regionVisualizer.visualize(w, snapshot) apres gravityApplier.apply() avec null-safe gate (meme pattern que gravityApplier). - GravityFlipPlugin.start(): construit RegionVisualizer avec errorHandler log WARN, le passe au tickLoop. - GravityFlipPlugin.shutdown(): appelle regionVisualizer.clearAll(world) AVANT tickLoop.stop() (si Universe encore vivante), emet ClearDebugShapes a tous les PlayerRefs. Si universe null, fallback TTL expiration. - Aucun nouveau scheduler/thread cree.