Unparented pyqtgraph ROIs could be garbage-collected while the next ROI was being
built, which crashed PySide6 in CI with --random-order (segfault in
GraphicsObject.itemChange during garbage collection). Test logic unchanged.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TNtKEk4jAyjebMDQFwRHJQ