#!/usr/bin/env bash # WAL unit + integration + crash-fuzz gate. Throwaway HOME/dirs only. set -e HERE="$(cd "$(dirname "$0")" && pwd)" REL="$HERE/../../lang/runtime" cc -O2 -fbracket-depth=1024 -Wno-parentheses-equality -I"$REL" \ "$HERE/test_wal.c" -lcurl -lpthread -o /tmp/test_wal HOME=/tmp/engram-throwaway-home /tmp/test_wal # Fail-loud data-dir check (must exit 1 with a FATAL line): cat > /tmp/test_failloud.c <<'C' #include "el_runtime.c" int main(void){ unsetenv("ENGRAM_DATA_DIR"); unsetenv("HOME"); engram_resolve_data_dir(); printf("REACHED\n"); return 0; } C cc -O2 -fbracket-depth=1024 -Wno-parentheses-equality -I"$REL" /tmp/test_failloud.c -lcurl -lpthread -o /tmp/test_failloud if env -u HOME -u ENGRAM_DATA_DIR /tmp/test_failloud; then echo "FAIL: should have exited"; exit 1; else echo "[PASS] fail-loud exit on unresolvable HOME"; fi