(In reply to comment #1)
There are no steps to reproduce this. You used the API with action=move and the result was an error called "backend-fail-move". Sometimes it worked and sometimes it did not work.
Since it doesn't seem to happen recently, I'd better avoid putting lots of my time in this doing debugging collecting request and response headers etc.
The which are included with italic letters in the reports linked above are the dates from the response headers so you should be able to check the server logs for file moves at commons at this time.
The parameters set by the script and sent to the API are:
format: json, from: pageName, to: AQD.destination, reason: AQD.reason, movetalk: true, watchlist: AQD.pageWasWatched ? 'watch' : 'nochange' token: movetoken