Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
a35b6c9
Add gamma_surface preview overlap checks and task-level NaN failure t…
Zikkying Jul 20, 2026
fa1bc36
Add adaptive DFT k-spacing and Bohrium ticket expireIn defaults.
Jul 21, 2026
daefdd3
Merge Letian88/devel-1.3.0 before pushing local apex-flow updates.
Jul 21, 2026
0765d10
Fix gamma CI: accept dpdata LabeledSystem in failed-task detection.
Jul 21, 2026
e449093
Merge pull request #4 from Letian88/devel-1.3.0
Zikkying Jul 21, 2026
4ca1f64
fix(skill): correct ticket API param from expireIn(seconds) to expira…
Jul 23, 2026
e74ee76
test: align ticket URL assertion with expiration(hours) API
Jul 23, 2026
cc012ab
Merge pull request #5 from Letian88/devel-1.3.0
Zikkying Jul 23, 2026
d55b528
fix(gamma): guard slab generation
Zikkying Jul 25, 2026
2661c68
feat(skill): add Gamma and VASP preflight guards
Zikkying Jul 25, 2026
42cf9d3
feat(skill): add execution-specific local profiles
Zikkying Jul 25, 2026
cb3e87c
fix: recognize nested dpdata task energies
Zikkying Jul 25, 2026
eb48c4d
feat: restore VASP finite-temperature workflows
Zikkying Jul 25, 2026
202963a
fix(vasp): stage INCAR for finite-temperature runs
Zikkying Jul 25, 2026
0681cc0
feat(vasp): select executable from generated k-points
Zikkying Jul 25, 2026
2621507
fix(vasp): validate staged MD completion and preserve outputs
Zikkying Jul 27, 2026
e17f16b
fix(gamma): handle disordered parent-lattice slabs
Zikkying Aug 13, 2026
0fa5736
fix(vasp): align property log with backward files
Zikkying Aug 14, 2026
5f4bece
feat: add melting workflow and improve Bohrium VASP support
Zikkying Aug 18, 2026
9f434f7
feat: add OpenAPI Sandbox support and fix critical bugs
Letian88 Aug 19, 2026
ad53356
Merge branch 'devel-1.3.0' into devel-1.3.0
Zikkying Aug 19, 2026
d757626
Merge pull request #6 from Letian88/devel-1.3.0
Zikkying Aug 19, 2026
679b4a1
feat: integrate validated DPA4 phonolammps runtime
Letian88 Aug 21, 2026
a294274
fix: route LAMMPS CPU jobs to CPU-safe image
Aug 21, 2026
7eb1c1e
feat: support confirmed property profiles and image overrides
Aug 21, 2026
09dc720
fix: emit atom maps for DeepMD LAMMPS tasks
Aug 21, 2026
f6f45af
fix: retry transient LAMMPS process kills
Aug 23, 2026
c3eaffe
Merge pull request #7 from Letian88/devel-1.3.0
Zikkying Aug 26, 2026
48a3b19
feat: default GPU workflows to NVIDIA L20
Letian88 Aug 26, 2026
ad9018c
Merge pull request #8 from Letian88/devel-1.3.0
Zikkying Aug 26, 2026
f908c77
feat: add fail-closed DPA4 PT2 runtime support
Zikkying Aug 31, 2026
014b49f
test: run parent lattice regressions in unittest CI
Zikkying Aug 31, 2026
d40edba
chore: prepare APEX 1.3.1 release metadata
Zikkying Oct 13, 2026
02bcb8a
fix: include default configuration templates in release packages
Zikkying Oct 13, 2026
359cdec
fix: reuse APEX image runtime and separate Bohrium machine catalogs
Zikkying Oct 14, 2026
15ae64b
fix: point APEX client defaults to project release image
Zikkying Oct 14, 2026
67c9544
build: reuse Bohrium-hosted base for APEX release image
Zikkying Oct 14, 2026
dfad64b
fix: align sandbox calculator images and refresh authentication by co…
Zikkying Oct 14, 2026
fd9dc5f
build: isolate APEX package in image-specific virtual environment
Zikkying Oct 14, 2026
ec6e00f
release: pin independently snapshotted APEX 1.3.2.post1 image
Zikkying Oct 14, 2026
69e9841
Prepare validated L20 tongqi runtime and fail-closed image qualification
Zikkying Oct 15, 2026
5b30072
Trim tongqi runtime image and enforce publication size budget
Zikkying Oct 15, 2026
54a9ec8
Preserve native libraries while trimming tongqi runtime
Zikkying Oct 15, 2026
873cd2d
Record published slim tongqi image and verified registry size
Zikkying Oct 15, 2026
1d28e06
Enable pinned tongqi release and clarify model, GPU and Shockley cont…
Zikkying Oct 15, 2026
b2eb5f8
Merge pull request #9 from Zikkying/fix/tongqi-release-contract
Zikkying Oct 15, 2026
8f28803
Improve agent parameter generation and failed-step diagnostics
Zikkying Oct 15, 2026
7d867f4
Enable tongqi OpenAPI after real L20 end-to-end acceptance
Zikkying Oct 15, 2026
6d21cb8
Bootstrap older MM runtimes from the verified OpenAPI commit
Zikkying Oct 15, 2026
9214929
Merge pull request #10 from Zikkying/fix/tongqi-openapi-e2e
Zikkying Oct 15, 2026
2d95cbe
Guard unresolved type maps and document the scientific Python contract
Zikkying Oct 15, 2026
117c069
Merge pull request #11 from Zikkying/fix/runtime-skill-guards
Zikkying Oct 15, 2026
cf70c9c
Fix runtime selection and synchronize APEX skill for new CPU and DeeP…
Zikkying Oct 16, 2026
031d0cf
Build APEX CPU runtime from pinned 1.3.4 source
Zikkying Oct 16, 2026
ce5b1d1
Qualify general L20 runtime and build CPU image offline with phonon d…
Zikkying Oct 16, 2026
c1fd8f1
Record fresh-image CPU gamma and phonon acceptance for 1.3.4
Zikkying Oct 16, 2026
d63d303
Align account fallback images with the updated workflow defaults
Zikkying Oct 16, 2026
0ca10a2
Pin phonoLAMMPS executable paths across sandbox login shells
Zikkying Oct 16, 2026
1125726
Record successful CPU and L20 OpenAPI workflow acceptance
Zikkying Oct 16, 2026
2b569a0
Merge pull request #12 from Zikkying/release/runtime-images-20261016
Zikkying Oct 16, 2026
42b1c5d
docs: synchronize runtime image guidance across APEX skills
Zikkying Oct 16, 2026
aa8ff1e
test: expect current runtime image in exported skill
Zikkying Oct 16, 2026
dd13920
Merge pull request #13 from Zikkying/docs/runtime-image-sync
Zikkying Oct 16, 2026
37a63c4
docs: streamline skill workflow and add indexed debugging guide
Zikkying Oct 16, 2026
bf70154
docs: focus image guide on runtime selection
Zikkying Oct 16, 2026
890953f
Merge pull request #14 from Zikkying/docs/skill-quickstart
Zikkying Oct 16, 2026
4a76b1b
feat(preview): validate Gamma interface composition and fix-xy geometry
Zikkying Oct 16, 2026
a6f20f8
Merge pull request #15 from Zikkying/codex/gamma-preview-checks
Zikkying Oct 16, 2026
043ad7c
docs: run MM preview and preflight in the APEX CPU image
Zikkying Oct 16, 2026
ffb1719
Merge pull request #17 from Zikkying/docs/preflight-runtime
Zikkying Oct 16, 2026
1c28bc8
fix: expose released tongqi runtime status and acceptance evidence
Zikkying Oct 22, 2026
311467c
Merge pull request #18 from Zikkying/fix/profile-status
Zikkying Oct 22, 2026
8fac7d7
docs: condense agent skill to prepare check and collect
Zikkying Oct 22, 2026
7b1f66c
docs: quote skill description metadata
Zikkying Oct 22, 2026
5911199
Merge pull request #19 from Zikkying/docs/skill-short-flow
Zikkying Oct 22, 2026
6b7fdb6
docs: keep runtime skill focused on reusable execution guidance
Zikkying Oct 22, 2026
ea150ac
docs: normalize debug guide ending
Zikkying Oct 22, 2026
27406dc
Merge pull request #20 from Zikkying/docs/generic-skill
Zikkying Oct 22, 2026
c788df7
fix: include cloud execution profile in MM skill exports
Zikkying Oct 22, 2026
7cf2f38
Merge pull request #21 from Zikkying/fix/mm-execution-profile
Zikkying Oct 22, 2026
c1dd42a
docs: document tongqi selection and checkpoint element types
Zikkying Oct 22, 2026
baaaf24
Merge pull request #22 from Zikkying/docs/tongqi-model-selection
Zikkying Oct 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/publish-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
tag:
description: Docker image tag
required: true
default: "1.3.0"
default: "1.3.2.post1"

