match_semantic.mojo (1115B)
1 from hyf_core.domain.eligibility import ( 2 ConstraintAssessment, 3 constraint_assessment, 4 ) 5 6 7 def evidence_sufficient(evidence_count: Int, required: Int) -> Bool: 8 return evidence_count >= required 9 10 11 def gated_semantic_suitability( 12 score: Int, evidence_count: Int, required_evidence: Int 13 ) raises -> ConstraintAssessment: 14 if not evidence_sufficient(evidence_count, required_evidence): 15 return constraint_assessment( 16 "suitability", "unknown", True, "evidence_insufficient" 17 ) 18 return constraint_assessment( 19 "suitability", "pass", True, "evidence_sufficient" 20 ) 21 22 23 def unknown_evidence_is_midpoint_score() -> Bool: 24 return False 25 26 27 from hyf_assist.evaluator import TypedAnswer, normalize_score 28 29 30 def culinary_use_score( 31 answer: TypedAnswer, 32 levels: Int, 33 evidence_count: Int, 34 required_evidence: Int, 35 ) raises -> Float64: 36 if not evidence_sufficient(evidence_count, required_evidence): 37 raise Error("evidence_insufficient") 38 return normalize_score(answer, levels) 39 40 41 def culinary_score_affects_feasibility() -> Bool: 42 return False