CI for csaxs_bec / test (push) Successful in 1m51s
OMNY_TomoParams's poll timer called sample_name_getter every tick, which for OMNY was dev.omny_samples.get_sample_name_in_samplestage() -- a device method, dispatched by BEC as a device_rpc request through the scan queue rather than a local read. With the queue busy or paused this blocked the widget's Qt thread (GUI freeze while a scan ran) and piled up duplicate PENDING device_rpc entries in BEC's primary queue (confirmed live via bec.queue.queue_storage .describe_queue()). The method was just a one-line wrapper around an already-readable EpicsSignal, so read it directly with cached=True instead, matching flomni's fast-getter pattern and avoiding even the signal round-trip. Also applied cached=True to flomni's own getter, which didn't have the device_rpc bug but is polled the same way. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QLrD7sVYGLAzsQjLVJpCgt