#!/usr/bin/env bash # Reproduction fixtures for the Vale 3.15.2 behaviours the lint plugin's vale-config and vale-run # skills state as house-verified (provenance key house-vale-3-15-2-repro). Each case builds a # purpose-built fixture in a temp dir, runs the real `vale` binary and asserts exit code plus # output. A behaviour that changes in a later Vale release fails here, which is the point: the # skill text is only backed while this test passes. # # Not reproducible here (mdx2vast is not installed in CI): the native-MDX halves of the mdx # suppression table. Only the mdx2vast-absent E100 and the `[formats] mdx = md` column are asserted. set -uo pipefail if ! command -v vale &>/dev/null; then echo "SKIP: vale is not installed" exit 77 fi EXPECTED="3.15.2" GOT="$(vale --version | awk '{print $3}')" if [[ "$GOT" != "$EXPECTED" ]]; then echo "SKIP: behaviours are pinned to Vale $EXPECTED, found $GOT" exit 77 fi PASS=0 FAIL=0 pass() { echo " PASS: $1"; PASS=$((PASS + 1)); } fail() { echo " FAIL: $1"; FAIL=$((FAIL + 1)); } WORK="$(mktemp -d)" trap 'rm -rf "$WORK"' EXIT OUT="" RC=0 # run