The only solution I can imagine right now is to move the detection of 'special' devices (not running a mobile os) to a separate detection file that will always be processed.

But I'm currently not sure if that would really be required. Running the useragentparserenhanced tests takes less than 3 seconds on my local vm. Currently there are around 740 detections to run which would mean a time of less than 4 ms / detection. Maybe we need to test how it behaves if there are running many detections in parallel.