Changelog

The full changelog is maintained in the project root at CHANGELOG.md. Key releases are summarised below.

v4.0.0 (Current)

  • Major release for the differentiable predictive free-boundary equilibrium line: SI inputs, general profile bases, smooth axis/X-point extraction, Anderson acceleration, a fully JIT-compiled forward path, cached batched solves, and an implicit-function-theorem adjoint for coil-current gradients.

  • Adds the OMAS/IMAS equilibrium bridge with explicit COCOS auditing and the DIII-D 145419 real-data validation lane.

  • Makes fail-closed input behavior and the multigrid-preconditioned compiled forward path part of the release contract; corrects fine-grid adjoint convergence and refreshes the disruption operating point.

  • Publishes exact wheel/sdist checksums in the GitHub v4.0.0 release while keeping nonlinear GK, full electromagnetic, DREAM kinetic, Aurora/STRAHL, and production MPI/multi-GPU parity fail-closed.

v3.11.0

  • Minor feature release adding control, transport, surrogate, and equilibrium capabilities on top of v3.10.1, with no public API removed (backward compatible).

  • Adds the M-4 safety-shield + constrained-PPO policy, the F-7 TGLF transport surrogate, the M-1 Petri→SNN interlock with proof hash, fastest-first FNO/surrogate-MPC/Fokker-Planck dispatch tiers, the T-4 UQ/OOD cards and T-2 safety traceability matrix (fail-closed drift guards), the F-5 PB-KBM pedestal tier, and the F-1 Solov’ev exact suite.

  • Lands a modular-decomposition pass over oversized modules and a validation-evidence pass; security-bumps pillow/click across the hash-pinned locks.

  • Keeps full-fidelity solver parity gates fail-closed; no blocked claim is promoted, and the F-5 pedestal tier is reported as documented divergence with no parity claim.

v3.10.1

  • Patch release for GitHub Pages publication hardening, pull-request triage, and dependency-maintenance release alignment.

  • Preserves the .nojekyll marker in the Pages artifact and carries the safe CodeQL upload-sarif maintenance update.

  • Publishes a green post-push main state with no open pull requests and no open Dependabot, code-scanning, or secret-scanning alerts before tagging.

  • Keeps full-fidelity solver parity gates fail-closed; no blocked claim is promoted by this patch release.

v3.10.0

  • Runtime-hardening, Studio-federation, generated-manifest, strict-typing, and documentation-alignment release.

  • Adds the scpn_fusion.studio federation API, scpn-emit-studio-manifest CLI, generated Studio manifest, and Studio user guide/tutorial.

  • Expands Sphinx API navigation for Studio, phase bridges, and UI helpers while keeping full-fidelity solver parity gates fail-closed.

  • Carries the 2026-06-25 maintenance pass with green CI, clean dependency/security alerts, and refreshed generated surfaces before tagging.

v3.9.11

  • Documentation, security-lock, and repository-hygiene release that improves the README, project overview, onboarding, API overview, notebook index, Sphinx entry points, GitHub Pages, changelog, and release notes.

  • Documentation dependency lock now resolves bleach to 6.4.0, matching the build lane and addressing the open bleach alerts after GitHub rescans the pushed manifests.

  • Keeps full-fidelity parity fail-closed for external nonlinear GK, electromagnetic, DREAM, Aurora/STRAHL, FreeGS/free-boundary, and distributed GPU/cluster lanes until same-case artifacts and thresholds exist.

v3.9.10

  • Documentation, release-readiness, and FUS-C evidence traceability release that makes the current FUS-C.4, FUS-C.6, and FUS-C.7 local-contract hardening easier to find from README, onboarding, API, benchmark, release, and notebook surfaces.

v3.9.9

  • Documentation, repository-polish, and MIF evidence-coupling release that improved README scanning, onboarding, API orientation, market/application context, notebook guidance, public evidence-boundary navigation, and Faraday/compression sidecar traceability.

  • Optional native C++ compilation remained hardened behind fail-closed source, compiler, environment, and timeout checks.

