This is probably the root cause – https://core.trac.wordpress.org/changeset/36510. Core have moved from saving menus in $_POST
to sending them as json encoded and then decode it into $_POST
. I am not very familiar with how menus are sent to the server, but you probably either use the wrong hook, use the right hook but too early, or there is a bug in core.