| from enum import Enum | |
| class DocumentType(str, Enum): | |
| BASKETBALL_BOX_SCORE = "basketball_box_score" | |
| UNKNOWN = "unknown" | |
| class ImportStatus(str, Enum): | |
| UPLOADED = "uploaded" | |
| PROCESSING = "processing" | |
| PARSED = "parsed" | |
| NEEDS_REVIEW = "needs_review" | |
| FINALIZED = "finalized" | |
| PARTIAL_SUCCESS = "partial_success" | |
| FAILED = "failed" | |
| class RowType(str, Enum): | |
| STARTER_HEADER = "starter_header" | |
| STARTER_PLAYER = "starter_player" | |
| BENCH_HEADER = "bench_header" | |
| BENCH_PLAYER = "bench_player" | |
| TOTALS_ROW = "totals_row" | |
| TEAM_SUMMARY_ROW = "team_summary_row" | |
| NOISE_ROW = "noise_row" | |
| class MatchType(str, Enum): | |
| EXACT_FULL_NAME = "exact_full_name" | |
| NORMALIZED_EXACT = "normalized_exact" | |
| JERSEY_AND_NAME = "jersey_and_name" | |
| FUZZY = "fuzzy" | |
| UNMATCHED = "unmatched" | |
| class ReviewIssueType(str, Enum): | |
| UNMATCHED_PLAYER = "unmatched_player" | |
| LOW_CONFIDENCE_MATCH = "low_confidence_match" | |
| IMPOSSIBLE_NUMERIC_TOTALS = "impossible_numeric_totals" | |
| MALFORMED_MINUTES = "malformed_minutes" | |
| INVALID_PERCENTAGES = "invalid_percentages" | |
| MISSING_TEAM_TOTALS = "missing_team_totals" | |
| SUMMARY_STAT_INCONSISTENCY = "summary_stat_inconsistency" | |
| EXTRACTION_ERROR = "extraction_error" | |
| class ReviewSeverity(str, Enum): | |
| INFO = "info" | |
| WARNING = "warning" | |
| ERROR = "error" | |
| BLOCKER = "blocker" | |
| class ResolutionStatus(str, Enum): | |
| PENDING = "pending" | |
| RESOLVED = "resolved" | |
| IGNORED = "ignored" | |