v1.5.34¶
Release v1.5.34 strengthens command discovery, MDMP cryptographic accuracy, and version maintenance across the CLI and Rust/Tauri research workbench.
Version Control¶
- Adds
iints versionwith human-readable and JSON output. - Compares releases with PEP 440 semantics instead of string comparison.
- Checks the Python SDK against the stable PyPI channel and the desktop app against versioned
tauri-beta-v*GitHub releases. - Uses a six-hour local cache, a bounded network timeout, and an explicit offline/unknown state.
- Reports the Python executable, CLI path, distribution location, active source version, and package-metadata mismatch warnings.
- Adds
iints update --check,iints version --fail-if-outdated, and--fail-if-unknownwith distinct automation exit codes. - Adds
--fail-if-mismatchand exit code 4 for distribution/source disagreement. - Removes the updater's silent fallback from a stable PyPI release to the unreleased GitHub
mainbranch. - Pins the verified stable version during PyPI updates and verifies the installed version afterward.
- Verifies package metadata, imported source version, and module location after an update; detected mismatches trigger a forced reinstall instead of an "already current" shortcut.
Command Architecture¶
- Adds a maintained seven-domain
iints maprather than duplicating every generated option. - Adds
iints menuas a navigation-only interface that never invokes a Typer handler with unresolved option defaults. - Keeps existing short preset names canonical and exposes longer descriptive names as compatibility aliases.
- Restores the established
iints guidestarter-demo behavior while retaining command navigation as a separate choice. - Promotes
iints mdmpto a visible first-class namespace while retaining the established data-certification commands.
MDMP¶
- Uses ChaCha20-Poly1305 authenticated encryption for local files.
- Uses scrypt with a random per-envelope salt for text passphrases; exact 32-byte raw keys remain supported.
- Adds a versioned encryption envelope, authenticated-context hashing, malformed-envelope checks, atomic writes, and overwrite protection.
- Keeps read compatibility for pre-v2 envelopes without using the legacy deterministic KDF for new files.
- Uses Ed25519 for signed data passports and explicitly refuses the legacy
--pqcflag. - Adds signature format v2 so signer identity metadata and signing time are included in the authenticated content; existing v1 cards remain readable.
- Refuses weak new file-encryption passphrases shorter than 12 UTF-8 bytes while retaining decryption compatibility.
- Removes the incorrect claim that a SHA-512 commitment is an ML-DSA/post-quantum signature.
- Documents that encryption protects local files at rest and does not replace TLS, authorization, key custody, or host security.
Desktop Beta 0.2.8¶
- Shows installed and latest versions for the Rust/Tauri app and Python SDK separately.
- Distinguishes
current,update available,ahead,development, andnot verifiedstates. - Refreshes version metadata on demand while using cached data during normal startup.
- Opens the version-specific newest desktop release when it can be verified.
- Warns when Python package metadata and active SDK source code disagree.
- Requires desktop bridge API 3, so the updated app cannot silently use an older Python engine that lacks the new version-status contract.
Presets And Benchmarks¶
- Preserves existing preset names as canonical public identifiers and accepts the longer descriptive names as aliases.
- Rewords preset descriptions to avoid implying patient-specific or clinical calibration.
- Retains the established golden-benchmark thresholds rather than weakening acceptance ranges to accommodate one controller.
Compatibility¶
- Python:
3.10through3.14. - Desktop beta:
0.2.8. - Existing MDMP v1 encrypted envelopes remain readable; new writes use envelope v2.
- Existing preset names and the new descriptive aliases are both accepted.
IINTS-AF remains a research and educational system. This release does not provide clinical validation, regulatory certification, or treatment functionality.