permissions:
contents: read
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ confs
# Generated MatMaster skill archive
apex-flow.zip

# Large DeePMD checkpoints (fetch with scripts/fetch_models.py; keep frozen *.pb in git)
# Exclude arbitrary DeePMD training/source checkpoints, but keep the one
# authoritative single-task DPA4 model bundled by apex-flow.
apex/skills/apex-flow/models/**/*.pt
!apex/skills/apex-flow/models/DPA4-alloytongqi/model.pt
apex/skills/apex-flow/models/**/*.partial
36 changes: 36 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Local pre-commit checks (no remote hook repos; works behind restricted proxies).
# Install once:
# pip install pre-commit && pre-commit install
repos:
- repo: local
hooks:
- id: check-merge-conflict
name: check merge conflict markers
entry: python3 -c
args:
- |
import pathlib, re, sys
pat = re.compile(r"^(<<<<<<< |>>>>>>> )")
bad = False
for raw in sys.argv[1:]:
path = pathlib.Path(raw)
if not path.is_file():
continue
try:
text = path.read_text(encoding="utf-8", errors="ignore")
except Exception:
continue
for i, line in enumerate(text.splitlines(), 1):
if pat.match(line):
print(f"{path}:{i}: merge conflict marker")
bad = True
raise SystemExit(1 if bad else 0)
language: system
types: [text]

