I don't think that is surprising, is it? Since && and || have the same order of precedence. So I think this is more of a clarification than a caveat.
I think this is just because:
a && b || c
is equivalent to:
(a && b) || c
(so of course c gets evaluated if (a && b) is false (that if either a or b is false).
I think they just mean, in this case:
bedmap && mv || fail
if mv fails, then fail still gets executed.
Easier to see with a simpler example:
⟫ true && false || echo 'fail'
fail
⟫ false && true || echo 'fail'
fail
Better example/explanation here: https://hyp.is/-foxmCVXEeuhnLM-le_R4w/mywiki.wooledge.org/BashPitfalls
The caveat/mistake here is if you treat it / think that it is equivalent to if a then b else c. That is not the case if b has any chance of failing.