diff --git a/gitgalaxy/recorders/record_keeper.py b/gitgalaxy/recorders/record_keeper.py index 7ad45769c..a04689b5e 100644 --- a/gitgalaxy/recorders/record_keeper.py +++ b/gitgalaxy/recorders/record_keeper.py @@ -554,8 +554,7 @@ def record_mission( producer_ratio = net_mets.get("producer_ratio", 0.0) ecosystem_role = net_mets.get("ecosystem_role", "Unknown") - class_idx = self.SIGNAL_SCHEMA.index("class_start") if "class_start" in self.SIGNAL_SCHEMA else -1 - class_count = hv[class_idx] if class_idx >= 0 and class_idx < len(hv) else 0 + class_count = len(file_data.get("classes", [])) repo_macro = tel.get("repo_macro_species", "Unknown") repo_z = tel.get("repo_z_score", 0.0) diff --git a/tests/tools_recorders/test_record_keeper.py b/tests/tools_recorders/test_record_keeper.py index eacb39d30..951ac108e 100644 --- a/tests/tools_recorders/test_record_keeper.py +++ b/tests/tools_recorders/test_record_keeper.py @@ -195,6 +195,9 @@ def test_record_keeper_data_insertion(keeper, mock_pipeline_state, tmp_path): assert file_row["ecosystem_role"] == "Core Hub" assert file_row["state_danger"] == 2 # The hit_vector value for danger + assert file_row["class_count"] == 1 + assert file_row["function_count"] == 1 + file_id = file_row["id"] # 3. Verify Class & Function Relationships (Foreign Keys)