Repository navigation
Add interface construction, DFT preparation, and research containers - #2
Conversation
There was a problem hiding this comment.
Sorry @ShaneLogic, your pull request is larger than the review limit of 150,000 diff characters
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7567f71969
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| zsl = ZSLGenerator( | ||
| max_area=float(max_area), | ||
| max_length_tol=float(max_length_tol), | ||
| max_angle_tol=float(max_angle_tol), | ||
| bidirectional=bool(bidirectional), | ||
| ) |
There was a problem hiding this comment.
Restore legacy pymatgen compatibility
For installations using an older pymatgen release still allowed by pyproject.toml (pymatgen>=2022.0.0), these keyword arguments are unsupported; the existing build_heterojunctions/interface_builder.py explicitly handles that TypeError with a ZSLGenerator(max_area=...) fallback. This constructor runs before either new endpoint can perform matching, so termination scans fail with HTTP 500 and interface builds return a failure instead of producing candidates. Retain the compatibility fallback here (and in the duplicate constructor below) or raise the declared pymatgen minimum version.
Useful? React with 👍 / 👎.
Adds coherent substrate/film interface construction and downloadable CP2K/SLURM job bundles to the web workflow. Fixes termination ordering, preserves site metadata during geometry transforms, retains fixed-atom constraints in CP2K inputs, and reports preparation failures correctly. The structure builder now fits mobile viewports.
Provides a hash-locked Linux ARM64 CPU research image with InterfaceML, JupyterLab, and a shared persistent workspace. Fixes the package build backend, includes the DFT templates in distributions, and enables CI for
develandmain.Repository-wide Ruff and formatting checks now pass. The cleanup preserves optional dependency loading and utility exports, makes validation exception chains explicit, and tightens two I/O exception assertions. The configured lint rules remain enabled.
Validation
ruff check interfaceml/ tests/passes with zero findings; the previous version had 355.ruff format --check interfaceml/ tests/passes for all 42 Python files.Limits