I believe where Josh and I ended up is that the server's going to start handling all of the related issues, and so by the time the pdb terminus is involved, the strings will be "fine". So on the pdb side, as long as pdb itself will reject any "bad" strings, we may just need to remove the current encoding related hacks.
I believe where Josh and I ended up isPuppet will provide a to_json implementation that the server's going (optionally) falls back to start handling all of the related issues, pson serialization and so by the time the pdb terminus is involved, the strings will be "fine". So on the pdb side, as long as pdb itself will reject any " does all neededbad" strings, we may just need to remove the current encoding related hacks character serialization.
Puppet will provide a to_json implementation that (optionally) falls back to pson serialization and does all needed bad character serialization sanitization.