• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pyiron / pyiron_workflow_atomistics / 25948904915
90%

Build:
DEFAULT BRANCH: main
Ran 16 May 2026 01:24AM UTC
Jobs 1
Files 46
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 May 2026 01:13AM UTC coverage: 89.994% (+0.007%) from 89.987%
25948904915

push

github

web-flow
fix(free_energy): adapt to calphy 1.5.6 API surface (#48)

PR #46's calphy adapter assumed a `calphy.kernel.{setup,run}_calculation`
namespace that does not exist in calphy 1.5.6. End-to-end exercise of the
adapter (LAMMPS + EAM/GRACE on FCC Cu) surfaced three concrete gaps:

1. **Wrong dispatch namespace.** Real calphy exposes one job class per
   mode/phase — `Solid`, `Liquid`, `Alchemy`, `MeltingTemp`, and
   `routines.CompositionTransformation` — plus `routines.routine_*`
   functions for fe/ts/tscale/pscale/alchemy/composition_scaling.
   `_setup_calculation` now dispatches on `mode` + `reference_phase`
   to pick the right constructor.

2. **Missing simfolder.** `Solid()` and friends immediately write
   `input_file.yaml` to the supplied `simfolder` and raise on a None
   default. `_setup_calculation` now calls `calc.create_folders()`
   first and passes the resulting path through.

3. **Missing `process_averaging_results()` bridge.** calphy 1.5.6's
   `routine_fe` calls `run_averaging()` → `run_integration()` directly,
   leaving `self.lx/ly/lz` as None (populated by
   `process_averaging_results`, only called from the CLI orchestrator).
   `_run_calculation` now inlines the full sequence with the bridge
   step injected, mirroring `routine_fe/ts/tscale/pscale` while
   honoring the run_averaging → process_averaging_results →
   run_integration ordering. `alchemy`, `composition_scaling`, and
   `melting_temperature` continue to delegate to the upstream routines.

Adds five dispatch regression tests using a mock `calphy` module
(`_RecordingJob` records the method-call sequence). The tests verify
the `fe` flow includes `process_averaging_results`, the `ts` flow
appends reversible scaling, `pscale` branches to pressure scaling, and
the constructor materialises the simfolder before the job is built —
all without requiring a real calphy + LAMMPS install in CI.

Co-authored-by: Han Mai <ligerzerof@gmail.com>
Co-authored-by: Claude Opus 4.7 (1M contex... (continued)

2806 of 3118 relevant lines covered (89.99%)

0.9 hits per line

Coverage Regressions

Lines Coverage ∆ File
35
51.44
6.1% physics/free_energy/_calphy_adapter.py
Jobs
ID Job ID Ran Files Coverage
1 25948904915.1 16 May 2026 01:24AM UTC 46
89.99
GitHub Action Run
Source Files on build 25948904915
  • Tree
  • List 46
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25948904915
  • 0974239a on github
  • Prev Build on main (#25945650315)
  • Next Build on main (#25949853691)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc