basissetdev handover — 2026-05-22¶
Tip: 330b2fb3 on origin/main (Milestone 1 landed).
Last main sync: b5b6b9ee..fd42c39f (20 commits, clean fast-forward).
Completed — Milestone 1: emit_crystal CRYSTAL14 format fix¶
Commit: 330b2fb3 — fix(basis): emit_crystal format for CRYSTAL14 compatibility
Three format fixes discovered during basis comparison testing on planetx with CRYSTAL14 public 1.0.2:
99 0only at very end of multi-element basis (not after each element)No trailing
ENDfrom emit_crystal (deck template provides it)Scale hardcoded to
0.0(CRYSTAL14 convention)emit_input_inlineusesENDnotENDGEOMafter geometry
Tests: 113 passed, 6 skipped (nlopt/iminuit not on macOS).
Next — Milestone 2: Land the vibe-basis infrastructure¶
All files are on basissetdev branch and need to be reviewed, split into
small landable chunks, and pushed to main:
Known-good, ready to land:¶
vibe-basis/src/vibe_basis/recipes/pob_parity.py— Stage 0 driver (tested, 17 tests)vibe-basis/src/vibe_basis/recipes/remote.py— Remote recipe via vq (tested, 9 tests)vibe-basis/src/vibe_basis/recipes/run_d12.py— Run pre-existing .d12 files (tested, 12 tests)vibe-basis/src/vibe_basis/io/references.py— PT2013 reference energiesvibe-basis/src/vibe_basis/io/library_bridge.py— qc-input-library discoveryvibe-basis/src/vibe_basis/optimize.py— NLopt/scipy/iminuit wrappers (tested, 10 tests)vibe-basis/src/vibe_basis/backends/crystal14_atom.py— Isolated-atom .d12 emittervibe-basis/src/vibe_basis/transports/vq.py— Multi-host support (host=”mars”)vibe-basis/tests/test_pob_parity_recipe.py(17 tests)vibe-basis/tests/test_remote_recipe.py(9 tests)vibe-basis/tests/test_run_d12.py(12 tests)vibe-basis/tests/test_optimize.py(10 tests, 6 skipped)vibe-basis/tests/fixtures/d12/— MgO/CaO/LiF .d12 test fixturesvibe-basis/RECIPE_PATTERNS.md— Recipe conventions docvibe-basis/TUTORIAL.md— Full optimization tutorialdocs/basisset_dev/GOAL4_DESIGN.md— Superseded bannerdocs/basisset_dev/STAGE0_IMPLEMENTATION_PLAN.md— Plan traceabilityscripts/submit_basis_comparison.py— Basis comparison submission script
In vibe-qc (needs vibeqc C++ extension to test):¶
python/vibeqc/basis_optimization/calculators.py— Calculator ABC + CRYSTAL14Calculatorpython/vibeqc/basis_optimization/ld_diagnostics.py— LD penalty via vibe-qc overlappython/vibeqc/basis_optimization/recipes/crystal_objective.py— Objective factoriespython/vibeqc/basis_optimization/recipes/crystal_stage1.py— Stage 1 H atompython/vibeqc/basis_optimization/recipes/crystal_stage2.py— Stage 2 LiHpython/vibeqc/basis_optimization/recipes/crystal_stage3.py— Stage 3 multi-compoundpython/vibeqc/basis_optimization/recipes/objective.py— Calculator-based objectivespython/vibeqc/basis_optimization/recipes/production.py— Production optimizer
Pending: basis comparison run¶
The basis comparison script ran 9/9 pob-TZVP decks on planetx but the energy extraction via grep needs fixing (field 6 vs field 7). The format fix (Milestone 1) makes the decks runnable.
Seg basis parsing needs debugging (only pob decks regenerated).
Blockers¶
None for Milestone 2 (vibe-basis infrastructure) — all tests pass, no C++ rebuild needed.
Gated / deferred¶
VibeQcCalculator — periodic SCF not ready (per REQUIREMENTS-PERIODIC.md) Crystal evaluation raises NotImplementedError; atom evaluation untested.
Stage 3 production run — needs NLopt + iminuit on target machine.
LD diagnostics — needs vibe-qc C++ extension (not testable on macOS).