Yes, that is a bug in serde. untagged enums do not support 128 bit integers · Issue #1717 · serde-rs/serde · GitHub
While deserializing an untagged enum, data is buffered. The buffer is not capable of holding i128/u128 values [src]. There is no way around that, except patching serde yourself. Maybe in some future, the internal buffering can be reworked to fix many bugs resulting from it (serde#1183).