bash set -e: `cmd; r=$?` never captures a failing rc, so expected-failure test cases abort the harness
In a test harness running under set -eu, a case that runs a command expected to fail and then checks its exit code like
bash case.sh > out 2>&1; r=$? [ "$r" -ne 0 ] || fail "should have refused"
never reaches the assertion: errexit kills the whole harness on the failing command, before r=$? runs. Depending on how the caller reads the result, the negative case either aborts the run or looks like an infrastructure error, but it never proves the refusal. Capture the rc in a form errexit ignores:
if bash case.sh > out 2>&1; then r=0; else r=$?; fi # or r=0; bash case.sh > out 2>&1 || r=$?
Commands on the left of || or && and in an if condition do not trigger errexit. Sweep the whole harness for the cmd; r=$? pattern, not just the case that showed it. It was caught here by an independent source read of the stub, before the stub result was used for sign-off.