iints-sdk-python35 1.5.31__tar.gz → 1.5.32__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/CITATION.cff +2 -2
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/PKG-INFO +22 -5
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/README.md +21 -4
- iints_sdk_python35-1.5.32/docs/APP_INSTALL.md +104 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DESKTOP_APP.md +2 -0
- iints_sdk_python35-1.5.32/docs/RESEARCH_WORKBENCH_GUIDE.md +294 -0
- iints_sdk_python35-1.5.32/docs/TAURI_DESKTOP.md +169 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/UPDATING.md +1 -1
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/pyproject.toml +1 -1
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/__init__.py +1 -1
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/baseline.py +10 -2
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/cli/cli.py +2 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/highlevel.py +4 -2
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/structure.py +1 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/molecules.py +29 -17
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/tauri_bridge.py +82 -3
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_sdk_python35.egg-info/PKG-INFO +22 -5
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_sdk_python35.egg-info/SOURCES.txt +1 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_desktop_app.py +157 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_tauri_bridge.py +52 -2
- iints_sdk_python35-1.5.31/docs/APP_INSTALL.md +0 -129
- iints_sdk_python35-1.5.31/docs/TAURI_DESKTOP.md +0 -126
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/LICENSE +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/LICENSE-MIT-IINTS-LEGACY +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/MANIFEST.in +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/NOTICE +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/ACADEMIC_RESEARCH_WORKBENCH.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/AI_ASSISTANT.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/AI_RED_TEAM_AUDITOR.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/ALL_SCIENTIFIC_THEORIES.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/API_REFERENCE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/ARCHITECTURE_HARDENING.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/ARCHITECTURE_OVERVIEW.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/ARDUINO_UNO_Q.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/BOOTH_DEMO.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/CLI_CHEATSHEET.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/COMMAND_REFERENCE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/COMPREHENSIVE_GUIDE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/CONTRIBUTING_SAFELY.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/CORE_CONCEPTS.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/CROSS_SCALE_REFERENCE_LABS.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DESKTOP_SIGNING.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DEVELOPER_PORTAL.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DIABETES_RESEARCH_DATASETS.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DIGITAL_PATIENT_PI.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DIGITAL_TWIN_BIOLOGY.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DOCUMENTATION_INDEX.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/DUAL_REPO_WORKFLOW.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/EDGE_HARDWARE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/EDGE_REMOTE_DEPLOY.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/EU_AI_PACT_GOVERNANCE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/EVIDENCE_BASE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/EVIDENCE_BUNDLE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/FORMULA_REGISTRY.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/FPGA_MODE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/GETTING_STARTED.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/GLUCOSE_MODEL.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/HARDWARE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/HYPOGLYCEMIA_SCIENCE_MODEL.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/INSTALLATION.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/JETSON_AUTOML_FACTORY.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/JETSON_ENDURANCE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/LEARNING_PATH.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/LOCAL_AI_RESEARCH.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/LOCAL_AI_SAFETY_GATES.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MAINTAINER_GUIDE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MAKERFAIRE_PI.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MAKERFAIRE_PI_CHECKLIST.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MDMP.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MDMP_FULL_GUIDE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MDMP_QUICKSTART.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MECHANISTIC_REFERENCE_MODELS.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MEDTRONIC_CARELINK_LIVE_BRIDGE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MEDTRONIC_DIRECT_PUMP_TRANSPORT.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/MISTRAL_MODEL_MIGRATION.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/NUMERIC_AUTHORITY.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/OBSIDIAN_PUBLIC_VAULT.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/OFFICIAL_MANUAL.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/PAPER_TECHNICAL_DOSSIER.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/PHYSIOLOGY_REFERENCE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/PICO_PUMP_LAB.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/PLAIN_LANGUAGE_GUIDE.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/PROJECT_BOUNDARIES.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/PUBLIC_DOCUMENTATION.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/PUBLIC_RELEASE_CHECKLIST.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/QUICKSTART.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/REAL_DATA_REALISM.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/REFERENCE_OVERVIEW.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/RUN_OUTPUTS.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/SCIENTIFIC_WORKFLOW.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/SOURCE_LIBRARY.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/STUDY_ANALYSIS.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/TECHNICAL_README.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/THEORY_STRESS_LAB.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/TROUBLESHOOTING.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/USER_GUIDE_MAP.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/WORKFLOWS.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/comparison_interpretation.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/emulation_references.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/docs/index.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/setup.cfg +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/assistant.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/backends/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/backends/base.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/backends/mistral_api.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/backends/ollama.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/cli.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/deterministic.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/insights.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/mdmp_guard.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/model_catalog.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/prepare.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/ai/prompts.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/algorithm_xray.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/booth_demo.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/carelink_workbench.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/clinical_benchmark.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/clinical_metrics.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/clinical_tir_analyzer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/diabetes_metrics.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/edge_efficiency.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/edge_performance_monitor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/eucys_results.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/evidence_bundle.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/explainability.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/explainable_ai.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/hardware_benchmark.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/metrics.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/population_report.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/poster.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/reporting.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/run_quality.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/safety_index.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/safety_visualizer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/sensor_filtering.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/study_analysis.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/study_engine.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/study_experiment.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/study_poster.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/study_protocol.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/analysis/validator.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/api/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/api/base_algorithm.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/api/registry.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/api/template_algorithm.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/assets/iints_logo.png +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/cli/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/cli/patient_cli.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/battle_runner.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/clinical_baseline.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/correction_bolus.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/discovery.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/fixed_basal_bolus.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/hybrid_algorithm.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/imitation_controller.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/lstm_algorithm.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/mock_algorithms.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/mpc_controller.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/neural_controller.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/pid_controller.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/algorithms/standard_pump_algo.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/clinical_metrics.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/device.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/device_manager.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/devices/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/devices/models.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/digital_twin.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/formula_registry.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/advanced_metabolic_model.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/bergman_model.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/hovorka_model.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/models.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/patient_factory.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/physiology.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/patient/profile.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/physiology_variation.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/safety/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/safety/config.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/safety/input_validator.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/safety/supervisor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/simulation/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/simulation/scenario_parser.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/simulator.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/supervisor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/core/units.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/adapter.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/certify.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/column_mapper.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/contracts/diabetes_cgm_mdmp_contract.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/contracts.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/datasets.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/demo/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/demo/demo_cgm.csv +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/evidence.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/guardians.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/importer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/ingestor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/mdmp_visualizer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/medtronic_live.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/nightscout.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/physiology_residual_profiles.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/quality_checker.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/realism_dashboard.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/realism_governance.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/realism_reference.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/realism_references.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/realism_validator.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/registry.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/research_catalog.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/runner.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/study_corruption.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/synthetic_mirror.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/tidepool.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/universal_parser.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/clinic_safe_baseline.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/clinic_safe_hyper_challenge.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/clinic_safe_hypo_prone.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/clinic_safe_midnight.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/clinic_safe_pizza.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/clinic_safe_stress_meal.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/default_patient.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/patient_559_config.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/reference_azt1d_t1d.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/reference_free_living_t1d.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/data/virtual_patients/reference_hupa_ucm_t1d.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/demo_assets.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/emulation/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/emulation/legacy_base.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/emulation/medtronic_780g.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/emulation/omnipod_5.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/emulation/tandem_controliq.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/governance/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/governance/research_policy.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/jetson/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/jetson/endurance.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/jetson/research_pipeline.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/learning/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/learning/autonomous_optimizer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/learning/learning_system.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/api.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/daemon.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/edge_benchmark.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/edge_ops.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/fpga.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/long_study.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/medtronic_direct.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/pico_pump.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/runtime.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/service_export.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/live_patient/uno_q.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/mdmp/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/mdmp/backend.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/mdmp/eu_ai_pact.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/metrics.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/population/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/population/generator.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/population/runner.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/presets/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/presets/evidence_sources.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/presets/forecast_calibration_profiles.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/presets/golden_benchmark.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/presets/presets.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/presets/safety_contract_default.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/presets/validation_profiles.yaml +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/academic_bundle.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/alphafold_engine.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/anatomy.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/audit.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/binding_evidence.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/calibration_gate.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/cellml_models.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/clinvar_engine.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/config.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/control.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/control_eval.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/copasi_models.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/data_blend.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/dataset.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/evaluation.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/external_models_common.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/fmi_models.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/forecasting.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/genetics.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/genomics_engine.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/glucose_model.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/jetson_hf_trainer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/local_ai.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/local_ai_gate.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/losses.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/mechanistic_models.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/metrics.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/model_registry.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/neural_control.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/pharmacology.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/physiology.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/physiology_calibration.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/predictor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/results_manager.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/stem_cell_optimizer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/stem_cell_transplant.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/research/tissue_stressor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/scenarios/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/scenarios/generator.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/scenarios/study_pack.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/default_algorithm.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/demos/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/demos/live_stage_demo.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/pico_pump/README.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/pico_pump/code.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/pico_pump/serial_protocol.txt +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/scenarios/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/scenarios/chaos_insulin_stacking.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/scenarios/chaos_runaway_ai.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/scenarios/example_scenario.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/scenarios/exercise_stress.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/uno_q/README.md +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/templates/uno_q/iints_supervisor_bridge.ino +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/tools/ai_realism_auditor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/tools/digital_twin_calibrator.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/tools/theory_stress_lab.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/utils/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/utils/academic_artifacts.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/utils/csv_safety.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/utils/plotting.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/utils/run_io.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/utils/url_safety.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/validation/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/validation/golden.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/validation/replay.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/validation/run_doctor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/validation/run_validation.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/validation/safety_contract.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/validation/schemas.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/visualization/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/visualization/cockpit.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints/visualization/uncertainty_cloud.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/app.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/AF-P01275-F1-model_v4.cif +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/AF-P01308-F1-model_v4.cif +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/AF-P06213-F1-model_v6.cif +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/AF-P14672-F1-model_v6.cif +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/AF-P47871-F1-model_v6.cif +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/gcgr_3D.png +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/glucagon_3D.png +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/glut4_3D.png +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/insr_3D.png +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/alphafold/insulin_3D.png +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/app_icon.icns +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/app_icon.ico +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/assets/app_icon.png +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/cocoa_app.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/engine.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/evidence_connectors.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/fetcher.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/launcher.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/local_ai.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/mdmp.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/molecule_viewer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/qt_app.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/render_3dmol.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/results.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/terminal_utils.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_desktop/update.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_sdk_python35.egg-info/dependency_links.txt +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_sdk_python35.egg-info/entry_points.txt +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_sdk_python35.egg-info/requires.txt +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/iints_sdk_python35.egg-info/top_level.txt +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_ai/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_ai/lineage.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/audit.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/bias_hooks.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/bundle.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/certification.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/cli.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/compare.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/conformance.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/contracts.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/crypto.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/data/conformance/vectors/delegation.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/data/conformance/vectors/fingerprint.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/data/conformance/vectors/grading.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/data/conformance/vectors/signing.json +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/delegate.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/diffing.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/drift.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/exceptions.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/fingerprint.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/fingerprint_store.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/hf.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/keys/mdmp_pub_v1.pem +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/llm_provenance.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/migrate.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/policy.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/prov.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/registry.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/runner.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/schema_export.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/synthetic.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/trust.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_core/visualizer.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_flavors/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_integrations/__init__.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_integrations/dvc.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_integrations/mlflow.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/src/mdmp_integrations/wandb.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_bergman.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_ci_governance.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_algorithm_loading.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_booth_demo.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_carelink_workbench.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_cloud_import_security.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_demo_export.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_demo_live.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_edge_runtime.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_expo_tools.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_fpga.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_onboarding.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_patient_runtime.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_poster.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_research_workflows.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_run_summary.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_cli_theory_stress_lab.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_desktop_packaging.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_install_doctor.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_jetson_endurance.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_physiology_variation.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_plugin_system.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_population.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_presets_realism.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_qt_desktop_runtime.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_research_policy.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_research_realism_tools.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_scientific_fidelity.py +0 -0
- {iints_sdk_python35-1.5.31 → iints_sdk_python35-1.5.32}/tests/test_simulator_calibration.py +0 -0
|
@@ -6,8 +6,8 @@ authors:
|
|
|
6
6
|
- family-names: "Bobbaers"
|
|
7
7
|
given-names: "Rune"
|
|
8
8
|
email: "rune.bobbaers@gmail.com"
|
|
9
|
-
version: "1.5.
|
|
10
|
-
date-released: "2026-07-
|
|
9
|
+
version: "1.5.32"
|
|
10
|
+
date-released: "2026-07-23"
|
|
11
11
|
repository-code: "https://github.com/python35/IINTS-SDK"
|
|
12
12
|
url: "https://iints.org"
|
|
13
13
|
license: "Apache-2.0"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: iints-sdk-python35
|
|
3
|
-
Version: 1.5.
|
|
3
|
+
Version: 1.5.32
|
|
4
4
|
Summary: A pre-clinical Edge-AI SDK for diabetes management validation.
|
|
5
5
|
Author-email: Rune Bobbaers <rune.bobbaers@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -133,9 +133,28 @@ IINTS-AF is not a medical device. It must not be used for diagnosis, insulin dos
|
|
|
133
133
|
|
|
134
134
|
- Website: [iints.org](https://iints.org)
|
|
135
135
|
- Documentation: [python35.github.io/IINTS-SDK](https://python35.github.io/IINTS-SDK/)
|
|
136
|
-
-
|
|
136
|
+
- Rust research workbench: [latest beta](https://github.com/python35/IINTS-SDK/releases/tag/tauri-beta-latest)
|
|
137
|
+
- Classic desktop app: [latest Qt beta](https://github.com/python35/IINTS-SDK/releases/tag/desktop-beta-latest)
|
|
137
138
|
|
|
138
|
-
##
|
|
139
|
+
## Rust Research Workbench
|
|
140
|
+
|
|
141
|
+
The new native research workbench uses a Rust/Tauri security boundary around the Python scientific engine. It provides guided simulation workflows, result inspection, reproducibility records, local Ollama review, MDMP evidence tools, and audited research connectors.
|
|
142
|
+
|
|
143
|
+
Current Rust/Tauri beta downloads:
|
|
144
|
+
|
|
145
|
+
| Platform | Download |
|
|
146
|
+
| --- | --- |
|
|
147
|
+
| Windows | [`.exe` installer](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-windows-x64-setup.exe) |
|
|
148
|
+
| macOS | [`.dmg`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-macos.dmg) |
|
|
149
|
+
| Linux | [`.AppImage`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-linux-x64.AppImage) |
|
|
150
|
+
|
|
151
|
+
The beta delegates scientific operations to the IINTS-AF Python engine. On first launch, choose
|
|
152
|
+
**Install Python engine** if the bridge is unavailable; the app creates a private engine and keeps
|
|
153
|
+
its setup visible in a terminal.
|
|
154
|
+
|
|
155
|
+
See the [Tauri workbench documentation](https://python35.github.io/IINTS-SDK/TAURI_DESKTOP/) for architecture, security boundaries, and development instructions.
|
|
156
|
+
|
|
157
|
+
## Classic Desktop App
|
|
139
158
|
|
|
140
159
|
IINTS-AF also has a native Qt desktop app for running demos, reviewing results, certifying data, and using the research workbench without memorising terminal commands. The packaged Windows, macOS, and Linux betas include their Python runtime and supported Python-side research engines.
|
|
141
160
|
|
|
@@ -154,8 +173,6 @@ python -m pip install -U "iints-sdk-python35[desktop-all]"
|
|
|
154
173
|
iints-desktop
|
|
155
174
|
```
|
|
156
175
|
|
|
157
|
-
Experimental next-generation shell: a Tauri + Rust desktop prototype lives in `apps/iints-tauri`. It keeps the Python SDK as the scientific engine while moving the native app boundary into Rust. See `docs/TAURI_DESKTOP.md`.
|
|
158
|
-
|
|
159
176
|
## License
|
|
160
177
|
|
|
161
178
|
Apache-2.0 licensed, with legacy MIT notices where applicable.
|
|
@@ -17,9 +17,28 @@ IINTS-AF is not a medical device. It must not be used for diagnosis, insulin dos
|
|
|
17
17
|
|
|
18
18
|
- Website: [iints.org](https://iints.org)
|
|
19
19
|
- Documentation: [python35.github.io/IINTS-SDK](https://python35.github.io/IINTS-SDK/)
|
|
20
|
-
-
|
|
20
|
+
- Rust research workbench: [latest beta](https://github.com/python35/IINTS-SDK/releases/tag/tauri-beta-latest)
|
|
21
|
+
- Classic desktop app: [latest Qt beta](https://github.com/python35/IINTS-SDK/releases/tag/desktop-beta-latest)
|
|
21
22
|
|
|
22
|
-
##
|
|
23
|
+
## Rust Research Workbench
|
|
24
|
+
|
|
25
|
+
The new native research workbench uses a Rust/Tauri security boundary around the Python scientific engine. It provides guided simulation workflows, result inspection, reproducibility records, local Ollama review, MDMP evidence tools, and audited research connectors.
|
|
26
|
+
|
|
27
|
+
Current Rust/Tauri beta downloads:
|
|
28
|
+
|
|
29
|
+
| Platform | Download |
|
|
30
|
+
| --- | --- |
|
|
31
|
+
| Windows | [`.exe` installer](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-windows-x64-setup.exe) |
|
|
32
|
+
| macOS | [`.dmg`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-macos.dmg) |
|
|
33
|
+
| Linux | [`.AppImage`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-linux-x64.AppImage) |
|
|
34
|
+
|
|
35
|
+
The beta delegates scientific operations to the IINTS-AF Python engine. On first launch, choose
|
|
36
|
+
**Install Python engine** if the bridge is unavailable; the app creates a private engine and keeps
|
|
37
|
+
its setup visible in a terminal.
|
|
38
|
+
|
|
39
|
+
See the [Tauri workbench documentation](https://python35.github.io/IINTS-SDK/TAURI_DESKTOP/) for architecture, security boundaries, and development instructions.
|
|
40
|
+
|
|
41
|
+
## Classic Desktop App
|
|
23
42
|
|
|
24
43
|
IINTS-AF also has a native Qt desktop app for running demos, reviewing results, certifying data, and using the research workbench without memorising terminal commands. The packaged Windows, macOS, and Linux betas include their Python runtime and supported Python-side research engines.
|
|
25
44
|
|
|
@@ -38,8 +57,6 @@ python -m pip install -U "iints-sdk-python35[desktop-all]"
|
|
|
38
57
|
iints-desktop
|
|
39
58
|
```
|
|
40
59
|
|
|
41
|
-
Experimental next-generation shell: a Tauri + Rust desktop prototype lives in `apps/iints-tauri`. It keeps the Python SDK as the scientific engine while moving the native app boundary into Rust. See `docs/TAURI_DESKTOP.md`.
|
|
42
|
-
|
|
43
60
|
## License
|
|
44
61
|
|
|
45
62
|
Apache-2.0 licensed, with legacy MIT notices where applicable.
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Desktop App Installation
|
|
2
|
+
|
|
3
|
+
The IINTS-AF Research Workbench is the recommended desktop interface for the Python research SDK. It uses a native Rust/Tauri shell and keeps simulation, validation, reporting, and research calculations inside the Python SDK.
|
|
4
|
+
|
|
5
|
+
!!! warning "Research scope"
|
|
6
|
+
IINTS-AF is research and education software. It is not a medical device and must not be used for diagnosis, dosing, treatment decisions, or real-time patient care.
|
|
7
|
+
|
|
8
|
+
## Download The Current Beta
|
|
9
|
+
|
|
10
|
+
The stable links below always point to the newest tested Tauri beta:
|
|
11
|
+
|
|
12
|
+
| Platform | Installer | Start |
|
|
13
|
+
| --- | --- | --- |
|
|
14
|
+
| Windows | [Download `.exe`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-windows-x64-setup.exe) | run the setup file, then open **IINTS-AF Research Workbench** |
|
|
15
|
+
| macOS | [Download `.dmg`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-macos.dmg) | open the DMG, drag the app to Applications, then open it |
|
|
16
|
+
| Linux | [Download `.AppImage`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-linux-x64.AppImage) | mark it executable, then run it |
|
|
17
|
+
|
|
18
|
+
Matching `.sha256` files are published beside each installer. See [Desktop App Signing](DESKTOP_SIGNING.md) for signature and notarization details.
|
|
19
|
+
|
|
20
|
+
## First Launch
|
|
21
|
+
|
|
22
|
+
The native app needs the IINTS-AF Python engine for scientific calculations. The app now handles this setup through a visible, fixed maintenance command:
|
|
23
|
+
|
|
24
|
+
1. Open the workbench.
|
|
25
|
+
2. If **Python bridge unavailable** appears, select **Install Python engine** on Overview, or open **Settings** and select **Install or update Python SDK**.
|
|
26
|
+
3. Keep the terminal open while the installation completes.
|
|
27
|
+
4. Return to the app and select **Refresh versions**.
|
|
28
|
+
5. Run **Run diagnostics** before the first experiment.
|
|
29
|
+
|
|
30
|
+
The app creates a private environment at `~/.iints-af/python-engine`. It does not modify an unrelated project virtual environment. On later runs, the same action updates or repairs that private engine.
|
|
31
|
+
|
|
32
|
+
The bootstrap requires Python `3.10` through `3.14`. On macOS, the app checks common Homebrew, MacPorts, and Python.org framework locations before the limited Finder application `PATH`. Advanced users can override discovery with `IINTS_PYTHON`.
|
|
33
|
+
|
|
34
|
+
### Manual Fallback
|
|
35
|
+
|
|
36
|
+
If Python is not installed, install a current release from [python.org](https://www.python.org/downloads/), reopen the app, and use **Install or update Python SDK** again.
|
|
37
|
+
|
|
38
|
+
Advanced users may prepare the engine manually:
|
|
39
|
+
|
|
40
|
+
=== "macOS or Linux"
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
python3 -m venv "$HOME/.iints-af/python-engine"
|
|
44
|
+
"$HOME/.iints-af/python-engine/bin/python" -m pip install --upgrade pip "iints-sdk-python35[desktop-all]"
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
=== "Windows PowerShell"
|
|
48
|
+
|
|
49
|
+
```powershell
|
|
50
|
+
py -3 -m venv "$HOME\.iints-af\python-engine"
|
|
51
|
+
& "$HOME\.iints-af\python-engine\Scripts\python.exe" -m pip install --upgrade pip "iints-sdk-python35[desktop-all]"
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## macOS Security Messages
|
|
55
|
+
|
|
56
|
+
The CI pipeline verifies the complete app bundle inside the finished DMG. Public downloads still require Apple Developer ID signing and notarization to avoid all Gatekeeper warnings.
|
|
57
|
+
|
|
58
|
+
If an official beta is ad-hoc signed, macOS may report an unidentified developer. Use Finder's **Open** context-menu action once. Do not disable Gatekeeper system-wide. If macOS reports that the app is damaged, download the newest DMG again and verify its SHA-256 value; do not bypass a failed integrity check.
|
|
59
|
+
|
|
60
|
+
## Linux AppImage
|
|
61
|
+
|
|
62
|
+
If the file is not executable:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
chmod +x IINTS-AF-Research-Workbench-linux-x64.AppImage
|
|
66
|
+
./IINTS-AF-Research-Workbench-linux-x64.AppImage
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
The private Python engine still needs a system Python with `venv` support. On Debian or Ubuntu, a missing `venv` module is normally supplied by the distribution's `python3-venv` package.
|
|
70
|
+
|
|
71
|
+
## Optional External Tools
|
|
72
|
+
|
|
73
|
+
The SDK package installs supported Python libraries. Large or independently licensed external applications remain explicit:
|
|
74
|
+
|
|
75
|
+
- Ollama and local model files
|
|
76
|
+
- COPASI
|
|
77
|
+
- OpenCOR
|
|
78
|
+
- trusted FMUs or external model files
|
|
79
|
+
|
|
80
|
+
The workbench detects these tools and explains which feature needs them. It does not silently download executables, model weights, or native-code FMUs.
|
|
81
|
+
|
|
82
|
+
## Python And Classic Qt App
|
|
83
|
+
|
|
84
|
+
Researchers who prefer a Python-managed desktop environment can still install the classic Qt interface:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
python -m pip install --upgrade "iints-sdk-python35[desktop-all]"
|
|
88
|
+
iints-desktop
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
The classic packaged beta remains available from the [`desktop-beta-latest` release](https://github.com/python35/IINTS-SDK/releases/tag/desktop-beta-latest), but the Rust/Tauri workbench is the recommended desktop route.
|
|
92
|
+
|
|
93
|
+
## Troubleshooting
|
|
94
|
+
|
|
95
|
+
| Message or symptom | Action |
|
|
96
|
+
| --- | --- |
|
|
97
|
+
| Python bridge unavailable | select **Install Python engine**, wait for the terminal, then select **Refresh versions** |
|
|
98
|
+
| Python 3.10-3.14 was not found | install Python from python.org and repeat the maintenance action |
|
|
99
|
+
| `No module named iints_desktop` | update or repair the private engine from Settings; the selected Python does not contain the SDK bridge |
|
|
100
|
+
| protocol list is empty | refresh versions, run diagnostics, then refresh protocols |
|
|
101
|
+
| optional research engine unavailable | install only the external engine required by that lab |
|
|
102
|
+
| app update available | close the app and install the newest file from the stable beta release |
|
|
103
|
+
|
|
104
|
+
For the complete illustrated workflow, continue with the [Research Workbench User Guide](RESEARCH_WORKBENCH_GUIDE.md).
|
|
@@ -4,6 +4,8 @@ The IINTS-AF desktop app is a graphical workbench for the same Python SDK used b
|
|
|
4
4
|
|
|
5
5
|
The app does not contain a second physiology or safety engine.
|
|
6
6
|
|
|
7
|
+
For a visual, step-by-step walkthrough, start with the [Research Workbench User Guide](RESEARCH_WORKBENCH_GUIDE.md).
|
|
8
|
+
|
|
7
9
|
```mermaid
|
|
8
10
|
flowchart LR
|
|
9
11
|
A["Desktop interface"] --> B["Audited app bridge"]
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
# Research Workbench User Guide
|
|
2
|
+
|
|
3
|
+
The IINTS-AF Research Workbench is the native desktop interface for the Python SDK. It helps you run a protocol, inspect its outputs, create reproducibility evidence, and request a local AI review without reimplementing scientific logic in the app.
|
|
4
|
+
|
|
5
|
+
!!! warning "Research scope"
|
|
6
|
+
IINTS-AF is research and education software. It is not a medical device and must not be used for diagnosis, insulin dosing, treatment decisions, or real-time patient care.
|
|
7
|
+
|
|
8
|
+
!!! info "About the screenshots"
|
|
9
|
+
The screenshots below use a labelled documentation fixture. The values illustrate the interface only; they are not study results or validation evidence.
|
|
10
|
+
|
|
11
|
+
## Install And Open
|
|
12
|
+
|
|
13
|
+
Use the current native beta installer for your platform:
|
|
14
|
+
|
|
15
|
+
| Platform | Installer |
|
|
16
|
+
| --- | --- |
|
|
17
|
+
| Windows | [Download `.exe`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-windows-x64-setup.exe) |
|
|
18
|
+
| macOS | [Download `.dmg`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-macos.dmg) |
|
|
19
|
+
| Linux | [Download `.AppImage`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-linux-x64.AppImage) |
|
|
20
|
+
|
|
21
|
+
The native app delegates calculations to the Python SDK. If Overview reports that the Python engine is unavailable, select **Install Python engine**. The same action is available under **Settings → Install or update Python SDK**.
|
|
22
|
+
|
|
23
|
+
The app opens a terminal with a fixed Rust-owned command, creates a private engine at `~/.iints-af/python-engine`, and installs the supported SDK dependencies there. After completion, return to the app and select **Refresh versions**. This avoids relying on the limited `PATH` inherited by a macOS Finder launch and does not modify an unrelated project environment.
|
|
24
|
+
|
|
25
|
+
Python `3.10` through `3.14` must be available on the computer. The [installation guide](APP_INSTALL.md) includes a manual fallback when automatic discovery cannot find it.
|
|
26
|
+
|
|
27
|
+
### Native interaction
|
|
28
|
+
|
|
29
|
+
The installed app deliberately behaves like a desktop workbench rather than a website:
|
|
30
|
+
|
|
31
|
+
- labels, navigation, and buttons cannot be accidentally selected or dragged
|
|
32
|
+
- inputs, logs, AI answers, result values, and tables remain selectable for research work
|
|
33
|
+
- the browser context menu is suppressed outside those copyable data areas
|
|
34
|
+
- scientific charts appear immediately without decorative drawing animations
|
|
35
|
+
- embedded browser developer tools are disabled in the packaged application
|
|
36
|
+
- folder and model/result locations use native macOS, Windows, or Linux selectors; paths remain
|
|
37
|
+
editable for advanced reproducibility workflows
|
|
38
|
+
|
|
39
|
+
Use <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>O</kbd> to open the result-file selector and
|
|
40
|
+
<kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>,</kbd> to open Settings.
|
|
41
|
+
|
|
42
|
+
These interface rules do not restrict access to generated artifacts; files remain available in the selected output folder.
|
|
43
|
+
|
|
44
|
+
## The Normal Workflow
|
|
45
|
+
|
|
46
|
+
Use the left navigation in this order:
|
|
47
|
+
|
|
48
|
+
1. **Overview** — verify the local engine and optional tools.
|
|
49
|
+
2. **Run protocols** — choose a protocol, output folder, and deterministic seed.
|
|
50
|
+
3. **Inspect results** — review metrics, the glucose trace, and CSV rows.
|
|
51
|
+
4. **Reproducibility** — create checksums, metadata, and an audit package.
|
|
52
|
+
5. **Local AI review** — optionally ask Ollama to summarize the loaded result.
|
|
53
|
+
6. **Research tools** — use independent biology, equation-model, or device-physics tools.
|
|
54
|
+
7. **Evidence sources** — inspect connector status and open official resources.
|
|
55
|
+
8. **Settings** — save local defaults, check versions, update software, and open help.
|
|
56
|
+
|
|
57
|
+
## 1. Check The Environment
|
|
58
|
+
|
|
59
|
+

|
|
60
|
+
|
|
61
|
+
Select **Run diagnostics** before a new experiment. A normal ready environment shows:
|
|
62
|
+
|
|
63
|
+
- the installed IINTS-AF SDK version
|
|
64
|
+
- the Python version used by the app bridge
|
|
65
|
+
- whether Ollama is available
|
|
66
|
+
- readiness of optional modules such as MDMP, Plotly, libRoadRunner, and FMPy
|
|
67
|
+
|
|
68
|
+
Missing optional modules do not always block a normal simulation. They only block the feature that depends on them.
|
|
69
|
+
|
|
70
|
+
Equivalent terminal check:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
iints doctor
|
|
74
|
+
python -c "import iints; print(iints.__version__)"
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## 2. Run A Protocol
|
|
78
|
+
|
|
79
|
+

|
|
80
|
+
|
|
81
|
+
1. Select one protocol in the left panel.
|
|
82
|
+
2. Select **Choose folder...** and choose an output location you can archive later.
|
|
83
|
+
3. Record the seed. The default `42` is suitable for a reproducible first run.
|
|
84
|
+
4. Select **Run selected protocol**.
|
|
85
|
+
5. Wait until the status field reports completion or a recorded error.
|
|
86
|
+
|
|
87
|
+
Do not compare runs unless their protocol, SDK version, patient profile, time step, and seed policy are recorded.
|
|
88
|
+
|
|
89
|
+
The app calls the same SDK engine used by CLI workflows. A typical command-line equivalent is:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
iints presets run \
|
|
93
|
+
--name realistic_reference_day \
|
|
94
|
+
--algo algorithms/example_algorithm.py \
|
|
95
|
+
--seed 42 \
|
|
96
|
+
--output-dir results/reference_day_seed_42
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
The exact equivalent command can differ by curated desktop protocol. Treat the generated run configuration as the authoritative record.
|
|
100
|
+
|
|
101
|
+
## 3. Inspect Results
|
|
102
|
+
|
|
103
|
+

|
|
104
|
+
|
|
105
|
+
After a desktop protocol completes, the app loads its `results.csv` automatically. To inspect an
|
|
106
|
+
existing run, select **Choose CSV...**, choose the local file, and then select **Load preview**.
|
|
107
|
+
Advanced users may still edit the displayed path directly.
|
|
108
|
+
|
|
109
|
+
Review these parts together:
|
|
110
|
+
|
|
111
|
+
- **Result status** — confirms the file and row count that were loaded.
|
|
112
|
+
- **Summary metrics** — compact orientation metrics, not a complete analysis.
|
|
113
|
+
- **Glucose trajectory** — a bounded visual preview with the configured 70–180 mg/dL reference band.
|
|
114
|
+
- **Tabular preview** — the first bounded rows from the source CSV.
|
|
115
|
+
- **MDMP certificate** — data-contract checks for the selected CSV.
|
|
116
|
+
|
|
117
|
+
The preview is read-only. It must not silently interpolate, repair, or overwrite the source CSV.
|
|
118
|
+
|
|
119
|
+
Useful CLI checks:
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
iints report --results-csv path/to/results.csv --style agp
|
|
123
|
+
iints data certify data_contract.yaml path/to/results.csv --quick
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
Read [Understand A Run](RUN_OUTPUTS.md) before using a preview as evidence in a study.
|
|
127
|
+
|
|
128
|
+
## 4. Create A Reproducibility Package
|
|
129
|
+
|
|
130
|
+

|
|
131
|
+
|
|
132
|
+
Open **Reproducibility** after loading a completed run.
|
|
133
|
+
|
|
134
|
+
1. Confirm the completed run folder or select **Choose folder...** to locate one.
|
|
135
|
+
2. Add a descriptive package title.
|
|
136
|
+
3. Add the researcher name and ORCID when appropriate.
|
|
137
|
+
4. Leave the run-artifact licence as `NOASSERTION` unless you know which licence applies to every exported artifact.
|
|
138
|
+
5. Add explicit evidence source IDs only when those sources support the run.
|
|
139
|
+
6. Select **Create academic package**.
|
|
140
|
+
|
|
141
|
+
The package stays local. It adds RO-Crate metadata, checksums, a source snapshot, and an audit report. A successful export is not peer review, privacy approval, or clinical validation.
|
|
142
|
+
|
|
143
|
+
Equivalent CLI command:
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
iints research academic-bundle path/to/completed_run
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
See [Academic Research Workbench](ACADEMIC_RESEARCH_WORKBENCH.md) for artifact definitions.
|
|
150
|
+
|
|
151
|
+
## 5. Use Local AI Review
|
|
152
|
+
|
|
153
|
+

|
|
154
|
+
|
|
155
|
+
Local AI is optional and advisory.
|
|
156
|
+
|
|
157
|
+
1. Open **Local AI review**.
|
|
158
|
+
2. Select or type an Ollama model name.
|
|
159
|
+
3. Keep the host at `http://127.0.0.1:11434` for a local server.
|
|
160
|
+
4. Select **Start local AI**. The app starts Ollama when possible and prepares the selected model.
|
|
161
|
+
5. Confirm that the correct result CSV is attached below the question.
|
|
162
|
+
6. Write a focused research question.
|
|
163
|
+
7. Select **Analyze loaded result**.
|
|
164
|
+
|
|
165
|
+
The answer is separated into model metadata, policy status, warnings, headings, and lists. Verify every numerical or physiological claim against deterministic SDK outputs.
|
|
166
|
+
|
|
167
|
+
Example questions:
|
|
168
|
+
|
|
169
|
+
```text
|
|
170
|
+
Which deterministic metrics should I inspect before accepting this run as realistic?
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
```text
|
|
174
|
+
Summarize the glucose pattern, list possible simulation artifacts, and identify claims that cannot be supported by this CSV alone.
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
Do not ask the model for dosing or treatment advice. Read [AI Safety Gates](LOCAL_AI_SAFETY_GATES.md) for the enforced boundaries.
|
|
178
|
+
|
|
179
|
+
## 6. Use Research Tools
|
|
180
|
+
|
|
181
|
+

|
|
182
|
+
|
|
183
|
+
The **Research tools** workspace contains independent evidence and stress-test layers:
|
|
184
|
+
|
|
185
|
+
| Tool | Use | Important boundary |
|
|
186
|
+
| --- | --- | --- |
|
|
187
|
+
| AlphaFold assets | inspect protein structure and PAE confidence | confidence is not disease severity |
|
|
188
|
+
| Genomics stressor | compare an explicit functional-scalar scenario | unknown variants are not assigned an effect automatically |
|
|
189
|
+
| Tissue resistance | separate muscle and liver sensitivity assumptions | a stress test is not patient calibration |
|
|
190
|
+
| SBML/libRoadRunner | execute an independent equation model | external units are not assumed to be mg/dL or minutes |
|
|
191
|
+
| COPASI | inspect sensitivity and identifiability tasks | configured tasks and bounds require review |
|
|
192
|
+
| OpenCOR/CellML | validate an independent physiology model | imported models remain separate evidence |
|
|
193
|
+
| FMI/FMPy | inspect or run reviewed device-physics models | FMUs can contain native code and require explicit trust |
|
|
194
|
+
| BindingDB | retrieve measured affinity records | Ki, Kd, IC50, pLDDT, and in-vivo effect are distinct evidence types |
|
|
195
|
+
|
|
196
|
+
Start with **Check all engines**. Open only the lab you need, and preserve the generated evidence bundle with the study record.
|
|
197
|
+
|
|
198
|
+
Use **Choose file...** beside SBML, COPASI, CellML, or FMI inputs. The native selector filters the
|
|
199
|
+
visible files by the expected extension. Selecting a file never executes it: static inspection and
|
|
200
|
+
explicit execution remain separate actions, and COPASI/FMI execution still requires the relevant
|
|
201
|
+
confirmation checkbox.
|
|
202
|
+
|
|
203
|
+
### Inspect an AlphaFold structure
|
|
204
|
+
|
|
205
|
+
Each bundled protein card provides separate actions with different evidence meanings:
|
|
206
|
+
|
|
207
|
+
1. **View 3D** opens a local, interactive C-alpha backbone in the app. Drag to rotate, scroll to
|
|
208
|
+
zoom, or use the arrow keys. Colours represent AlphaFold pLDDT confidence.
|
|
209
|
+
2. **Open PNG** opens the bundled static render.
|
|
210
|
+
3. **Reveal mmCIF** shows the exact local coordinate file in Finder, Explorer, or the Linux file
|
|
211
|
+
manager rather than relying on an operating-system association for `.cif`.
|
|
212
|
+
4. **Generate PAE** retrieves the official AlphaFold Predicted Aligned Error data over verified
|
|
213
|
+
HTTPS and writes an interactive HTML artifact below the selected output folder.
|
|
214
|
+
5. **AlphaFold entry** opens the matching official database page in the system browser.
|
|
215
|
+
|
|
216
|
+
pLDDT describes local structure-prediction confidence and PAE describes confidence in relative
|
|
217
|
+
residue placement. Neither value is converted into pathogenicity, insulin sensitivity, disease
|
|
218
|
+
severity, or treatment logic.
|
|
219
|
+
|
|
220
|
+
## 7. Evidence Sources
|
|
221
|
+
|
|
222
|
+
The **Evidence sources** workspace describes whether a connector is:
|
|
223
|
+
|
|
224
|
+
- **Integrated** — the SDK can retrieve or generate a bounded evidence artifact.
|
|
225
|
+
- **Partial** — only part of the workflow is implemented.
|
|
226
|
+
- **Portal** — the app opens the official external resource.
|
|
227
|
+
- **Planned** — no functioning integration exists yet.
|
|
228
|
+
|
|
229
|
+
Opening a portal does not import its content into a simulation. External evidence must be cited, reviewed, licensed appropriately, and connected to a claim explicitly.
|
|
230
|
+
|
|
231
|
+
## 8. Configure And Maintain The App
|
|
232
|
+
|
|
233
|
+

|
|
234
|
+
|
|
235
|
+
Open **Settings** to maintain the workbench without mixing application controls into a scientific run.
|
|
236
|
+
|
|
237
|
+
### Local preferences
|
|
238
|
+
|
|
239
|
+
You can set:
|
|
240
|
+
|
|
241
|
+
- the default output folder, selected with **Choose folder...**
|
|
242
|
+
- the default deterministic seed
|
|
243
|
+
- the default local Ollama model
|
|
244
|
+
- the local Ollama host
|
|
245
|
+
- whether diagnostics run at startup
|
|
246
|
+
|
|
247
|
+
Select **Save settings** to apply these values to the Run and Local AI workspaces. Preferences are stored only in the app's local browser storage. The Settings panel does not store tokens, passwords, patient data, or run results. Ollama hosts are restricted to `localhost`, `127.0.0.1`, or `::1`.
|
|
248
|
+
|
|
249
|
+
### Software updates
|
|
250
|
+
|
|
251
|
+
The desktop app and Python SDK have separate version records:
|
|
252
|
+
|
|
253
|
+
- **Install or update Python SDK** creates, repairs, or updates the private app engine through a fixed, Rust-owned command. The app does not accept arbitrary shell text.
|
|
254
|
+
- **Download latest app update** opens the stable `tauri-beta-latest` GitHub release. Install the new signed installer for your platform after closing the current app.
|
|
255
|
+
- **Refresh versions** checks the native app and the Python engine independently.
|
|
256
|
+
|
|
257
|
+
The beta deliberately does not replace its own executable silently. This keeps downloads, signatures, and release notes visible until a signed Tauri self-updater is introduced and audited.
|
|
258
|
+
|
|
259
|
+
### Help
|
|
260
|
+
|
|
261
|
+
The same workspace links to this user guide, installation troubleshooting, the complete SDK documentation, and [iints.org](https://iints.org/).
|
|
262
|
+
|
|
263
|
+
## Common Problems
|
|
264
|
+
|
|
265
|
+
| Message or symptom | What to do |
|
|
266
|
+
| --- | --- |
|
|
267
|
+
| Python bridge unavailable | select **Install Python engine**, wait for completion, then select **Refresh versions** |
|
|
268
|
+
| `No module named iints_desktop` | repair the private engine with **Install or update Python SDK**; the discovered Python does not contain the SDK bridge |
|
|
269
|
+
| Protocol list is empty | run diagnostics, verify the SDK installation, then select Refresh protocols |
|
|
270
|
+
| Native selector does not open | confirm you are using the installed app rather than a browser preview |
|
|
271
|
+
| CSV preview fails | select the file again with **Choose CSV...** and confirm it is a supported results CSV |
|
|
272
|
+
| Ollama not found | install Ollama once, then select Start local AI |
|
|
273
|
+
| Model is missing | choose Refresh model list or allow Start local AI to pull the selected model |
|
|
274
|
+
| Optional research engine missing | install or configure only the engine required for that lab |
|
|
275
|
+
| macOS blocks the beta | follow the signed-build and Gatekeeper guidance in [Desktop App Installation](APP_INSTALL.md) |
|
|
276
|
+
|
|
277
|
+
## Keep A Reviewable Record
|
|
278
|
+
|
|
279
|
+
For every result you intend to discuss or publish, preserve:
|
|
280
|
+
|
|
281
|
+
```text
|
|
282
|
+
run-folder/
|
|
283
|
+
├── results.csv
|
|
284
|
+
├── config.json or run metadata
|
|
285
|
+
├── clinical or research report
|
|
286
|
+
├── safety and audit events
|
|
287
|
+
├── MDMP artifacts when used
|
|
288
|
+
└── academic_bundle/
|
|
289
|
+
├── ro-crate-metadata.json
|
|
290
|
+
├── checksums
|
|
291
|
+
└── academic audit
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
The interface is a workbench, not the scientific authority. The Python SDK output, recorded configuration, deterministic checks, and source evidence remain the basis for interpretation.
|