38 lines
1.0 KiB
Bash
Executable File
38 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# null lane gate -- one command, and the exit code IS the verdict.
|
|
#
|
|
# 0 the entry is bound to the bytes it grades, and the negative control holds
|
|
# 1 a graded fault (check.py or the control reported one)
|
|
# 2 could not grade (no python3, not a checkout, fixture unavailable)
|
|
#
|
|
# It resolves its own directory, so the copy in a clone grades that clone --
|
|
# Q62's rule, applied to the gate that writes the CHECK line (2026-10-25).
|
|
#
|
|
# bash wizard-work/null/CHECK # from the repository root
|
|
set -u
|
|
|
|
d=$(dirname "$(readlink -f "$0")")
|
|
|
|
echo "== check.py: the entry against the remote main =="
|
|
python3 "$d/check.py"
|
|
a=$?
|
|
|
|
echo
|
|
echo "== q57_mutation.py: the gate's own negative control =="
|
|
python3 "$d/q57_mutation.py"
|
|
b=$?
|
|
|
|
if [ "$a" -eq 0 ] && [ "$b" -eq 0 ]; then
|
|
echo
|
|
echo "LANE GATE GREEN"
|
|
exit 0
|
|
fi
|
|
if [ "$a" -eq 2 ] || [ "$b" -eq 2 ]; then
|
|
echo
|
|
echo "LANE GATE: COULD NOT GRADE (check.py rc=$a, q57_mutation.py rc=$b)"
|
|
exit 2
|
|
fi
|
|
echo
|
|
echo "LANE GATE: FAULT (check.py rc=$a, q57_mutation.py rc=$b)"
|
|
exit 1
|