fold/scripts/benchmarks/fold_eval/__init__.py
trvon e30764fb19
bench: extend fold_eval scoring with labeled negative cases
Add negative_cases_from_universe to expand an explicit file-by-rule universe
into labeled negatives (enabling TP/FP/TN/FN, not just TP/FP), plus project-eval
harness updates in run_project_eval and the score/score_fp/quality-gate helpers.
2026-08-16 16:43:51 -06:00

51 lines
1.6 KiB
Python

"""Shared, dependency-free evaluation primitives for Fold benchmarks.
Runners collect artifacts. This package owns canonical finding identities,
ground-truth matching, metrics, and repeated-run stability so those semantics do
not drift between benchmark entry points.
"""
from .confirmation import summarize_confirmation_results
from .dispositions import compare_dispositions, validate_disposition_baseline
from .metamorphic import compare_metamorphic_findings
from .metrics import (
aggregate_classification_metrics,
classification_metrics,
distribution_summary,
paired_comparison,
)
from .performance import compare_performance_lanes, optimization_surface
from .project import (
load_project_manifest,
manifest_fingerprint,
validate_project_manifest,
)
from .schema import validate_benchmark_case, validate_run_artifact
from .scoring import (
negative_cases_from_universe,
score_grouped_findings,
score_labeled_cases,
)
from .stability import stability_summary
__all__ = [
"aggregate_classification_metrics",
"classification_metrics",
"compare_dispositions",
"compare_metamorphic_findings",
"compare_performance_lanes",
"distribution_summary",
"load_project_manifest",
"manifest_fingerprint",
"negative_cases_from_universe",
"optimization_surface",
"paired_comparison",
"score_grouped_findings",
"score_labeled_cases",
"stability_summary",
"summarize_confirmation_results",
"validate_benchmark_case",
"validate_disposition_baseline",
"validate_project_manifest",
"validate_run_artifact",
]