#!/usr/bin/env bash # tests/fix-round-4-5b2-a-regression.sh # The Regression: of fix round 4.5b2, part A (plan # .claude/projects/2026-10-31-guard-4-5b2-part-a/plan.md, Step 5, 5c; # decisions 91, 107 and 123): the whole suite (npm test, which runs the keep # file and the corpus test too), the round's bypass corpus # (tests/guard-bypass-corpus-4-5b2-a.sh), the round's end to end # (tests/e2e-fix-round-4-5b2-a.sh), part 4's, part 3's, part 2's and part 1's # end to end (tests/e2e-fix-round-4-5b-part-4.sh, # tests/e2e-fix-round-4-5b-part-3.sh, tests/e2e-fix-round-4-5b-part-2.sh, # tests/e2e-fix-round-4-5b.sh), the round's red proof # (tests/fix-round-4-5b2-a-red.sh) and part 4's red proof # (tests/fix-round-4-5b-part-4-red.sh, which lists the false-stops file this # round edited). The 4-5a, part-1, part-2 and part-3 red proofs are not run # here: one Regression command has the criteria runner's 15-minute cap; they # run as their own Verification lines. # All nine run, in that order; the script prints each exit and exits with the # first non-zero status, or 0 when all nine exit 0. # bash 3.2 compatible, ASCII only, no arrays. set -u cd "$(dirname "$0")/.." || { echo "regression: cannot cd to the repo root" >&2; exit 2; } FIRST=0 npm test rc=$? echo "regression: npm test exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/guard-bypass-corpus-4-5b2-a.sh rc=$? echo "regression: tests/guard-bypass-corpus-4-5b2-a.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/e2e-fix-round-4-5b2-a.sh rc=$? echo "regression: tests/e2e-fix-round-4-5b2-a.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/e2e-fix-round-4-5b-part-4.sh rc=$? echo "regression: tests/e2e-fix-round-4-5b-part-4.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/e2e-fix-round-4-5b-part-3.sh rc=$? echo "regression: tests/e2e-fix-round-4-5b-part-3.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/e2e-fix-round-4-5b-part-2.sh rc=$? echo "regression: tests/e2e-fix-round-4-5b-part-2.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/e2e-fix-round-4-5b.sh rc=$? echo "regression: tests/e2e-fix-round-4-5b.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/fix-round-4-5b2-a-red.sh rc=$? echo "regression: tests/fix-round-4-5b2-a-red.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc /bin/bash tests/fix-round-4-5b-part-4-red.sh rc=$? echo "regression: tests/fix-round-4-5b-part-4-red.sh exited $rc" [ "$FIRST" -eq 0 ] && FIRST=$rc exit "$FIRST"