Replying to my own post in case anyone else runs into this.
It turned out not to be related to the Image Type at all and that was a red herring. The actual cause was a malformed tag in the affected files: the Purpose of Reference Code Sequence (0040,A170), nested inside the Contributing Equipment Sequence (0018,A001), was encoded with VR UN instead of SQ.
I think that this was technically legal DICOM so the server side is happy meaning the files archive fine and the session JSON is generated as normal. But dcmjs in the viewer front end mis-parses the UN-encoded sequence, reads past the end of the buffer, and throws the DataView RangeError. The LeftSidePanel error boundary is just the first thing to catch it, so that takes everything down.
In our case the affected series were MPR/MIP reformats that had been exported through a different route to the primary acquistions so I guess somewhere in that export nested sequence (SQ) got rewritten as UN.
When I stripped the affected tag e.g using `dcmodify --erase-all "(0018,A001)" file.dcm`and re-uploaded the sessions loaded fine.
Hope that saves someone else some head-scratching!
Cheers,
Haroon