Yeah, I think the conversion is where it gets messed up. It seems like webp images bypass this conversion step. It is a relatively new format though, so it won't work in old browsers.
Disclaimer - I am not fully up to date on the state of the project:
Pict-rs has to balance a couple of concerns. It's primary purpose is de-duplication, so when the same meme gets uploaded 1000 times, it doesn't get stored 1000 times. Another important purpose is the ability to apply effects like blurs, which are used to mask NSFW content. Blurring a gif with a 255 color limit is kind of infeasible, so they get converted to a more suitable format first (is mp4 more suitable though 🤷). Pict-rs was originally designed around static images, and kind of grew in scope with time. There are probably some edge-cases we're hitting.
While setting up pict-rs on my cluster I noticed a pict-rs environment variable to convert all uploaded pictures to the png format. That may also be activated. I guess that makes de-duplication way easier.