- id: apex-unit-smoke
name: APEX unit smoke (gamma + ticket + failed-result)
entry: bash -c 'cd tests && python3 -m unittest -v test_gamma.TestGamma.test_compute_lower test_skill_scripts.TestGenerateConfigHelpers.test_get_bohrium_ticket_success test_ops.TestTaskStatusHelpers.test_is_failed_task_result_accepts_dict_and_mapping_like'
language: system
pass_filenames: false
types: [python]
Binary file added BCC-HCP_interface_concentration.pdf
Binary file not shown.
21 changes: 20 additions & 1 deletion CHANGELOG-1.3.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ Major additions include:
- Finite-temperature lattice workflow improvements
- Finite-temperature elasticity workflow support and example documentation
- Annealing workflow support for LAMMPS
- Melting-point workflow support for solid-liquid coexistence calculations
- Image-resident DPA4/PT2 runtime support with a fail-closed T4 qualification profile
- Shape-controlled automatic supercell generation
- `req_calc`-based relaxation/property selection for joint workflows
- GUI-side batched submission for large configuration sets
Expand Down Expand Up @@ -74,6 +76,21 @@ Major additions include:
- Added LAMMPS annealing workflow support.
- Improved generated annealing input scripts for heating, cooling, RDF output, and holding stages.

### Melting Point Workflow

- Added a LAMMPS solid-liquid coexistence workflow for estimating melting points across multiple temperatures and replicas.
- Added restart-file staging, interface-axis controls, per-temperature restart validation, and generated skill templates.
- Added input validation and regression coverage for melting-specific temperature, replica, restart, and backend constraints.

