The 400 only exists on the second request of a run that calls a tool and loops. No pre-ship check ever made a second request.