hyf

Context-aware query service for Radroots
git clone https://radroots.dev/git/hyf.git
Log | Files | Refs | README | LICENSE

commit 21aec6c5dbbc7a0fd48f503b7858d9094dbf3280
parent f60e5cbf78be22df7275c165520882789634fd54
Author: triesap <tyson@radroots.org>
Date:   Mon, 21 Sep 2026 13:53:31 +0000

core: implement grade and required-attribute checks

Diffstat:
Msrc/hyf_application/match_checks.mojo | 23+++++++++++++++++++++++
Mtests/test_application.mojo | 17+++++++++++++++++
2 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/src/hyf_application/match_checks.mojo b/src/hyf_application/match_checks.mojo @@ -24,3 +24,26 @@ def check_product( def semantic_score_can_rescue_product() -> Bool: return False + + +def check_required_attributes( + required: List[String], verified: List[String] +) raises -> ConstraintAssessment: + if len(required) == 0: + return constraint_assessment( + "attribute", "pass", True, "attribute_optional" + ) + for attribute in required: + var found = False + for known in verified: + if known == attribute: + found = True + if not found: + return constraint_assessment( + "attribute", "unknown", True, "attribute_unverified" + ) + return constraint_assessment("attribute", "pass", True, "attribute_verified") + + +def model_confidence_verifies_certification() -> Bool: + return False diff --git a/tests/test_application.mojo b/tests/test_application.mojo @@ -412,3 +412,20 @@ def test_product_and_substitution_check() raises: var unknown = check_product(unresolved_product("mystery"), roma, False) assert_equal(unknown.result, "unknown") assert_true(not semantic_score_can_rescue_product()) + + +from hyf_application.match_checks import ( + check_required_attributes, + model_confidence_verifies_certification, +) + + +def test_grade_and_required_attribute_checks() raises: + var required = List[String]() + required.append("organic") + var verified = List[String]() + verified.append("organic") + assert_equal(check_required_attributes(required, verified).result, "pass") + assert_equal(check_required_attributes(required, List[String]()).result, "unknown") + assert_equal(check_required_attributes(List[String](), verified).result, "pass") + assert_true(not model_confidence_verifies_certification())