### DPA4/PT2 Runtime and Qualification

- Added image-resident DeePMD PT2 model handling so immutable runtime artifacts are not copied into task upload packages.
- Added DPA4-aware LAMMPS input generation, including the required atom maps, runtime plugin auto-loading, and rejection of incompatible legacy plugin commands.
- Added an audited `DPA4-alloytongqi` source checkpoint, container wrapper templates, runtime manifest template, and a reproducible CPU/GPU and phonoLAMMPS benchmark harness.
- Added a single-source DPA4 runtime profile used by generation, recommendation, standalone validation, and submission. The bundled profile remains fail-closed until an immutable image `ref@digest` passes the recorded post-snapshot T4 qualification.
- Restricted the qualified production contract to one MPI rank on one `c4_m15_1 * NVIDIA T4`, with exact image, wrapper, model hash, and dispatcher validation.
- Added complete automatic `type_map` expansion across every resolved structure and every effective LAMMPS `overwrite_interaction`.

### Workflow Selection and Submission

- Added `req_calc`-based workflow selection for relaxation and property calculations.
Expand All @@ -94,6 +111,7 @@ Major additions include:
- `.debug.log`
- `.debug.stdout`
- `.debug.stderr`
- Added bounded retries for transient LAMMPS remote-startup failures, including header-only logs, retry evidence preservation, and explicit retry classification in task status files.

### Reporting

Expand Down Expand Up @@ -126,4 +144,5 @@ Major additions include:
- Added runnable examples for RSS, GammaSurface, and finite-temperature elasticity.
- Added GUI developer documentation.
- Added `monty` to the package dependencies and constrained supported Python versions to `<3.13`.
- Added support for Phonopy v4 in terms of phonon calculation.
- Added Phonopy v4-compatible setup, force-constant, and band-generation fallbacks.
- Expanded the bundled `apex-flow` skill with backend-aware generation and validation for Bohrium, local debug, local cluster, VASP, LAMMPS, DPA4/PT2, melting-point, gamma, and finite-temperature workflows.
60 changes: 60 additions & 0 deletions CHANGELOG-1.3.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# APEX 1.3.1 Changelog

Release date: 2026-10-13

APEX 1.3.1 consolidates workflow, runtime, and validation improvements made
after `1.3.0.post5`. It adds two-phase melting-point calculations, restores
finite-temperature VASP execution, expands cloud execution support, and
hardens LAMMPS, phonon, Gamma, and agent-assisted workflows.

## Highlights

- Added a LAMMPS two-phase coexistence melting-point workflow with restart
transport, replica diagnostics, post-processing, reporting, and bracket
determination.
- Added OpenAPI Sandbox execution support alongside Bohrium and local paths.
- Restored finite-temperature VASP workflows with stage-aware execution,
output validation, failure evidence, and automatic `vasp_gam`/`vasp_std`
selection from generated k-points.
- Integrated the validated DPA4 phonoLAMMPS runtime for GPU workflows while
retaining CPU-safe image routing for CPU potentials.
- Added the bundled single-task DPA4 alloytongqi checkpoint and a fail-closed
immutable PT2 runtime contract with image wrappers and qualification tools.
- Strengthened Gamma and GammaSurface generation, validation, and preview for
difficult and disordered parent structures.
- Expanded the bundled `apex-flow` agent skill with safer preflight checks,
execution profiles, and configuration generation.

## Workflow and Runtime Updates

- Added configurable preparation, conditioning, production, restart, and
replica controls for `melting_point`.
- Added solid-fraction analysis, tidy CSV/JSON outputs, trajectory plots,
task-status evidence, and periodic restart files.
- Updated phonon processing for Phonopy 4 while retaining compatibility with
older force-constant generation paths.
- Removed obsolete explicit `plugin load libdeepmd_lmp.so` commands for the
integrated USER-DEEPMD runtime.
- Added primitive-axis propagation and phonoLAMMPS command improvements.
- Added DeepMD atom maps where required by the DPA4 PT2 runtime.
- Added retries and per-attempt evidence for transient LAMMPS termination,
timeout, and signal-like failures.

