v0.5.0 — Validation, corrected physics, classroom tooling
Highlights
- Okada vertical-displacement kernel corrected against Okada 1985 Table 2 (4-significant-figure agreement on cases 2 and 3). The previous strike-slip term produced non-physical displacement growing with fault length; found by the new property-based test suite.
- GPU solver path executes for the first time — three stacked latent bugs fixed (missing wgpu backend, storage-buffer limits, sponge-test CFL); 96/96 gpu-feature tests pass on Vulkan, including a new full-physics CPU/GPU parity test.
- Max-field products: fgmax-style peak amplitude, time-of-maximum, and energy-directivity overlays for every run, plus labelled first-arrival isochrones (NOAA travel-time style) with GeoJSON export.
- Kamchatka 2025 M8.8 preset with a real de-tided NDBC DART validation pack (buoys 21416/21419/21415; the bundled 0.844 m peak matches NCTR's published 0.85 m) and per-buoy model-vs-observed RMSE in the DART overlay.
- Five more cited presets: Sanriku 2026, Lisbon 1755, Amorgos 1956, Anak Krakatau 2018, and a 2024 YR4 myth-busting what-if — plus two new guided lessons.
- Teacher mode: lockable classroom settings profiles and a printable worksheet for each of the 7 guided lessons.
- Cesium ion token now stored in the OS keychain;
attenuation_curveanddiagnostics_bundleIPCs; keyboard-only e2e coverage; supply-chain fixes (quick-xml/crossbeam RustSec advisories cleared, DOMPurify floor gate).
Installers are unsigned (code-signing credentials pending). Verify downloads with the SHA256 checksums in the release assets section of docs/release/CODESIGNING.md.
Full details in CHANGELOG.md.