#!/usr/bin/env bash set -euo pipefail # Verify CASAN Level 5 shared harness reuse across more than one project. SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" source "$SCRIPT_DIR/casan-paths.sh" PROJECT_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" REGISTRY="$CASAN_HARNESS_ROOT/level5/project-registry.json" PACKAGE="$CASAN_HARNESS_ROOT/level5/harness-package.json" python - "$REGISTRY" "$PACKAGE" <<'PY' import json import sys registry = json.load(open(sys.argv[1], encoding="utf-8")) package = json.load(open(sys.argv[2], encoding="utf-8")) name = package["package"] version = package["version"] projects = [ p for p in registry["projects"] if p.get("harness_package") == name and p.get("harness_version") == version ] if len(projects) < 2: raise SystemExit(f"HARNESS_REUSE_INSUFFICIENT package={name} version={version} count={len(projects)}") print(f"HARNESS_REUSE_VALID package={name} version={version} project_count={len(projects)}") PY