## Validation and Configuration

- Added shared Gamma/GammaSurface geometry and parent-lattice mapping helpers.
- Added overlap, atom-count, and geometry guards before Gamma/GammaSurface
submission and preview generation.
- Added multi-structure `type_map` inference and validation, including property
overwrite interactions.
- Added image/machine compatibility checks, CPU/GPU image routing, confirmed
property profiles, image overrides, and model staging validation.
- Added adaptive DFT k-spacing and stronger VASP/ABACUS input preflight checks.
- Corrected Bohrium ticket expiration handling to use hours.

## Compatibility

- Supported Python versions remain 3.10 through 3.12.
- Existing 1.3.0 parameter files remain supported; new workflow and runtime
controls are opt-in unless selected for a validated backend.
- Package and container release version: `1.3.1`.
30 changes: 30 additions & 0 deletions CHANGELOG-1.3.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# APEX 1.3.2

Release date: 2026-10-14

- Generated cloud jobs reuse a working image-bundled APEX 1.3.2 or newer stable
version. Only missing/older versions trigger installation of the pinned
`apex-flow==1.3.2` package. CLI startup failures stop submission.
- Runtime checks and submission use the same Python interpreter; the packaged
`ensure_apex.py` helper travels with `run.sh`.
- Correct the ordinary Bohrium L20 default to `1 * NVIDIA L20_48g` while retaining
the distinct OpenAPI Sandbox SKU `c16_m120_1 * NVIDIA L20`.
- Update the outer client and make/post image to APEX 1.3.2. Preserve the
separate CPU/GPU calculator images and the OpenAPI dispatcher image.
- Align Sandbox ABACUS/VASP calculator and dispatcher image addresses, refresh
Sandbox access-key configuration without using the legacy ticket API, and
respect explicitly selected contexts when merging account defaults.
- Align cloud skill instructions, examples, templates, and regression coverage
with image reuse and the separate machine catalogs.

Existing generated jobs keep their saved scripts and machine settings. Generate
a fresh job directory using the updated skill before resubmitting; preserve
existing task outputs and check the original workflow state first.

## 1.3.2.post1

Use the independently snapshotted `apex-flow:1.3.2-post1` client image in
Bohrium project 397953. The earlier `1.3.2-r1` image reference has an active
platform build task and must not be used as the release runtime. Missing/old
clients bootstrap the pinned 1.3.2.post1 package; working 1.3.2 runtimes remain
compatible and are reused. Runtime functionality is unchanged.
11 changes: 11 additions & 0 deletions CHANGELOG-1.3.4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# APEX 1.3.4

- Use the updated APEX/CPU image for workflow preparation, post-processing and classical LAMMPS, and a separate general DeePMD/L20 image for compatible TensorFlow and PyTorch models.
- Preserve the configured calculator image for phonon and Grüneisen tasks. The dedicated alloytongqi PT2 contract still selects its pinned image and wrappers.
- Validate the preinstalled APEX runtime instead of downloading or upgrading packages at job startup. Regenerate configuration for existing jobs to select the new image.
- Synchronize skill templates, examples, interpreter paths and machine recommendations. MACE, NEP, GAP, RANN and SNAP require an explicit compatible custom image.
- Fix the skill YAML frontmatter so MatMaster can load the updated instructions.

Runtime validation and scientific scope are recorded in `images/runtime-20261016/qualification.json`. Runtime success does not establish convergence or compatibility with every model and GPU.

- Use absolute phonoLAMMPS executable paths for the new images so sandbox login-shell PATH resets cannot break phonon/Gruneisen submission.
6 changes: 6 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
include LICENSE
include README.md
include CHANGELOG-1.3.0.md
include CHANGELOG-1.3.1.md
include CHANGELOG-1.3.2.md
recursive-include apex/default_config *
Loading
Loading