2525 - ' scripts/run-pcs-v01-clean-chain.sh'
2626 - ' scripts/pcs-benchmark-admission.sh'
2727 - ' scripts/pcs-bench-producer.sh'
28+ - ' scripts/pcs-bench-validate-ingest.sh'
29+ - ' scripts/pcs-bench-producer-contract-check.py'
2830 - ' scripts/validate-pf-pcs-bench-ingest.py'
2931 - ' scripts/materialize-admission-benchmark-cases.py'
3032 - ' benchmarks/admission/**'
5658 - ' scripts/run-pcs-v01-clean-chain.sh'
5759 - ' scripts/pcs-benchmark-admission.sh'
5860 - ' scripts/pcs-bench-producer.sh'
61+ - ' scripts/pcs-bench-validate-ingest.sh'
62+ - ' scripts/pcs-bench-producer-contract-check.py'
5963 - ' scripts/validate-pf-pcs-bench-ingest.py'
6064 - ' scripts/materialize-admission-benchmark-cases.py'
6165 - ' benchmarks/admission/**'
@@ -500,38 +504,55 @@ jobs:
500504 OUT="$GITHUB_WORKSPACE/benchmark_runs"
501505 cd "$GITHUB_WORKSPACE/core/cli/pf"
502506 for SUITE in labtrust_qc_release tool_use_safety computation_reproducibility formal_trust_kernel; do
507+ if [[ "${SUITE}" == "labtrust_qc_release" ]]; then
508+ SUITE_OUT="labtrust_admission"
509+ else
510+ SUITE_OUT="${SUITE}_admission"
511+ fi
503512 go run . benchmark admission \
504513 --cases "$GITHUB_WORKSPACE/benchmarks/admission/${SUITE}" \
505514 --registry "$REG" \
506- --out "${OUT}/${SUITE}_admission " \
515+ --out "${OUT}/${SUITE_OUT} " \
507516 --validate \
508517 --validate-pcs-core-output "$PCS_CORE_PATH"
509518 done
510- test -f "${OUT}/labtrust_qc_release_admission/benchmark_report.v0.json"
511- test -f "${OUT}/labtrust_qc_release_admission/benchmark_run.v0.json"
512- test -f "${OUT}/labtrust_qc_release_admission/coverage_report.v0.json"
519+ LABTRUST="${OUT}/labtrust_admission"
520+ test -f "${LABTRUST}/benchmark_report.v0.json"
521+ test -f "${LABTRUST}/benchmark_run.v0.json"
522+ test -f "${LABTRUST}/coverage_report.v0.json"
513523 test -f "${OUT}/formal_trust_kernel_admission/explain_quality_report.v0.json"
514- test -f "${OUT}/labtrust_qc_release_admission /pcs_bench_ingest.v0.json"
515- test -f "${OUT}/labtrust_qc_release_admission /coverage/registry_coverage_report.v0.json"
516- test -f "${OUT}/labtrust_qc_release_admission /coverage/formal_check_coverage_report.v0.json"
517- test -f "${OUT}/labtrust_qc_release_admission /coverage/admission_profile_coverage_report.v0.json"
518- test -f "${OUT}/labtrust_qc_release_admission /coverage/release_reproducibility_coverage_report.v0.json"
519- test -f "${OUT}/labtrust_qc_release_admission /coverage/admission_profile.profile_coverage_report.v0.json"
520- test -d "${OUT}/labtrust_qc_release_admission /explain_quality"
521- test -d "${OUT}/labtrust_qc_release_admission /failure_localization"
522- test -f "${OUT}/labtrust_qc_release_admission /failure_localization/bundle_hash_mismatch.failure_localization_result.v0.json"
523- python3 -c "import json; m=json.load(open('${OUT}/labtrust_qc_release_admission /admission_benchmark_suite.v0.json'))['metrics']; assert m['valid_release_admission_rate']==1.0; assert m['invalid_release_rejection_rate']>=0.85; assert m['failure_localization_accuracy']>=0.85"
524+ test -f "${LABTRUST} /pcs_bench_ingest.v0.json"
525+ test -f "${LABTRUST} /coverage/registry_coverage_report.v0.json"
526+ test -f "${LABTRUST} /coverage/formal_check_coverage_report.v0.json"
527+ test -f "${LABTRUST} /coverage/admission_profile_coverage_report.v0.json"
528+ test -f "${LABTRUST} /coverage/release_reproducibility_coverage_report.v0.json"
529+ test -f "${LABTRUST} /coverage/admission_profile.profile_coverage_report.v0.json"
530+ test -d "${LABTRUST} /explain_quality"
531+ test -d "${LABTRUST} /failure_localization"
532+ test -f "${LABTRUST} /failure_localization/bundle_hash_mismatch.failure_localization_result.v0.json"
533+ python3 -c "import json; m=json.load(open('${LABTRUST} /admission_benchmark_suite.v0.json'))['metrics']; assert m['valid_release_admission_rate']==1.0; assert m['invalid_release_rejection_rate']>=0.85; assert m['failure_localization_accuracy']>=0.85"
524534 test -f "$GITHUB_WORKSPACE/benchmarks/admission/examples/labtrust_qc_release.pcs_bench_ingest.reference.json"
525535 cd "$GITHUB_WORKSPACE"
526536 go run ./tools/pcs-validate \
527- "${OUT}/labtrust_qc_release_admission /benchmark_report.v0.json" \
528- "${OUT}/labtrust_qc_release_admission /coverage_report.v0.json" \
529- "${OUT}/labtrust_qc_release_admission /explain_quality_report.v0.json" \
530- "${OUT}/labtrust_qc_release_admission /pcs_bench_ingest.v0.json"
531- go run ./tools/pcs-validate --benchmark-bundle "${OUT}/labtrust_qc_release_admission " --pcs-core "$PCS_CORE_PATH"
537+ "${LABTRUST} /benchmark_report.v0.json" \
538+ "${LABTRUST} /coverage_report.v0.json" \
539+ "${LABTRUST} /explain_quality_report.v0.json" \
540+ "${LABTRUST} /pcs_bench_ingest.v0.json"
541+ go run ./tools/pcs-validate --benchmark-bundle "${LABTRUST} " --pcs-core "$PCS_CORE_PATH"
532542 pip install -q -e "${PCS_CORE_PATH}/python"
533- pcs validate "${OUT}/labtrust_qc_release_admission /pcs_bench_ingest.v0.json"
543+ pcs validate "${LABTRUST} /pcs_bench_ingest.v0.json"
534544 pcs validate "$GITHUB_WORKSPACE/benchmarks/admission/examples/labtrust_qc_release.pcs_bench_ingest.reference.json"
545+ python3 "$GITHUB_WORKSPACE/scripts/pcs-bench-producer-contract-check.py" \
546+ --ingest "${LABTRUST}/pcs_bench_ingest.v0.json" \
547+ --bundle-dir "${LABTRUST}"
548+ python3 "$GITHUB_WORKSPACE/scripts/pcs-bench-producer-contract-check.py" \
549+ --ingest "$GITHUB_WORKSPACE/benchmarks/admission/examples/labtrust_qc_release.pcs_bench_ingest.reference.json" \
550+ --bundle-dir "${LABTRUST}"
551+ bash "$GITHUB_WORKSPACE/scripts/pcs-bench-validate-ingest.sh" \
552+ --input "$GITHUB_WORKSPACE/benchmarks/admission/examples/labtrust_qc_release.pcs_bench_ingest.reference.json" \
553+ --bundle-dir "${LABTRUST}" \
554+ --pcs-core "$PCS_CORE_PATH" \
555+ --release-grade
535556 cd "$GITHUB_WORKSPACE/core/cli/pf"
536557 go run . benchmark admission \
537558 --cases "$GITHUB_WORKSPACE/benchmarks/admission/labtrust_qc_release" \
@@ -543,10 +564,10 @@ jobs:
543564 grep -q '"suite_id": "pf-labtrust-admission-v0"' "$RUNNER_TEMP/admission_summary.json"
544565 grep -q '"workflow_id": "hospital_lab.qc_release"' "$RUNNER_TEMP/admission_summary.json"
545566 grep -q '"pcs_bench_ingest_path"' "$RUNNER_TEMP/admission_summary.json"
546- python3 -c "import json; i=json.load(open('${OUT}/labtrust_qc_release_admission/ pcs_bench_ingest.v0.json')); assert i['suite_id']=='pf-labtrust-admission-v0'; assert i['workflow_id']=='hospital_lab.qc_release'; assert all('/' in r['path'] or '\\\\' not in r['path'] for r in i.get('artifact_refs',[]))"
547- python3 "$GITHUB_WORKSPACE/scripts/validate-pf- pcs-bench-ingest.py " \
548- --ingest "${OUT}/labtrust_qc_release_admission /pcs_bench_ingest.v0.json" \
549- --bundle-dir "${OUT}/labtrust_qc_release_admission " \
567+ python3 -c "import json; i=json.load(open('${LABTRUST}/ pcs_bench_ingest.v0.json')); assert i['suite_id']=='pf-labtrust-admission-v0'; assert i['workflow_id']=='hospital_lab.qc_release'; assert all('/' in r['path'] or '\\\\' not in r['path'] for r in i.get('artifact_refs',[])); assert 'benchmarks/admission/labtrust_qc_release' in i['commands'][0]['command'] "
568+ bash "$GITHUB_WORKSPACE/scripts/pcs-bench-validate- ingest.sh " \
569+ --input "${LABTRUST} /pcs_bench_ingest.v0.json" \
570+ --bundle-dir "${LABTRUST} " \
550571 --pcs-core "$PCS_CORE_PATH" \
551572 --release-grade
552573
0 commit comments