Skip to content

v1.5.16 Release Notes

Release date: 2026-06-23

v1.5.16 is an architecture and scientific-safety hardening release. It keeps the current physiology, AI, reporting, and hardware work intact while making the SDK boundaries stricter and easier to maintain.

Added

Architecture hardening plan

A new maintainer-facing hardening document explains the target layering, dependency rules, known risk areas, and safe refactor strategy:

  • docs/ARCHITECTURE_HARDENING.md

Architecture boundary check

A new CI/dev guard checks that lower layers do not start importing higher-level systems such as CLI, reporting, research training, hardware runtimes, or visualization:

python3 tools/ci/check_architecture_boundaries.py

The quick developer check now runs this guard before targeted tests.

Numeric authority and formula documentation

The release adds explicit documentation and code boundaries for deterministic numeric authority:

  • formula registry documentation
  • numeric-authority documentation
  • deterministic AI dosing tests
  • AI insight tests that separate explanation from calculation

The intended rule is: AI may explain and summarize, but deterministic SDK code owns formulas, dose calculations, safety gates, and reportable numeric outputs.

Physiology and predictor hardening artifacts

This release includes additional physiology/predictor support around calibration, PINN-style glucose prediction, checkpoint safety, and deterministic predictor behavior.

Changed

Clinical metrics moved to a dependency-light core contract

Clinical metrics now live in iints.core.clinical_metrics, so core/data/validation code can compute TIR, GMI, CV, LBGI, and HBGI without importing the reporting/analysis layer.

iints.analysis.clinical_metrics remains as a compatibility wrapper for existing users.

Experimental research controllers are lazy-loaded

The experimental imitation and neural controllers no longer import research training helpers at module import time. They load optional research code only when those experimental controllers are constructed.

This keeps minimal SDK imports lighter and protects the deterministic core from accidental optional-stack coupling.

Reporting and XAI paths hardened

The staged release also carries the current reporting/XAI refinements, including AGP-style output improvements and explainable-event boundaries for simulation reporting.

Verification

python3 tools/ci/check_architecture_boundaries.py
# Architecture boundary checks passed.

python3 -m pytest \
  tests/test_ci_governance.py \
  tests/regression/test_metrics_regression.py \
  tests/data/test_realism_validator.py \
  tests/algorithm/test_battle_runner.py \
  tests/algorithm/test_lstm_determinism.py \
  tests/ai/test_numeric_authority_contract.py \
  -q
# 19 passed

python3 -m pytest \
  tests/test_ci_governance.py \
  tests/regression/test_metrics_regression.py \
  tests/data/test_realism_validator.py \
  tests/data/test_adapter_benchmark.py \
  tests/algorithm/test_battle_runner.py \
  tests/algorithm/test_lstm_determinism.py \
  tests/analysis/test_explainable_ai_boundary.py \
  tests/ai/test_numeric_authority_contract.py \
  tests/ai/test_insights.py \
  tests/core/test_formula_registry.py \
  tests/core/test_patient_physiology_regression.py \
  tests/core/test_predictor_fail_closed.py \
  tests/core/test_unit_contracts.py \
  tests/research/test_checkpoint_security.py \
  tests/research/test_learning_boundaries.py \
  tests/research/test_physiology_calibration.py \
  tests/research/test_predictor_determinism.py \
  -q
# 48 passed

python3 -m mypy src/iints/
# Success: no issues found in 192 source files

Notes

This is not a clinical validation release. The SDK remains a pre-clinical research and educational simulator, not a medical device and not a treatment system.