InvalidateAll() on the OCIO LUT node triggered the worker's PreviewAutoCacher to re-cache the entire timeline, causing the main process to freeze while waiting for frames. Only invalidate in the main GUI process so the viewer refreshes; the worker will naturally use the new processor on its next render request.