Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
feat(examples): add initial MATEY harness integration
Summary
This PR adds an initial BaseSim integration for MATEY under
examples/matey/, including a newMATEYHarness, example config files, and tests. It also wires the new harness intoexamples/utils.pysodata.name = "matey"dispatches correctly. Root Python compatibility is widened from>=3.13to>=3.12to align with the integration environment.Motivation & Context
Enable running MATEY workflows from within BaseSim as an example harness path.
Branch commits to
main:e74b1aeMATEY runs now within base-SIM. Performance unclear. git submodule not set up8379344added matey toml config620ed8dadded pyprojectApproach
examples/matey/model.pywith:MATEYHarness(BaseModelHarness)implementation.jvp_reg,ewc_online,kfac_onlinenot yet supported).examples/matey/matey.tomlandexamples/matey/Demo_SOLPS_vit.yamlfor runnable example configuration.examples/matey/pyproject.toml(+ lockfile) to isolate MATEY-specific Python dependencies from BaseSim core.examples/utils.pyfactory dispatch to instantiateMATEYHarnessfordata.name == "matey".tests/test_matey_runsh_harness.pycovering:pyproject.toml/poetry.lockPython requirement to>=3.12,<3.15.Screenshots / Logs (optional)
Executed locally:
API / CLI Changes
examples.matey.model.MATEYHarness(new)examples.matey.model.MateyInputBatch(new)examples.matey.model.MateyTargetBatch(new)examples.utils.get_example(...)now supportscfg.data.name == "matey"examples/matey/matey.tomlexamples/matey/pyproject.tomlrequires-pythonfrom>=3.13,<3.15to>=3.12,<3.15Breaking Changes
Performance (optional)
Security & Privacy
[data].pathexistence checks and dependency import validation)Dependencies
examples/matey/pyproject.toml:einops,h5py,timm,torchinfo,zarr,ruamel.yaml==0.17.32,scipy,scikit-learn,torch_geometric,adios2examples/matey/poetry.lockpyproject.toml,poetry.lock)Testing Plan
poetry run pytest -q tests/test_matey_runsh_harness.pypoetry run ruff check examples/matey/model.py tests/test_matey_runsh_harness.pypoetry run ruff format --check examples/matey/model.py tests/test_matey_runsh_harness.pypoetry run mypy examples/matey/model.py tests/test_matey_runsh_harness.py(currently failing; see logs)Documentation
Checklist
ruff format --check(targeted changed files)ruff check .mypy srcpytest -q(full suite not run)Risk & Rollback Plan
Risk level: Medium.
Primary risks:
Rollback:
examples/matey/*,examples/utils.pydispatch, and root Python requirement changes).Notes for Reviewers
Please review in this order:
examples/matey/model.py(adapter/harness design and failure handling)tests/test_matey_runsh_harness.py(coverage of expected behavior)examples/matey/matey.tomlandexamples/matey/README.md(usability/documentation)Known limitation: this is a phase-1 integration; advanced update modes are intentionally not enabled yet.