Skip to content

Update the branch with recent changes from main - #51

Merged
qiongL910 merged 16 commits into
CCDIDC-678_validate_DB_recordsfrom
main
Oct 12, 2026
Merged

qiongL910 merged 16 commits into
CCDIDC-678_validate_DB_recordsfrom
main

Conversation

@qiongL910

Copy link
Copy Markdown
Collaborator

This pull request introduces several enhancements and fixes across the model parsing, validation, loader, and workflow orchestration code. The most significant changes are the addition of support for resolving EDP (External Data Properties) terms in model parsing and workflows, improvements to node deletion logic in the loader, and the introduction of a new Prefect deployment for generating Pydantic models. There are also dependency updates and related test adjustments.

Model Parsing and EDP Resolution:

  • Added an if_resolve_edps parameter to the ModelParser class and related workflow functions, enabling optional resolution of EDP terms using the STS service. This allows users to fetch permissible value lists when required. Documentation and usage examples have been updated accordingly. (meval/parser.py, docs/pages/modelparser-usage.md, workflows/prefect/add_uuid_to_files.py, workflows/prefect/upsert_workflow.py, workflows/prefect/validate_submission_against_db.py) [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]

Workflow and Deployment Enhancements:

  • Introduced a new Prefect deployment and flow (get_pydantic_model) that generates a Pydantic model YAML for validation from S3-stored model files, with optional EDP resolution and S3 upload of the result. (prefect.yaml, workflows/prefect/get_pydantic_model.py) [1] [2]

Loader Improvements:

  • Refactored the delete_nodes_by_prop_value method to first list all labels, perform indexed lookups per label, and delete deduplicated nodes in batches, improving performance and correctness. Updated related tests to reflect the new batching and label handling logic. (meval/loader.py, tests/test_loader.py) [1] [2] [3]

Dependency and Compatibility Updates:

  • Upgraded the bento-mdf dependency from version 0.13.3 to 0.13.5 in both pyproject.toml and requirements_python3.13.txt, and updated the project version to 1.2.2. (pyproject.toml, requirements_python3.13.txt) [1] [2] [3]

Minor Cleanups and Test Adjustments:

  • Made minor import cleanups in meval/validator.py and updated a static UUID in a test to reflect new namespace generation logic. (meval/validator.py, tests/test_validator.py) [1] [2] [3]

These changes collectively improve the flexibility, performance, and maintainability of the codebase, especially around model parsing and data loading workflows.

@qiongL910
qiongL910 merged commit f266e1c into CCDIDC-678_validate_DB_records Oct 12, 2026
5 checks passed

This branch was successfully deployed

1 active deployment
github-pages — 50ba2296 Deployed Oct 12, 2026 by bullenc via deploy #29
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