Skip to content

Consolidate GOLR biolink snapshots into single file#3307

Merged
kevinschaper merged 4 commits into
mainfrom
fix/reduce-golr-snapshots
Mar 20, 2026
Merged

Consolidate GOLR biolink snapshots into single file#3307
kevinschaper merged 4 commits into
mainfrom
fix/reduce-golr-snapshots

Conversation

@amc-corey-cox

@amc-corey-cox amc-corey-cox commented Mar 20, 2026

Copy link
Copy Markdown
Contributor

Partial fix for #3305

Summary

GOLR snapshot directories stored one YAML file per class, causing generator or model changes to produce massive PR diffs. This consolidates them into single concatenated files with # --- filename.yaml --- separators.

Location Before After
biolink model test 236 files 1 file
gen-golr script test 22 files 1 file
Total snapshot files in test suite 500 241

Same coverage, same content, reviewable diffs.

Test plan

  • test_biolink_golr passes against generated snapshot
  • test_metamodel_valid_call passes against generated snapshot
  • Snapshot regeneration produces identical output

@codecov

codecov Bot commented Mar 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.89%. Comparing base (4636660) to head (d4fd8b0).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3307      +/-   ##
==========================================
+ Coverage   80.25%   83.89%   +3.64%     
==========================================
  Files         150      150              
  Lines       17484    17484              
  Branches     3642     3642              
==========================================
+ Hits        14032    14669     +637     
+ Misses       2661     1977     -684     
- Partials      791      838      +47     
Flag Coverage Δ
linkml 80.25% <ø> (ø)
runtime 80.25% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@amc-corey-cox amc-corey-cox requested a review from Copilot March 20, 2026 17:27

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Consolidates GOLR Biolink snapshot outputs to reduce churn and make snapshot diffs reviewable (partial fix for #3305), replacing many per-class YAML snapshot files with fewer combined snapshot artifacts.

Changes:

  • Removes per-class GOLR snapshot YAMLs under tests/linkml/test_biolink_model/__snapshots__/golr/biolink/ as part of moving to consolidated snapshots.
  • Reduces snapshot file-count to avoid massive diffs when generator/model changes occur.

Reviewed changes

Copilot reviewed 141 out of 262 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/linkml/test_biolink_model/snapshots/golr/biolink/macromolecular_complex_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/log_odds_analysis_result_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/life_stage_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/invertebrate_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/individual_organism_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/human_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/hospitalization_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/haplotype_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/gross_anatomical_structure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/geographic_location_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/geographic_location_at_time_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/geographic_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/genotypic_sex_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/genotype_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/genomic_background_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/genome_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/genetic_inheritance_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/gene_family_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/gene_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/fungus_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/food_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/food_additive_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/exon_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/evidence_type_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/event_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/environmental_process_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/environmental_food_contaminant_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/environmental_feature_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/environmental_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/drug_to_gene_interaction_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/drug_label_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/drug_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/drug_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/disease_or_phenotypic_feature_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/disease_or_phenotypic_feature_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/disease_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/diagnostic_aid_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/device_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/dataset_version_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/dataset_summary_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/dataset_distribution_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/dataset_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/confidence_level_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/concept_count_analysis_result_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/complex_molecular_mixture_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/complex_chemical_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/common_data_element_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/cohort_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/coding_sequence_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_trial_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_modifier_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_measurement_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_intervention_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_finding_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_entity_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_course_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/clinical_attribute_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/chi_squared_analysis_result_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/chemical_role_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/chemical_mixture_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/chemical_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/chemical_entity_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/cellular_organism_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/cellular_component_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/cell_line_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/cell_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/case_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/book_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/biotic_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/biological_sex_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/biological_process_or_activity_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/biological_process_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/behavioral_feature_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/behavioral_exposure_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/behavior_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/bacterium_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/attribute_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/anatomical_entity_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/agent_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/activity_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/accessible_dna_region_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/RNA_product_isoform_config.yaml Per-class snapshot removed in favor of consolidated snapshot
tests/linkml/test_biolink_model/snapshots/golr/biolink/RNA_product_config.yaml Per-class snapshot removed in favor of consolidated snapshot
Comments suppressed due to low confidence (2)

tests/linkml/test_biolink_model/snapshots/golr/biolink/macromolecular_complex_config.yaml:1

  • These per-class snapshot YAML files appear to be left empty by removing all content rather than being deleted. Empty snapshot files can still be discovered by directory scans and may be parsed/loaded as valid inputs, causing test failures or nondeterministic behavior. Prefer deleting these files entirely (git rm) as part of the consolidation, or replace their contents with an explicit, machine-detectable stub (e.g., a single YAML comment) that the snapshot loader ignores.
    tests/linkml/test_biolink_model/snapshots/golr/biolink/log_odds_analysis_result_config.yaml:1
  • The PR description says snapshots are consolidated into a single concatenated file with filename separators, but the diffs shown here only remove the entire contents of individual snapshot files (leaving them empty). To match the described behavior, the consolidated snapshot file(s) should be added/updated in the repo and the individual per-class files should be removed rather than emptied.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@kevinschaper kevinschaper left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice optimization!

@kevinschaper kevinschaper merged commit fac1bcc into main Mar 20, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants