v1.5.30¶
Release date: 2026-07-18
Summary¶
This release strengthens scientific interpretation boundaries, desktop reliability, the Rust/Tauri update path, dependency security, and the documentation learning experience.
The most important scientific correction is that AlphaFold pLDDT is now treated only as local structure-prediction confidence. It is no longer converted into mutation severity, pathogenicity, or a physiological insulin-sensitivity scalar. Physiological comparison runs require an explicit functional assumption and label that assumption in their output.
Scientific Integrity¶
- Unknown variants are not physiologically simulated without explicit functional evidence or a caller-supplied scenario assumption.
- Built-in INSR examples are labelled illustrative retained-function assumptions rather than clinical estimates.
- Genomics and tissue-sensitivity comparison arms use the same configurable random seed.
- Tissue sensitivity inputs are bounded to the supported
0.0to1.0research range. - Enabled Bergman-only stem-cell parameters are rejected for patient models that do not implement that mechanism; disabled zero defaults remain portable.
Desktop Reliability¶
- The Qt Scenario Builder now emits patient and stress-event payloads that satisfy the SDK's public validation schemas.
- Custom runs use the same worker lifecycle and error handling as curated desktop workflows.
- Redirected terminal streams are restored when the Qt window closes.
- Structural biology, PAE, genomics, and tissue-stressor outputs follow the selected desktop workspace.
- Run comparison accepts the SDK's current
time_minutesandglucose_actual_mgdlcolumns while retaining legacy-column compatibility. - Windows update commands use native quoting.
Rust And Tauri¶
- The Rust updater selects a Python interpreter only after confirming that both
iintsandiints_desktopare installed. - npm and Cargo lockfiles make frontend and Rust dependency resolution reproducible.
npm run buildcreates the native executable without requiring installer tooling;npm run bundleremains available for explicit platform bundles.- Rust formatting, linting, compilation, tests, frontend checks, and the native executable build are release gates.
Documentation¶
- The documentation now follows task-oriented top-level sections: Learn, Use, Research, Hardware, Develop, Reference, and Releases.
- New Learning Path, Core Concepts, and Run Outputs pages provide a shorter route from installation to reproducible studies.
- Installation, quickstart, desktop, workflows, and documentation-index pages were rewritten for external users.
- Strict MkDocs validation is enabled locally and in GitHub Actions.
Dependencies¶
- Security-sensitive dependency floors were refreshed for cryptography, Starlette, Pillow, aiohttp, ONNX, Torch, and setuptools.
- Documentation dependencies are bounded to compatible MkDocs major versions.
- The Python lockfile was regenerated and synchronized.
Verification¶
The release was gated by:
- full Python test suite
- flake8 and mypy
- architecture-boundary checks
- strict MkDocs build and technical manual build
- source and wheel build
- dependency vulnerability audit
- Qt desktop runtime and packaged smoke tests
- Cargo check, test, clippy, and fmt
- npm static check, audit, and Tauri native executable build
Release-gate outcomes:
- Python:
716 passed, 2 skipped - architecture boundaries: passed
- flake8: passed
- mypy:
Success: no issues found in 204 source files - MkDocs strict build: passed
- technical manual PDF: built successfully
- Python distribution: wheel and source distribution built; wheel metadata reports
1.5.30 - clean wheel smoke: version, genomics guard, and updater import checks passed
- Qt:
52 passedtargeted desktop/scientific-integrity tests andQt desktop smoke OK - Rust: check, clippy, fmt, and
3 passedunit tests - Tauri: frontend static check and native release executable build passed
- dependency audits: no known Python runtime or npm vulnerabilities found
Safety¶
IINTS-AF remains a pre-clinical research and educational SDK. It is not a medical device and must not be used for diagnosis, insulin dosing, glucagon dosing, treatment decisions, or real-time patient care.