v3.9.7

  • Phase 5/6 physics port: 69 new modules (impurity transport, disruption chain, GK three-path, JAX solvers, phase dynamics, runaway electrons, pellet injection, VMEC-lite, blob transport, and more)

  • Phase 5/6 control port: free-boundary tracking, EKF state estimator, volt-second manager, RWM feedback, mu-synthesis, detachment/density control

  • GK three-path architecture: native linear eigenvalue solver, quasilinear flux, 5 external GK interfaces, OOD detection, hybrid surrogate validation

  • Full-fidelity campaign: fail-closed GENE/CGYRO/GS2, full EM, DREAM, Aurora/STRAHL, production-decomposition, and FreeGS strict-parity gates with local contracts ready but external same-case parity still blocked

  • FreeGS public examples: native profile-source comparison metrics and finite signed-q sanity are published while strict thresholds, grid convergence, and public coil/vacuum sidecars remain open

  • 3,817 tests tracked across 389 Python test files in the generated public inventory

  • Ruff-only formatting (black eliminated)

v3.1.0

  • TBR realism: Port-coverage (0.80), streaming (0.85), blanket-fill correction factors

  • Greenwald density limit: n_GW = I_p / (pi * a^2); scan skips unphysical points

  • Temperature cap: Hard 25 keV cap with warning emission

  • Q ceiling: Capped at 15 (was unbounded at Q=98)

  • Energy conservation: Per-timestep W_before/W_after diagnostic in transport solver

  • Dashboard auto-flagging: PASS/WARN/FAIL flags + matplotlib plots

  • CI gate hardening: Disruption FPR hard fail (15%), TBR [1.0, 1.4], Q <= 15

  • Issue templates: YAML forms with mandatory physics reference field

  • 24 new tests, 1141 total passing

v3.0.0

  • Rust SNN via PyO3 (PySnnPool, PySnnController)

  • Full-chain Monte Carlo UQ: equilibrium -> transport -> fusion power

  • Shot Replay Streamlit tab with NPZ disruption data overlay

  • FNO turbulence surrogate deprecated (runtime FutureWarning)

v2.1.0

  • GEQDSK expansion (100+ multi-machine equilibria)

  • Sauter bootstrap current model

  • Spitzer resistivity with neoclassical corrections

  • Free-boundary Grad-Shafranov extension

v2.0.0

  • Multigrid V-cycle solver (3-5x faster convergence)

  • Gyro-Bohm + EPED pedestal transport model

  • H-infinity controller (Riccati ARE synthesis)

  • Disruption predictor on 10,000 synthetic + 10 reference shots

  • Real-shot validation gate in CI

v1.0.2

  • GPU acceleration roadmap and gpu_runtime module

  • Full analytical Jacobian mode for inverse reconstruction

  • AMR hierarchy and EPED-like pedestal model in Rust kernel

  • Polynomial chaos UQ module (fusion-ml/pce)

  • Point-wise \(\psi\) RMSE validation on all 8 SPARC GEQDSKs

  • Neural equilibrium rewrite (removed sklearn/pickle dependencies)

  • Multi-regime SPARC-parameterised FNO training

  • Multigrid V-cycle wired into FusionKernel Picard loop

  • Solver method selection API (set_solver_method("sor"|"multigrid"))

  • 3D flux-surface mesh generation (OBJ export + PNG preview)

  • GEQDSK reader/writer with 8-file SPARC validation

  • RMSE dashboard report generation

  • Criterion benchmarks for SOR, inverse, and neural transport

v1.0.1

  • Hardening waves H7 and H8 (184 tasks total)

  • Every unwrap() in Rust workspace replaced with FusionResult<T>

  • Input validation guards on all public API boundaries

  • Scoped RNG isolation for deterministic replay

  • Sensor model guards in diagnostics

  • MPC input validation

v1.0.0

  • Initial public release

  • Grad-Shafranov equilibrium solver (Picard + Red-Black SOR)

  • 1.5D radial transport with IPB98(y,2) scaling

  • Neuro-symbolic compiler (Petri net to SNN pipeline)

  • FNO turbulence suppressor

  • Digital twin with RL-trained MLP policy

  • ML disruption predictor

  • Shattered pellet injection mitigation

  • Blanket neutronics and PWI erosion

  • Synthetic diagnostics and tomography

  • Compact reactor optimiser (MVR-0.96)

  • 10-crate Rust workspace with PyO3 bindings

  • Validation against 8 SPARC GEQDSK files and ITPA H-mode database

  • 6 tutorial Jupyter notebooks

  • Docker support

  • CI/CD pipeline with GitHub Actions