I'm an idiot.  The save.json call was wrong on the client-side.