Skip to content

feat: add XRD workbenches with Jev multiphase screening - #285

Open
drkapjs wants to merge 2 commits into
mainfrom
codex/xrd-workbench-jev
Open

drkapjs wants to merge 2 commits into
mainfrom
codex/xrd-workbench-jev

Conversation

@drkapjs

@drkapjs drkapjs commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Summary

Add persistent XRD workbenches to MC so users can import an experimental spectrum, search local reference databases, run bounded Jev multiphase screening, and jointly refine selected combinations without leaving the application. Opening another XRD workbench creates an independent tab and workspace.

  • Add the tab-bar launchpad and a theme-aware, draggable spectrum/structure window that reuses MC's existing crystal renderer in read-only XRD mode.
  • Port the OAW XRD scientific adapters, bounded numerical evaluator, history/provenance journals, and TypeSafe/Jev ADD/SUBMIT controller. Browser actions and native MC agent tools use the same execution owner.
  • Preserve request identities, immutable inputs, cloud-request reservations, cancellation and interrupted-run records. Add Windows atomic-commit retries for briefly locked state files; retries do not repeat scientific or cloud operations.
  • Fix the joint-review request contract, retained candidate pools, persisted run settings, dialog geometry, import-hint contrast, and NumPy 2.x integration compatibility.
  • Keep upstream engine provenance and MIT license. Exclude local credentials, databases, experimental files, audit logs and unrelated paper attachments.

Validation

  • Rebased integration onto current main (e509fb9, v2.25.0).
  • XRD Python suites: 96 passed, including scientific synthetic-mixture recovery, Jev protocol/cancellation, HTTP contracts and transient/persistent Windows destination locks.
  • Frontend Node suites: 217 passed.
  • Clean frontend dependency installation and Vite production build passed.
  • git diff --check origin/main HEAD passed (vendored scientific-source formatting retained via path-scoped attributes).
  • Local browser acceptance: a 27-candidate COD pool completed 24 distinct Jev evaluations, then the highest search-score combination completed a 20-iteration joint review. Spectrum and crystal rendering were verified in MC's side-panel UI.

Scope and setup

This version supports local mode; XRD HTTP routes reject server mode. Configure MATCREATOR_XRD_PYTHON for the scientific environment and optionally OAW_XRD_ROOT for an existing QualX installation. Users supply their own COD database and Jev credential. See src/matcreator/xrd/README.md and the synthetic API smoke script for setup and reproducible checks.

The real-data review completed with converged=false. Search score and low residual do not establish phase identity, purity or mass fractions; the highest quick-search score is not guaranteed to give the lowest joint-refinement residual. The validation above is software acceptance, not a scientific phase assignment.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant