net-kingdom/tools/contract-tests/run.sh
tegwick de7d1f35a6
All checks were successful
Bounded-execution contracts / contracts (push) Successful in 2m36s
Build and Publish bounded-executor / build-and-push (push) Successful in 16s
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Identity provider journey acceptance / provider (push) Successful in 24s
NK-WP-0058-T02 step 1: owner source in CI, contract workflow, suite fails on any skip
contracts/owner-pins.json pins six public owners; tools/contract-tests/fetch_owners.py partial-clones
them anonymously (pinned on push, main nightly). tools/contract-tests/run.sh is the one suite list
(make contract-test, CI) and fails when any test skips. New: readiness against real owner source,
replaying both 2026-11-04 states from informed-decision history. pytest pinned by PyPI-checked hashes.
test_approval_request no longer hard-codes /home/worsch/informed-decision.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 943911@bnt-lap001
Assistant-Session: fc322940-1c8e-4bed-ab39-86cec99f23a0
2026-11-05 23:58:16 +01:00

21 lines
940 B
Bash
Executable file

#!/usr/bin/env bash
# Bounded-execution contract suite (NK-WP-0058-T02). One list, used by `make contract-test` and by CI.
# The owners must sit next to net-kingdom (locally the sibling checkouts; in CI tools/contract-tests/fetch_owners.py).
# A skipped test fails the run: a contract that was not checked must not look green.
set -euo pipefail
cd "$(dirname "$0")/../.."
out=$(mktemp)
trap 'rm -f "$out"' EXIT
PYTHONDONTWRITEBYTECODE=1 python3 -m pytest -q -rs -p no:cacheprovider \
tests/test_executor_lanes.py \
tests/test_write_role_audit.py \
bounded-executor/tests/test_approval_request.py \
tools/bounded-execution-readiness/tests \
tools/bounded-execution-run/tests \
tools/execution-attribution-receipt/tests \
sso-mfa/k8s/bounded-executor \
"$@" | tee "$out"
if grep -q '^SKIPPED' "$out"; then
echo "contract-test: skipped tests above; every contract must run (are the owner checkouts present?)" >&2
exit 1
fi