I recently had to play the game where my password manager generated a password with special characters, but they weren't the right special characters. Needed to manually swap each one out with an acceptable replacement
This is a fun take on the joys of creating passwords but I had to cut myself off when it required
spolier
today's wordle answer
lol
edit: Sorry if spoiler doesn't work - I tried...
I've used Message Pack in the past with good results. I think it does everything you're looking for. Difference being it has no formal schema declaration or code generation step so there are tradeoffs vs something like flatbuffers