#!/usr/bin/env bash # Deterministic recovery gate; live host drills remain separately required. set -euo pipefail REPO_ROOT="$(cd "$(dirname "$0")/.." && pwd)" cd "${REPO_ROOT}" PYTHON_BIN="${REIN_CONTRACT_PYTHON:-${REPO_ROOT}/.venv/bin/python}" "${PYTHON_BIN}" -c 'import glas_harness.contract, llm_connect, sandboxer.models' PYTHONPATH="${REPO_ROOT}:${REPO_ROOT}/../llm-connect" \ "${PYTHON_BIN}" -m pytest \ tests/test_claim_loop.py::test_process_one_initial_heartbeat_rejection_refuses_dispatch \ tests/test_claim_loop.py::test_process_one_lease_loss_cancels_registered_adapter_process \ tests/test_claim_loop.py::test_profiled_close_failure_happens_after_repository_lock_release \ tests/test_claim_loop.py::test_response_lost_close_replays_without_reexecuting_workload \ tests/test_claim_loop.py::test_pending_close_failure_blocks_new_claim \ tests/test_claim_loop.py::test_permanent_close_refusal_is_quarantined_before_claim \ tests/test_repository_transaction.py::test_exception_releases_lock_for_next_transaction \ tests/test_glas_execution.py::test_profiled_run_refuses_success_if_cancelled_during_gateway \ -q