iints-sdk-python35 1.5.32__tar.gz → 1.5.33__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.
Files changed (453) hide show
  1. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/CITATION.cff +2 -2
  2. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/PKG-INFO +3 -3
  3. iints_sdk_python35-1.5.33/docs/ALL_SCIENTIFIC_THEORIES.md +146 -0
  4. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/API_REFERENCE.md +28 -14
  5. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/EU_AI_PACT_GOVERNANCE.md +9 -0
  6. iints_sdk_python35-1.5.33/docs/FORMULA_REGISTRY.md +474 -0
  7. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/GLUCOSE_MODEL.md +27 -2
  8. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MDMP.md +3 -2
  9. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MDMP_FULL_GUIDE.md +26 -5
  10. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MDMP_QUICKSTART.md +2 -2
  11. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/PAPER_TECHNICAL_DOSSIER.md +15 -6
  12. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/PHYSIOLOGY_REFERENCE.md +15 -9
  13. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/TECHNICAL_README.md +2 -1
  14. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/UPDATING.md +1 -1
  15. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/comparison_interpretation.md +8 -8
  16. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/pyproject.toml +3 -3
  17. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/__init__.py +1 -1
  18. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/booth_demo.py +6 -6
  19. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/edge_performance_monitor.py +4 -4
  20. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/run_quality.py +2 -0
  21. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/cli/cli.py +17 -11
  22. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/clinical_baseline.py +3 -1
  23. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/mpc_controller.py +89 -37
  24. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/devices/models.py +283 -80
  25. iints_sdk_python35-1.5.33/src/iints/core/digital_twin.py +270 -0
  26. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/formula_registry.py +204 -78
  27. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/patient/advanced_metabolic_model.py +221 -62
  28. iints_sdk_python35-1.5.33/src/iints/core/patient/bergman_model.py +865 -0
  29. iints_sdk_python35-1.5.33/src/iints/core/patient/hovorka_model.py +900 -0
  30. iints_sdk_python35-1.5.33/src/iints/core/patient/models.py +531 -0
  31. iints_sdk_python35-1.5.33/src/iints/core/patient/patient_factory.py +342 -0
  32. iints_sdk_python35-1.5.33/src/iints/core/patient/physiology.py +258 -0
  33. iints_sdk_python35-1.5.33/src/iints/core/safety/config.py +178 -0
  34. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/safety/input_validator.py +65 -15
  35. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/simulator.py +40 -22
  36. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/supervisor.py +76 -16
  37. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/certify.py +28 -8
  38. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/mdmp_visualizer.py +3 -1
  39. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/runner.py +27 -7
  40. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/reference_free_living_t1d.yaml +2 -2
  41. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/mdmp/backend.py +26 -8
  42. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/mdmp/eu_ai_pact.py +14 -4
  43. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/population/generator.py +46 -8
  44. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/presets/presets.json +1 -1
  45. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/config.py +1 -1
  46. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/evaluation.py +64 -28
  47. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/forecasting.py +169 -29
  48. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/glucose_model.py +162 -36
  49. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/losses.py +23 -29
  50. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/physiology_calibration.py +124 -35
  51. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/predictor.py +13 -7
  52. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/stem_cell_transplant.py +162 -35
  53. iints_sdk_python35-1.5.33/src/iints/tools/digital_twin_calibrator.py +172 -0
  54. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/tools/theory_stress_lab.py +3 -0
  55. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/validation/schemas.py +1 -1
  56. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/local_ai.py +2 -1
  57. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_sdk_python35.egg-info/PKG-INFO +3 -3
  58. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_sdk_python35.egg-info/requires.txt +2 -2
  59. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_population.py +29 -0
  60. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_presets_realism.py +7 -1
  61. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_scientific_fidelity.py +9 -12
  62. iints_sdk_python35-1.5.32/docs/ALL_SCIENTIFIC_THEORIES.md +0 -223
  63. iints_sdk_python35-1.5.32/docs/FORMULA_REGISTRY.md +0 -440
  64. iints_sdk_python35-1.5.32/src/iints/core/digital_twin.py +0 -168
  65. iints_sdk_python35-1.5.32/src/iints/core/patient/bergman_model.py +0 -539
  66. iints_sdk_python35-1.5.32/src/iints/core/patient/hovorka_model.py +0 -563
  67. iints_sdk_python35-1.5.32/src/iints/core/patient/models.py +0 -356
  68. iints_sdk_python35-1.5.32/src/iints/core/patient/patient_factory.py +0 -202
  69. iints_sdk_python35-1.5.32/src/iints/core/patient/physiology.py +0 -45
  70. iints_sdk_python35-1.5.32/src/iints/core/safety/config.py +0 -90
  71. iints_sdk_python35-1.5.32/src/iints/tools/digital_twin_calibrator.py +0 -85
  72. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/LICENSE +0 -0
  73. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/LICENSE-MIT-IINTS-LEGACY +0 -0
  74. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/MANIFEST.in +0 -0
  75. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/NOTICE +0 -0
  76. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/README.md +0 -0
  77. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/ACADEMIC_RESEARCH_WORKBENCH.md +0 -0
  78. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/AI_ASSISTANT.md +0 -0
  79. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/AI_RED_TEAM_AUDITOR.md +0 -0
  80. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/APP_INSTALL.md +0 -0
  81. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/ARCHITECTURE_HARDENING.md +0 -0
  82. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/ARCHITECTURE_OVERVIEW.md +0 -0
  83. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/ARDUINO_UNO_Q.md +0 -0
  84. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/BOOTH_DEMO.md +0 -0
  85. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/CLI_CHEATSHEET.md +0 -0
  86. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/COMMAND_REFERENCE.md +0 -0
  87. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/COMPREHENSIVE_GUIDE.md +0 -0
  88. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/CONTRIBUTING_SAFELY.md +0 -0
  89. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/CORE_CONCEPTS.md +0 -0
  90. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/CROSS_SCALE_REFERENCE_LABS.md +0 -0
  91. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DESKTOP_APP.md +0 -0
  92. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DESKTOP_SIGNING.md +0 -0
  93. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DEVELOPER_PORTAL.md +0 -0
  94. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DIABETES_RESEARCH_DATASETS.md +0 -0
  95. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DIGITAL_PATIENT_PI.md +0 -0
  96. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DIGITAL_TWIN_BIOLOGY.md +0 -0
  97. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DOCUMENTATION_INDEX.md +0 -0
  98. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/DUAL_REPO_WORKFLOW.md +0 -0
  99. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/EDGE_HARDWARE.md +0 -0
  100. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/EDGE_REMOTE_DEPLOY.md +0 -0
  101. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/EVIDENCE_BASE.md +0 -0
  102. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/EVIDENCE_BUNDLE.md +0 -0
  103. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/FPGA_MODE.md +0 -0
  104. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/GETTING_STARTED.md +0 -0
  105. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/HARDWARE.md +0 -0
  106. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/HYPOGLYCEMIA_SCIENCE_MODEL.md +0 -0
  107. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/INSTALLATION.md +0 -0
  108. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/JETSON_AUTOML_FACTORY.md +0 -0
  109. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/JETSON_ENDURANCE.md +0 -0
  110. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/LEARNING_PATH.md +0 -0
  111. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/LOCAL_AI_RESEARCH.md +0 -0
  112. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/LOCAL_AI_SAFETY_GATES.md +0 -0
  113. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MAINTAINER_GUIDE.md +0 -0
  114. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MAKERFAIRE_PI.md +0 -0
  115. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MAKERFAIRE_PI_CHECKLIST.md +0 -0
  116. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MECHANISTIC_REFERENCE_MODELS.md +0 -0
  117. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MEDTRONIC_CARELINK_LIVE_BRIDGE.md +0 -0
  118. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MEDTRONIC_DIRECT_PUMP_TRANSPORT.md +0 -0
  119. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/MISTRAL_MODEL_MIGRATION.md +0 -0
  120. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/NUMERIC_AUTHORITY.md +0 -0
  121. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/OBSIDIAN_PUBLIC_VAULT.md +0 -0
  122. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/OFFICIAL_MANUAL.md +0 -0
  123. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/PICO_PUMP_LAB.md +0 -0
  124. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/PLAIN_LANGUAGE_GUIDE.md +0 -0
  125. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/PROJECT_BOUNDARIES.md +0 -0
  126. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/PUBLIC_DOCUMENTATION.md +0 -0
  127. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/PUBLIC_RELEASE_CHECKLIST.md +0 -0
  128. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/QUICKSTART.md +0 -0
  129. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/REAL_DATA_REALISM.md +0 -0
  130. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/REFERENCE_OVERVIEW.md +0 -0
  131. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/RESEARCH_WORKBENCH_GUIDE.md +0 -0
  132. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/RUN_OUTPUTS.md +0 -0
  133. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/SCIENTIFIC_WORKFLOW.md +0 -0
  134. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/SOURCE_LIBRARY.md +0 -0
  135. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/STUDY_ANALYSIS.md +0 -0
  136. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/TAURI_DESKTOP.md +0 -0
  137. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/THEORY_STRESS_LAB.md +0 -0
  138. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/TROUBLESHOOTING.md +0 -0
  139. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/USER_GUIDE_MAP.md +0 -0
  140. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/WORKFLOWS.md +0 -0
  141. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/emulation_references.md +0 -0
  142. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/docs/index.md +0 -0
  143. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/setup.cfg +0 -0
  144. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/__init__.py +0 -0
  145. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/assistant.py +0 -0
  146. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/backends/__init__.py +0 -0
  147. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/backends/base.py +0 -0
  148. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/backends/mistral_api.py +0 -0
  149. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/backends/ollama.py +0 -0
  150. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/cli.py +0 -0
  151. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/deterministic.py +0 -0
  152. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/insights.py +0 -0
  153. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/mdmp_guard.py +0 -0
  154. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/model_catalog.py +0 -0
  155. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/prepare.py +0 -0
  156. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/ai/prompts.py +0 -0
  157. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/__init__.py +0 -0
  158. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/algorithm_xray.py +0 -0
  159. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/baseline.py +0 -0
  160. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/carelink_workbench.py +0 -0
  161. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/clinical_benchmark.py +0 -0
  162. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/clinical_metrics.py +0 -0
  163. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/clinical_tir_analyzer.py +0 -0
  164. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/diabetes_metrics.py +0 -0
  165. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/edge_efficiency.py +0 -0
  166. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/eucys_results.py +0 -0
  167. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/evidence_bundle.py +0 -0
  168. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/explainability.py +0 -0
  169. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/explainable_ai.py +0 -0
  170. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/hardware_benchmark.py +0 -0
  171. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/metrics.py +0 -0
  172. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/population_report.py +0 -0
  173. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/poster.py +0 -0
  174. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/reporting.py +0 -0
  175. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/safety_index.py +0 -0
  176. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/safety_visualizer.py +0 -0
  177. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/sensor_filtering.py +0 -0
  178. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/study_analysis.py +0 -0
  179. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/study_engine.py +0 -0
  180. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/study_experiment.py +0 -0
  181. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/study_poster.py +0 -0
  182. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/study_protocol.py +0 -0
  183. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/analysis/validator.py +0 -0
  184. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/api/__init__.py +0 -0
  185. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/api/base_algorithm.py +0 -0
  186. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/api/registry.py +0 -0
  187. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/api/template_algorithm.py +0 -0
  188. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/assets/iints_logo.png +0 -0
  189. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/cli/__init__.py +0 -0
  190. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/cli/patient_cli.py +0 -0
  191. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/__init__.py +0 -0
  192. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/__init__.py +0 -0
  193. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/battle_runner.py +0 -0
  194. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/correction_bolus.py +0 -0
  195. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/discovery.py +0 -0
  196. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/fixed_basal_bolus.py +0 -0
  197. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/hybrid_algorithm.py +0 -0
  198. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/imitation_controller.py +0 -0
  199. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/lstm_algorithm.py +0 -0
  200. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/mock_algorithms.py +0 -0
  201. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/neural_controller.py +0 -0
  202. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/pid_controller.py +0 -0
  203. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/algorithms/standard_pump_algo.py +0 -0
  204. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/clinical_metrics.py +0 -0
  205. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/device.py +0 -0
  206. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/device_manager.py +0 -0
  207. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/devices/__init__.py +0 -0
  208. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/patient/__init__.py +0 -0
  209. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/patient/profile.py +0 -0
  210. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/physiology_variation.py +0 -0
  211. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/safety/__init__.py +0 -0
  212. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/safety/supervisor.py +0 -0
  213. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/simulation/__init__.py +0 -0
  214. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/simulation/scenario_parser.py +0 -0
  215. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/core/units.py +0 -0
  216. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/__init__.py +0 -0
  217. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/adapter.py +0 -0
  218. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/column_mapper.py +0 -0
  219. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/contracts/diabetes_cgm_mdmp_contract.yaml +0 -0
  220. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/contracts.py +0 -0
  221. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/datasets.json +0 -0
  222. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/demo/__init__.py +0 -0
  223. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/demo/demo_cgm.csv +0 -0
  224. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/evidence.py +0 -0
  225. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/guardians.py +0 -0
  226. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/importer.py +0 -0
  227. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/ingestor.py +0 -0
  228. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/medtronic_live.py +0 -0
  229. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/nightscout.py +0 -0
  230. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/physiology_residual_profiles.json +0 -0
  231. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/quality_checker.py +0 -0
  232. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/realism_dashboard.py +0 -0
  233. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/realism_governance.py +0 -0
  234. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/realism_reference.py +0 -0
  235. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/realism_references.json +0 -0
  236. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/realism_validator.py +0 -0
  237. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/registry.py +0 -0
  238. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/research_catalog.py +0 -0
  239. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/study_corruption.py +0 -0
  240. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/synthetic_mirror.py +0 -0
  241. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/tidepool.py +0 -0
  242. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/universal_parser.py +0 -0
  243. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/clinic_safe_baseline.yaml +0 -0
  244. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/clinic_safe_hyper_challenge.yaml +0 -0
  245. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/clinic_safe_hypo_prone.yaml +0 -0
  246. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/clinic_safe_midnight.yaml +0 -0
  247. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/clinic_safe_pizza.yaml +0 -0
  248. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/clinic_safe_stress_meal.yaml +0 -0
  249. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/default_patient.yaml +0 -0
  250. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/patient_559_config.yaml +0 -0
  251. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/reference_azt1d_t1d.yaml +0 -0
  252. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/data/virtual_patients/reference_hupa_ucm_t1d.yaml +0 -0
  253. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/demo_assets.py +0 -0
  254. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/emulation/__init__.py +0 -0
  255. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/emulation/legacy_base.py +0 -0
  256. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/emulation/medtronic_780g.py +0 -0
  257. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/emulation/omnipod_5.py +0 -0
  258. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/emulation/tandem_controliq.py +0 -0
  259. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/governance/__init__.py +0 -0
  260. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/governance/research_policy.py +0 -0
  261. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/highlevel.py +0 -0
  262. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/jetson/__init__.py +0 -0
  263. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/jetson/endurance.py +0 -0
  264. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/jetson/research_pipeline.py +0 -0
  265. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/learning/__init__.py +0 -0
  266. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/learning/autonomous_optimizer.py +0 -0
  267. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/learning/learning_system.py +0 -0
  268. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/__init__.py +0 -0
  269. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/api.py +0 -0
  270. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/daemon.py +0 -0
  271. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/edge_benchmark.py +0 -0
  272. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/edge_ops.py +0 -0
  273. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/fpga.py +0 -0
  274. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/long_study.py +0 -0
  275. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/medtronic_direct.py +0 -0
  276. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/pico_pump.py +0 -0
  277. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/runtime.py +0 -0
  278. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/service_export.py +0 -0
  279. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/live_patient/uno_q.py +0 -0
  280. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/mdmp/__init__.py +0 -0
  281. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/metrics.py +0 -0
  282. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/population/__init__.py +0 -0
  283. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/population/runner.py +0 -0
  284. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/presets/__init__.py +0 -0
  285. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/presets/evidence_sources.yaml +0 -0
  286. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/presets/forecast_calibration_profiles.yaml +0 -0
  287. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/presets/golden_benchmark.yaml +0 -0
  288. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/presets/safety_contract_default.yaml +0 -0
  289. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/presets/validation_profiles.yaml +0 -0
  290. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/__init__.py +0 -0
  291. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/academic_bundle.py +0 -0
  292. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/alphafold_engine.py +0 -0
  293. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/anatomy.py +0 -0
  294. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/audit.py +0 -0
  295. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/binding_evidence.py +0 -0
  296. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/calibration_gate.py +0 -0
  297. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/cellml_models.py +0 -0
  298. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/clinvar_engine.py +0 -0
  299. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/control.py +0 -0
  300. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/control_eval.py +0 -0
  301. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/copasi_models.py +0 -0
  302. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/data_blend.py +0 -0
  303. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/dataset.py +0 -0
  304. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/external_models_common.py +0 -0
  305. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/fmi_models.py +0 -0
  306. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/genetics.py +0 -0
  307. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/genomics_engine.py +0 -0
  308. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/jetson_hf_trainer.py +0 -0
  309. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/local_ai.py +0 -0
  310. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/local_ai_gate.py +0 -0
  311. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/mechanistic_models.py +0 -0
  312. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/metrics.py +0 -0
  313. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/model_registry.py +0 -0
  314. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/neural_control.py +0 -0
  315. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/pharmacology.py +0 -0
  316. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/physiology.py +0 -0
  317. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/results_manager.py +0 -0
  318. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/stem_cell_optimizer.py +0 -0
  319. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/structure.py +0 -0
  320. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/research/tissue_stressor.py +0 -0
  321. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/scenarios/__init__.py +0 -0
  322. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/scenarios/generator.py +0 -0
  323. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/scenarios/study_pack.py +0 -0
  324. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/__init__.py +0 -0
  325. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/default_algorithm.py +0 -0
  326. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/demos/__init__.py +0 -0
  327. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/demos/live_stage_demo.py +0 -0
  328. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/pico_pump/README.md +0 -0
  329. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/pico_pump/code.py +0 -0
  330. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/pico_pump/serial_protocol.txt +0 -0
  331. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/scenarios/__init__.py +0 -0
  332. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/scenarios/chaos_insulin_stacking.json +0 -0
  333. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/scenarios/chaos_runaway_ai.json +0 -0
  334. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/scenarios/example_scenario.json +0 -0
  335. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/scenarios/exercise_stress.json +0 -0
  336. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/uno_q/README.md +0 -0
  337. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/templates/uno_q/iints_supervisor_bridge.ino +0 -0
  338. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/tools/ai_realism_auditor.py +0 -0
  339. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/utils/__init__.py +0 -0
  340. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/utils/academic_artifacts.py +0 -0
  341. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/utils/csv_safety.py +0 -0
  342. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/utils/plotting.py +0 -0
  343. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/utils/run_io.py +0 -0
  344. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/utils/url_safety.py +0 -0
  345. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/validation/__init__.py +0 -0
  346. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/validation/golden.py +0 -0
  347. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/validation/replay.py +0 -0
  348. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/validation/run_doctor.py +0 -0
  349. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/validation/run_validation.py +0 -0
  350. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/validation/safety_contract.py +0 -0
  351. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/visualization/__init__.py +0 -0
  352. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/visualization/cockpit.py +0 -0
  353. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints/visualization/uncertainty_cloud.py +0 -0
  354. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/__init__.py +0 -0
  355. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/app.py +0 -0
  356. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/AF-P01275-F1-model_v4.cif +0 -0
  357. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/AF-P01308-F1-model_v4.cif +0 -0
  358. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/AF-P06213-F1-model_v6.cif +0 -0
  359. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/AF-P14672-F1-model_v6.cif +0 -0
  360. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/AF-P47871-F1-model_v6.cif +0 -0
  361. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/gcgr_3D.png +0 -0
  362. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/glucagon_3D.png +0 -0
  363. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/glut4_3D.png +0 -0
  364. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/insr_3D.png +0 -0
  365. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/alphafold/insulin_3D.png +0 -0
  366. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/app_icon.icns +0 -0
  367. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/app_icon.ico +0 -0
  368. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/assets/app_icon.png +0 -0
  369. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/cocoa_app.py +0 -0
  370. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/engine.py +0 -0
  371. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/evidence_connectors.py +0 -0
  372. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/fetcher.py +0 -0
  373. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/launcher.py +0 -0
  374. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/mdmp.py +0 -0
  375. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/molecule_viewer.py +0 -0
  376. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/molecules.py +0 -0
  377. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/qt_app.py +0 -0
  378. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/render_3dmol.py +0 -0
  379. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/results.py +0 -0
  380. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/tauri_bridge.py +0 -0
  381. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/terminal_utils.py +0 -0
  382. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_desktop/update.py +0 -0
  383. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_sdk_python35.egg-info/SOURCES.txt +0 -0
  384. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_sdk_python35.egg-info/dependency_links.txt +0 -0
  385. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_sdk_python35.egg-info/entry_points.txt +0 -0
  386. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/iints_sdk_python35.egg-info/top_level.txt +0 -0
  387. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_ai/__init__.py +0 -0
  388. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_ai/lineage.py +0 -0
  389. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/__init__.py +0 -0
  390. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/audit.py +0 -0
  391. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/bias_hooks.py +0 -0
  392. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/bundle.py +0 -0
  393. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/certification.py +0 -0
  394. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/cli.py +0 -0
  395. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/compare.py +0 -0
  396. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/conformance.py +0 -0
  397. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/contracts.py +0 -0
  398. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/crypto.py +0 -0
  399. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/data/conformance/vectors/delegation.json +0 -0
  400. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/data/conformance/vectors/fingerprint.json +0 -0
  401. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/data/conformance/vectors/grading.json +0 -0
  402. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/data/conformance/vectors/signing.json +0 -0
  403. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/delegate.py +0 -0
  404. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/diffing.py +0 -0
  405. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/drift.py +0 -0
  406. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/exceptions.py +0 -0
  407. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/fingerprint.py +0 -0
  408. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/fingerprint_store.py +0 -0
  409. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/hf.py +0 -0
  410. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/keys/mdmp_pub_v1.pem +0 -0
  411. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/llm_provenance.py +0 -0
  412. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/migrate.py +0 -0
  413. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/policy.py +0 -0
  414. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/prov.py +0 -0
  415. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/registry.py +0 -0
  416. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/runner.py +0 -0
  417. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/schema_export.py +0 -0
  418. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/synthetic.py +0 -0
  419. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/trust.py +0 -0
  420. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_core/visualizer.py +0 -0
  421. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_flavors/__init__.py +0 -0
  422. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_integrations/__init__.py +0 -0
  423. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_integrations/dvc.py +0 -0
  424. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_integrations/mlflow.py +0 -0
  425. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/src/mdmp_integrations/wandb.py +0 -0
  426. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_bergman.py +0 -0
  427. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_ci_governance.py +0 -0
  428. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_algorithm_loading.py +0 -0
  429. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_booth_demo.py +0 -0
  430. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_carelink_workbench.py +0 -0
  431. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_cloud_import_security.py +0 -0
  432. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_demo_export.py +0 -0
  433. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_demo_live.py +0 -0
  434. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_edge_runtime.py +0 -0
  435. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_expo_tools.py +0 -0
  436. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_fpga.py +0 -0
  437. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_onboarding.py +0 -0
  438. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_patient_runtime.py +0 -0
  439. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_poster.py +0 -0
  440. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_research_workflows.py +0 -0
  441. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_run_summary.py +0 -0
  442. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_cli_theory_stress_lab.py +0 -0
  443. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_desktop_app.py +0 -0
  444. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_desktop_packaging.py +0 -0
  445. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_install_doctor.py +0 -0
  446. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_jetson_endurance.py +0 -0
  447. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_physiology_variation.py +0 -0
  448. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_plugin_system.py +0 -0
  449. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_qt_desktop_runtime.py +0 -0
  450. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_research_policy.py +0 -0
  451. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_research_realism_tools.py +0 -0
  452. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_simulator_calibration.py +0 -0
  453. {iints_sdk_python35-1.5.32 → iints_sdk_python35-1.5.33}/tests/test_tauri_bridge.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.32"
10
- date-released: "2026-07-23"
9
+ version: "1.5.33"
10
+ date-released: "2026-08-09"
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.32
3
+ Version: 1.5.33
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
@@ -22,7 +22,7 @@ License-File: LICENSE
22
22
  License-File: NOTICE
23
23
  License-File: LICENSE-MIT-IINTS-LEGACY
24
24
  Requires-Dist: certifi>=2024.2.2
25
- Requires-Dist: cryptography<50.0.0,>=48.0.1
25
+ Requires-Dist: cryptography<51.0.0,>=50.0.0
26
26
  Requires-Dist: defusedxml<1.0.0,>=0.7.1
27
27
  Requires-Dist: fastapi!=0.136.3,<0.139.1,>=0.115.0
28
28
  Requires-Dist: numpy<3.0.0,>=1.24.0
@@ -77,7 +77,7 @@ Requires-Dist: libroadrunner<3.0.0,>=2.9.2; extra == "mechanistic"
77
77
  Provides-Extra: fmi
78
78
  Requires-Dist: FMPy<0.4.0,>=0.3.30; extra == "fmi"
79
79
  Provides-Extra: mdmp
80
- Requires-Dist: cryptography<50.0.0,>=48.0.1; extra == "mdmp"
80
+ Requires-Dist: cryptography<51.0.0,>=50.0.0; extra == "mdmp"
81
81
  Provides-Extra: desktop
82
82
  Requires-Dist: pyinstaller<7.0.0,>=6.11.0; extra == "desktop"
83
83
  Requires-Dist: setuptools<84.0.0,>=83.0.0; extra == "desktop"
@@ -0,0 +1,146 @@
1
+ # Scientific Mechanisms And Their Limits
2
+
3
+ IINTS-AF is a **research and educational simulator**, not a clinically validated
4
+ patient model or medical device. This page explains what the deterministic code
5
+ implements and, equally importantly, what each mechanism does **not** prove.
6
+
7
+ The authoritative equation list is the [Formula Registry](FORMULA_REGISTRY.md).
8
+ Every entry is labelled as:
9
+
10
+ - `canonical`: a direct published equation;
11
+ - `adapted`: a published model modified for SDK integration;
12
+ - `heuristic`: an explicit, testable research assumption.
13
+
14
+ Published equations do not automatically validate the combined implementation,
15
+ its parameters, or its use for an individual person.
16
+
17
+ ## 1. Bergman-Style Glucose Balance (`F01`)
18
+
19
+ The Bergman mode uses a concentration-domain glucose balance with a remote
20
+ insulin-action state. Meal appearance, renal loss, exercise, stress, dawn and
21
+ glucagon terms are IINTS extensions. It is therefore **Bergman-style**, not an
22
+ unmodified implementation of the 1979 protocol model.
23
+
24
+ ## 2. Remote Insulin Action (`F02`)
25
+
26
+ The action state follows insulin above or below a basal reference:
27
+
28
+ $$
29
+ \frac{dX}{dt}=-p_2X+p_{3,\mathrm{eff}}(I-I_{\mathrm{ref}}).
30
+ $$
31
+
32
+ Here, \(I_{\mathrm{ref}}\) is the pump-supported fasting concentration derived
33
+ from basal delivery, distribution volume and clearance. Allowing a negative
34
+ deviation matters after interrupted basal delivery; clipping the deviation at
35
+ zero would hide the loss of basal insulin action.
36
+
37
+ ## 3. Plasma Insulin And Optional Graft Secretion (`F03`)
38
+
39
+ Plasma insulin is cleared by a first-order term and receives absorbed
40
+ subcutaneous insulin. Optional beta-cell or graft secretion is an **experimental
41
+ heuristic**, disabled in standard T1D profiles. It is not a transplantation
42
+ outcome predictor.
43
+
44
+ ## 4. Subcutaneous Insulin PK (`F04`)
45
+
46
+ Two serial depots delay pump delivery before plasma appearance. The structure is
47
+ literature-based; insulin-type time constants are predefined research profiles,
48
+ not product-specific bioequivalence claims.
49
+
50
+ ## 5. Meal Appearance (`F05`)
51
+
52
+ Hovorka mode uses its published two-compartment meal chain. Bergman and advanced
53
+ modes use an adapted stomach/gut chain. The latter must not be called an exact
54
+ Dalla Man implementation: it does not reproduce the complete Dalla Man meal
55
+ submodel or its nonlinear gastric-emptying function.
56
+
57
+ ## 6. Hovorka Glucose Mass Balance (`F06`)
58
+
59
+ Accessible and non-accessible glucose are represented as mass compartments.
60
+ The base balance follows Hovorka structure, while stress, exercise, circadian,
61
+ renal, HAAF and glucagon terms are declared extensions. Mass is converted to
62
+ concentration only through the configured glucose distribution volume.
63
+
64
+ ## 7. Hovorka Insulin-Action Channels (`F07`)
65
+
66
+ Three action channels affect distribution, disposal and endogenous glucose
67
+ production. Tissue and molecular-affinity scalars are scenario stressors, not
68
+ quantitative consequences inferred from AlphaFold, GTEx or ClinVar. Structural
69
+ confidence and gene-expression evidence remain contextual evidence only.
70
+
71
+ ## 8. Stress And Exercise States (`F08`)
72
+
73
+ Stress and exercise are filtered scenario inputs that alter sensitivity and
74
+ glucose fluxes. They are not measured cortisol, adrenaline, AMPK or lactate
75
+ concentrations. Their coefficients require empirical calibration before a
76
+ specific population claim can be made.
77
+
78
+ ## 9. Exercise/GLUT4 Abstraction (`F09`)
79
+
80
+ The bounded `GLUT4_active` state adds insulin-independent glucose uptake during
81
+ exercise. It captures a plausible direction of effect but is not a molecular
82
+ translocation model and cannot be validated by a protein structure image alone.
83
+
84
+ ## 10. Circadian/Dawn Term (`F10`)
85
+
86
+ A gated Fourier profile can perturb endogenous glucose production. It is off or
87
+ weak in baseline profiles and is a configurable circadian stressor, not a model
88
+ of measured growth hormone or cortisol secretion.
89
+
90
+ ## 11. Counter-Regulatory Rescue (`F11`)
91
+
92
+ Low glucose activates a bounded increase in endogenous glucose production. The
93
+ response is reduced by the antecedent-hypoglycaemia memory state. This tests the
94
+ direction of counter-regulation; it does not estimate a patient's glucagon or
95
+ epinephrine response.
96
+
97
+ ## 12. Antecedent-Hypoglycaemia Memory (`F12`)
98
+
99
+ The HAAF-like state accumulates gradually during hypoglycaemia and recovers over
100
+ days. It is deliberately bounded and labelled heuristic. It must never be
101
+ reported as a diagnosis of impaired awareness or HAAF.
102
+
103
+ ## 13. Exogenous Glucagon PK/PD (`F13`)
104
+
105
+ The two-state absorption and clearance equations use literature-informed ranges,
106
+ with exact mass conversion (`1 mg = 10^9 pg`). The bounded concentration-effect
107
+ coupling is an IINTS adaptation and has not been established as a dose-selection
108
+ model for patient care.
109
+
110
+ ## 14. Renal Glucose Loss (`F14`)
111
+
112
+ A smooth softplus approximation replaces a discontinuous renal threshold. This
113
+ is numerically useful and represents threshold/splay behaviour qualitatively,
114
+ but renal threshold varies between and within people. It is not an eGFR or renal
115
+ disease model.
116
+
117
+ ## 15. CGM Observation Model (`F15`)
118
+
119
+ Latent blood glucose passes through an explicit dead time and a first-order
120
+ blood-to-interstitial compartment before bias, drift, dropout and seeded noise
121
+ are applied. This separates physiology from measurement. It is a generic CGM
122
+ observation model, not a Dexcom-, Libre- or Medtronic-equivalent sensor model.
123
+
124
+ ## Additional Advanced Stressors
125
+
126
+ The advanced model also exposes FFA, ketone, protein, fat, illness, menstrual
127
+ cycle, beta-cell and cannula-age states. These are hypothesis-generating stress
128
+ tests. In particular:
129
+
130
+ - ketone state is not a DKA diagnosis;
131
+ - menstrual phase is not inferred from hormone measurements;
132
+ - cannula ageing is not a device-specific failure probability;
133
+ - protein-to-glucose conversion is a simplified delayed flux;
134
+ - beta-cell/graft states are not transplant efficacy predictions.
135
+
136
+ ## AI, Calibration And Validation Boundary
137
+
138
+ LLMs may summarize deterministic outputs but never calculate the ODEs, safety
139
+ limits or formula values. The glucose predictor's physiology-aware loss is a
140
+ regularizer, not a full ODE-residual PINN. Parameter calibration estimates a
141
+ small bounded profile from CGM and event data; those parameters are generally
142
+ not uniquely identifiable and require held-out and external validation.
143
+
144
+ Scientific use therefore requires reporting the model version, parameter set,
145
+ seed, input semantics, evidence class, numerical checks, held-out performance,
146
+ failure cases and limitations with every result.
@@ -636,7 +636,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
636
636
  ### Public Functions
637
637
 
638
638
  - `compute_metrics(results_df: pd.DataFrame) -> Dict[str, float]`
639
- - `run_baseline_comparison(patient_params: Dict[str, Any], stress_event_payloads: List[Dict[str, Any]], duration: int, time_step: int, primary_label: str, primary_results: pd.DataFrame, primary_safety: Dict[str, Any], compare_standard_pump: bool = True, seed: Optional[int] = None) -> Dict[str, Any]`
639
+ - `run_baseline_comparison(patient_params: Dict[str, Any], stress_event_payloads: List[Dict[str, Any]], duration: int, time_step: int, primary_label: str, primary_results: pd.DataFrame, primary_safety: Dict[str, Any], compare_standard_pump: bool = True, seed: Optional[int] = None, patient_model_type: str = 'auto') -> Dict[str, Any]`
640
640
  - `write_baseline_comparison(comparison: Dict[str, Any], output_dir: Path) -> Dict[str, str]`
641
641
 
642
642
  ## `iints.analysis.booth_demo`
@@ -749,13 +749,13 @@ No public classes, functions, or all-caps constants are declared directly in thi
749
749
  ## `iints.analysis.edge_performance_monitor`
750
750
 
751
751
  - Source: `src/iints/analysis/edge_performance_monitor.py`
752
- - Summary: Edge AI Performance Monitor - IINTS-AF Jetson Nano performance validation for medical device standards
752
+ - Summary: Edge AI Performance Monitor - IINTS-AF Jetson Nano research benchmarking for latency and resource use
753
753
 
754
754
  ### Public Classes
755
755
 
756
756
  | Class | Signature | Summary |
757
757
  | --- | --- | --- |
758
- | `EdgeAIPerformanceMonitor` | `EdgeAIPerformanceMonitor` | Monitor Jetson Nano performance for medical device validation |
758
+ | `EdgeAIPerformanceMonitor` | `EdgeAIPerformanceMonitor` | Monitor edge performance; results are not medical-device validation. |
759
759
 
760
760
  #### `EdgeAIPerformanceMonitor` methods
761
761
 
@@ -1423,7 +1423,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
1423
1423
  - `research_glucose_model_init(output_dir: Annotated[Path, typer.Option(help='Output directory for the glucose model starter files.')] = Path('models/iints-glucose-forecast-v0'), profile: Annotated[str, typer.Option(help='Training profile: smoke, quick, long, or paper.')] = 'long', history_minutes: Annotated[int, typer.Option(help='Model history window in minutes.')] = 360, horizon_minutes: Annotated[int, typer.Option(help='Prediction horizon in minutes.')] = 120, time_step_minutes: Annotated[int, typer.Option(help='Expected CGM sample interval in minutes.')] = 5) -> None`
1424
1424
  - `research_glucose_model_train(data: Annotated[Path, typer.Option(help='Normalized glucose training dataset CSV/Parquet.')], output_dir: Annotated[Path, typer.Option(help='Output directory for predictor.pt and training_report.json.')] = Path('models/iints-glucose-forecast-v0'), config: Annotated[Optional[Path], typer.Option(help='Config YAML. If omitted, one is generated.')] = None, profile: Annotated[str, typer.Option(help='Generated config profile: smoke, quick, long, or paper.')] = 'long', epochs: Annotated[Optional[int], typer.Option(help='Override training.epochs for long local runs.')] = None, batch_size: Annotated[Optional[int], typer.Option(help='Override training.batch_size.')] = None, learning_rate: Annotated[Optional[float], typer.Option(help='Override training.learning_rate.')] = None, warm_start: Annotated[Optional[Path], typer.Option(help='Optional predictor.pt warm-start checkpoint.')] = None, export_hf: Annotated[bool, typer.Option('--export-hf/--no-export-hf', help='Build a Hugging Face-ready folder after training.')] = True, repo_id: Annotated[Optional[str], typer.Option(help='Optional Hugging Face repo id for model card hints.')] = None, dataset_manifest: Annotated[Optional[Path], typer.Option(help='Optional dataset manifest for HF public metadata.')] = None, comparison_dir: Annotated[Optional[Path], typer.Option(help='Optional glucose-model compare output directory to bundle with the Hugging Face export.')] = None) -> None`
1425
1425
  - `research_glucose_model_export_hf(model_dir: Annotated[Path, typer.Option(help='Directory containing predictor.pt and training_report.json.')] = Path('models/iints-glucose-forecast-v0'), output_dir: Annotated[Path, typer.Option(help='Output directory for the Hugging Face-ready bundle.')] = Path('models/iints-glucose-forecast-v0/huggingface'), repo_id: Annotated[Optional[str], typer.Option(help='Optional Hugging Face repo id, e.g. user/iints-glucose-forecast-v0.')] = None, dataset_manifest: Annotated[Optional[Path], typer.Option(help='Optional private manifest to redact into public metadata.')] = None, comparison_dir: Annotated[Optional[Path], typer.Option(help='Optional glucose-model compare output directory to include comparison metrics and reports.')] = None) -> None`
1426
- - `research_glucose_model_compare(data: Annotated[Path, typer.Option(help='Normalized glucose dataset CSV/Parquet to evaluate on.')], output_dir: Annotated[Path, typer.Option(help='Output directory for comparison reports.')] = Path('results/glucose_model_comparison'), model_specs: Annotated[Optional[List[str]], typer.Option('--model', '-m', help='Model checkpoint as label=path/to/predictor.pt. Repeat for MSE/Band/PINN models.')] = None, config: Annotated[Optional[Path], typer.Option(help='Comparison config YAML. Defaults to glucose-model quick config.')] = None, include_baselines: Annotated[bool, typer.Option('--include-baselines/--no-baselines', help='Compare transparent LastValue/LinearTrend/Physiology baselines.')] = True, mc_samples: Annotated[int, typer.Option(help='MC dropout samples for checkpoint uncertainty. Use 0 to disable.')] = 0, max_roc_mgdl_min: Annotated[float, typer.Option(help='Maximum plausible predicted glucose rate-of-change in mg/dL/min.')] = 10.0) -> None`
1426
+ - `research_glucose_model_compare(data: Annotated[Path, typer.Option(help='Normalized glucose dataset CSV/Parquet to evaluate on.')], output_dir: Annotated[Path, typer.Option(help='Output directory for comparison reports.')] = Path('results/glucose_model_comparison'), model_specs: Annotated[Optional[List[str]], typer.Option('--model', '-m', help='Model checkpoint as label=path/to/predictor.pt. Repeat for MSE, band-weighted, or physiology-regularized models (legacy name: PINN).')] = None, config: Annotated[Optional[Path], typer.Option(help='Comparison config YAML. Defaults to glucose-model quick config.')] = None, include_baselines: Annotated[bool, typer.Option('--include-baselines/--no-baselines', help='Compare transparent LastValue/LinearTrend/Physiology baselines.')] = True, mc_samples: Annotated[int, typer.Option(help='MC dropout samples for checkpoint uncertainty. Use 0 to disable.')] = 0, max_roc_mgdl_min: Annotated[float, typer.Option(help='Maximum plausible predicted glucose rate-of-change in mg/dL/min.')] = 3.0) -> None`
1427
1427
  - `research_glucose_model_jetson_train_hf(dataset: Annotated[Path, typer.Option(help='Normalized glucose training dataset CSV/Parquet built by glucose-model build-dataset.')] = Path('models/iints-glucose-forecast-v0/dataset/glucose_training_dataset.csv'), base_hf_repo: Annotated[Optional[str], typer.Option('--base-hf-repo', '--repo-id', help='External Hugging Face model to pull from (e.g. username/GlucoFM). If empty, pulls from target_hf_repo. --repo-id is kept as a compatibility alias.')] = None, target_hf_repo: Annotated[Optional[str], typer.Option('--target-hf-repo', help='Your Hugging Face model repo id to push to, e.g. username/iints-glucose-forecast-v0.')] = 'IINTS/iints-glucose-forecast-v0', local_base_dir: Annotated[Optional[Path], typer.Option(help='Use an already downloaded base model folder instead of downloading from Hugging Face.')] = None, work_dir: Annotated[Path, typer.Option(help='Jetson training workspace for downloads, trials, champion, and leaderboard.')] = Path('models/jetson_hf_training'), revision: Annotated[Optional[str], typer.Option(help='Optional Hugging Face revision/tag/branch to download.')] = None, profile: Annotated[str, typer.Option(help='Fallback config profile when the HF repo has no glucose_model_config.yaml.')] = 'quick', max_trials: Annotated[int, typer.Option(help='Number of trials. Use 0 to keep training until Ctrl+C.')] = 1, epochs: Annotated[int, typer.Option(help='Fine-tune epochs per trial.')] = 8, batch_size: Annotated[int, typer.Option(help='Batch size per trial; keep modest on Jetson Nano.')] = 64, timeout_minutes: Annotated[float, typer.Option(help='Timeout for each train/compare subprocess.')] = 45.0, cooldown_seconds: Annotated[float, typer.Option(help='Pause between trials to keep Jetson thermals stable.')] = 10.0, min_lr: Annotated[float, typer.Option(help='Minimum sampled learning rate for fine-tuning.')] = 1e-05, max_lr: Annotated[float, typer.Option(help='Maximum sampled learning rate for fine-tuning.')] = 0.0005, min_pinn_lambda: Annotated[float, typer.Option(help='Minimum sampled PINN loss weight.')] = 0.05, max_pinn_lambda: Annotated[float, typer.Option(help='Maximum sampled PINN loss weight.')] = 0.8, min_score_improvement: Annotated[float, typer.Option(help='Required composite-score improvement before replacing the local champion.')] = 0.0, physiology_weight: Annotated[float, typer.Option(help='Composite score penalty weight for physiological violations.')] = 0.1, hypo_weight: Annotated[float, typer.Option(help='Composite score penalty weight for missed/false hypo behavior.')] = 0.2, seed: Annotated[int, typer.Option(help='Random seed for reproducible trial configs.')] = 42, dataset_manifest: Annotated[Optional[Path], typer.Option(help='Optional dataset manifest to redact into the HF export bundle.')] = None, upload_mode: Annotated[str, typer.Option(help='Upload behavior: none, pr, or direct. Default is safe local-only.')] = 'none', private_upload: Annotated[bool, typer.Option('--private-upload/--public-upload', help='Mark HF upload private when upload is enabled.')] = True, force_download: Annotated[bool, typer.Option('--force-download/--reuse-download', help='Re-download the HF base model even if cached locally.')] = False, hf_home: Annotated[Optional[Path], typer.Option(help='Optional HF_HOME cache directory. Defaults inside the Jetson work dir.')] = None) -> None`
1428
1428
  - `research_parity_check(model: Annotated[Path, typer.Option(help='Predictor checkpoint (.pt)')], onnx: Annotated[Path, typer.Option(help='Exported ONNX model path')], samples: Annotated[int, typer.Option(help='Random sample count for parity check')] = 64, tolerance: Annotated[float, typer.Option(help='Maximum allowed absolute error')] = 0.001, seed: Annotated[int, typer.Option(help='Random seed')] = 42, output_json: Annotated[Optional[Path], typer.Option(help='Write parity report JSON')] = None)`
1429
1429
  - `research_registry_list(registry: Annotated[Path, typer.Option(help='Path to model registry JSON')] = Path('models/registry.json'), stage: Annotated[Optional[str], typer.Option(help='Optional stage filter (candidate/validated/production/archived)')] = None, limit: Annotated[int, typer.Option(help='Max rows to print')] = 30)`
@@ -1698,7 +1698,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
1698
1698
 
1699
1699
  | Class | Signature | Summary |
1700
1700
  | --- | --- | --- |
1701
- | `MPCController` | `MPCController(InsulinAlgorithm)` | Agentic Physics-Informed MPC. Simulates the biological ODEs into the future to find the safest dose. |
1701
+ | `MPCController` | `MPCController(InsulinAlgorithm)` | Research nonlinear MPC prototype using an adapted Bergman model. |
1702
1702
 
1703
1703
  #### `MPCController` methods
1704
1704
 
@@ -1864,7 +1864,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
1864
1864
 
1865
1865
  | Class | Signature | Summary |
1866
1866
  | --- | --- | --- |
1867
- | `DigitalTwinCalibrator` | `DigitalTwinCalibrator` | AI-driven Calibration Engine for creating a personalized Digital Twin. It takes historical data (CGM, carbs, insulin) and uses scipy optimization (L-BFGS-B) to find the metabolic "Big 5" parameters that minimize the RMSE between the simulation and real patient data. |
1867
+ | `DigitalTwinCalibrator` | `DigitalTwinCalibrator` | Research parameter-calibration engine for a Hovorka simulation profile. |
1868
1868
 
1869
1869
  #### `DigitalTwinCalibrator` methods
1870
1870
 
@@ -1934,7 +1934,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
1934
1934
  ## `iints.core.patient.bergman_model`
1935
1935
 
1936
1936
  - Source: `src/iints/core/patient/bergman_model.py`
1937
- - Summary: Bergman Minimal Model — IINTS-AF ================================== ODE-based patient model inspired by the Bergman Minimal Model with an additional gut absorption compartment for realistic carbohydrate dynamics.
1937
+ - Summary: Bergman Minimal Model — IINTS-AF ================================== ODE-based patient model inspired by the Bergman Minimal Model with an adapted gut absorption chain for delayed carbohydrate appearance.
1938
1938
 
1939
1939
  ### Public Classes
1940
1940
 
@@ -1962,7 +1962,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
1962
1962
  ## `iints.core.patient.hovorka_model`
1963
1963
 
1964
1964
  - Source: `src/iints/core/patient/hovorka_model.py`
1965
- - Summary: Improved Hovorka Model - IINTS-AF ================================== Based on standard Hovorka artificial pancreas equations and extended to match the IINTS simulator's interface.
1965
+ - Summary: Adapted Hovorka Research Model - IINTS-AF ========================================== Based on published Hovorka artificial-pancreas equations and extended with explicit research stressors to match the IINTS simulator interface. The extensions are not part of the canonical Hovorka model and are not clinically validated patient physiology.
1966
1966
 
1967
1967
  ### Public Classes
1968
1968
 
@@ -1996,6 +1996,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
1996
1996
 
1997
1997
  | Class | Signature | Summary |
1998
1998
  | --- | --- | --- |
1999
+ | `PatientModelDomainError` | `PatientModelDomainError(RuntimeError)` | The model left its declared numerical/physiological validity domain. |
1999
2000
  | `CustomPatientModel` | `CustomPatientModel` | A simplified patient model for simulating blood glucose dynamics. This model is intended for educational and stress-testing purposes, not for clinical accuracy. |
2000
2001
 
2001
2002
  #### `CustomPatientModel` methods
@@ -2040,6 +2041,8 @@ No public classes, functions, or all-caps constants are declared directly in thi
2040
2041
  - `carbs_on_board(self)`
2041
2042
  - `trigger_event(self, event_type, value)`
2042
2043
  - `get_patient_state(self)`
2044
+ - `get_ratio_state(self) -> Dict[str, float]`
2045
+ - `set_ratio_state(self, isf: Optional[float] = None, icr: Optional[float] = None, basal_rate: Optional[float] = None, dia_minutes: Optional[float] = None) -> None`
2043
2046
 
2044
2047
  ## `iints.core.patient.physiology`
2045
2048
 
@@ -2048,9 +2051,20 @@ No public classes, functions, or all-caps constants are declared directly in thi
2048
2051
 
2049
2052
  ### Public Functions
2050
2053
 
2054
+ - `validated_snapshot_scalar(value: Any, *, name: str, minimum: float | None = None, maximum: float | None = None) -> float`
2055
+ - `validated_snapshot_bool(value: Any, *, name: str) -> bool`
2056
+ - `validated_activity_events(value: Any, *, name: str, age_key: str) -> list[dict[str, float]]`
2057
+ - `glucagon_mg_to_pg(dose_mg: float) -> float`
2058
+ - `dawn_glucose_rate_mgdl_min(current_time_minutes: float, *, peak_strength_mgdl_per_hour: float, start_hour: float, end_hour: float) -> float`
2059
+ - `antecedent_hypoglycemia_memory_derivative(glucose_mgdl: float, memory: float, *, awareness_threshold_mgdl: float = 70.0, severe_threshold_mgdl: float = 54.0, build_time_constant_minutes: float = 360.0, recovery_time_constant_minutes: float = 4320.0) -> float`
2060
+ - `counterregulatory_rescue_multiplier(glucose_mgdl: float, memory: float, *, threshold_mgdl: float = 70.0, half_activation_mgdl: float = 16.0, maximum_fractional_increase: float = 1.0) -> float`
2051
2061
  - `smooth_threshold_excess(value: float, *, threshold: float, splay: float = 10.0) -> float`
2052
2062
  - `renal_glucose_clearance_concentration(glucose_mgdl: float, *, threshold_mgdl: float = 180.0, gain: float = 0.05, splay_mgdl: float = 10.0) -> float`
2053
2063
 
2064
+ ### Public Constants
2065
+
2066
+ - `PICOGRAMS_PER_MILLIGRAM`
2067
+
2054
2068
  ## `iints.core.patient.profile`
2055
2069
 
2056
2070
  - Source: `src/iints/core/patient/profile.py`
@@ -2235,7 +2249,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
2235
2249
 
2236
2250
  #### `IndependentSupervisor` methods
2237
2251
 
2238
- - `evaluate_safety(self, current_glucose: float, proposed_insulin: float, current_time: float, current_iob: float = 0.0, predicted_glucose_30min: Optional[float] = None, basal_insulin_units: Optional[float] = None, basal_limit_units: Optional[float] = None) -> Dict[str, Any]`
2252
+ - `evaluate_safety(self, current_glucose: float, proposed_insulin: float, current_time: float, current_iob: float = 0.0, predicted_glucose_30min: Optional[float] = None, basal_insulin_units: Optional[float] = None, basal_limit_units: Optional[float] = None, meal_bolus_units: Optional[float] = None) -> Dict[str, Any]`
2239
2253
  - `get_safety_report(self) -> Dict[str, Any]`
2240
2254
  - `reset(self) -> None`
2241
2255
  - `get_state(self) -> Dict[str, Any]`
@@ -3559,7 +3573,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
3559
3573
  ## `iints.population.generator`
3560
3574
 
3561
3575
  - Source: `src/iints/population/generator.py`
3562
- - Summary: Population Generator — IINTS-AF ================================ Generates a virtual population of N patients with physiological variation around a base patient profile. Each parameter is drawn from a configurable distribution (truncated normal or log-normal) whose bounds respect the clinically valid ranges defined in the SDK validation schemas.
3576
+ - Summary: Population Generator — IINTS-AF ================================ Generates a virtual population of N patients with physiological variation around a base patient profile. Each parameter is drawn from a configurable distribution (truncated normal or log-normal) whose bounds respect the configured research ranges defined in the SDK schemas. These bounds are not population-validation or clinical-validity claims.
3563
3577
 
3564
3578
  ### Public Classes
3565
3579
 
@@ -4051,7 +4065,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
4051
4065
 
4052
4066
  ### Public Functions
4053
4067
 
4054
- - `standardize_glucose_forecast_frame(df: pd.DataFrame, *, source_label: str, time_step_minutes: int = 5, subject_prefix: Optional[str] = None, max_gap_multiplier: float = 2.5) -> pd.DataFrame`
4068
+ - `standardize_glucose_forecast_frame(df: pd.DataFrame, *, source_label: str, time_step_minutes: int = 5, subject_prefix: Optional[str] = None, max_gap_multiplier: float = 2.5, glucose_bounds_mgdl: tuple[float, float] = (20.0, 600.0)) -> pd.DataFrame`
4055
4069
  - `glucose_model_config_payload(*, profile: str = 'long', history_minutes: int = 360, horizon_minutes: int = 120, time_step_minutes: int = 5, feature_columns: Optional[Sequence[str]] = None) -> dict[str, Any]`
4056
4070
  - `write_glucose_model_config(path: Path, **kwargs: Any) -> dict[str, Any]`
4057
4071
  - `build_glucose_training_pack(input_paths: Sequence[Path], output_dir: Path, *, labels: Optional[Sequence[str]] = None, output_format: str = 'csv', profile: str = 'long', history_minutes: int = 360, horizon_minutes: int = 120, time_step_minutes: int = 5) -> GlucoseTrainingPack`
@@ -4066,8 +4080,8 @@ No public classes, functions, or all-caps constants are declared directly in thi
4066
4080
  - `render_hf_publishing_notes(*, repo_id: Optional[str]) -> str`
4067
4081
  - `parse_model_specs(values: Sequence[str]) -> list[GlucoseModelSpec]`
4068
4082
  - `horizon_error_rows(*, label: str, observed: np.ndarray, predicted: np.ndarray, time_step_minutes: int) -> list[dict[str, Any]]`
4069
- - `physiological_violation_report(X: np.ndarray, predicted: np.ndarray, *, feature_columns: Sequence[str], time_step_minutes: int, absolute_low_mgdl: float = 20.0, absolute_high_mgdl: float = 600.0, display_low_mgdl: float = 35.0, display_high_mgdl: float = 450.0, max_roc_mgdl_min: float = 10.0, suspicious_roc_mgdl_min: float = 2.0) -> dict[str, Any]`
4070
- - `compare_glucose_models(*, data_path: Path, output_dir: Path, model_specs: Sequence[GlucoseModelSpec] = (), config_path: Optional[Path] = None, include_baselines: bool = True, mc_samples: int = 0, max_roc_mgdl_min: float = 10.0) -> GlucoseModelComparisonBundle`
4083
+ - `physiological_violation_report(X: np.ndarray, predicted: np.ndarray, *, feature_columns: Sequence[str], time_step_minutes: int, absolute_low_mgdl: float = 20.0, absolute_high_mgdl: float = 600.0, display_low_mgdl: float = 35.0, display_high_mgdl: float = 450.0, max_roc_mgdl_min: float = 3.0, suspicious_roc_mgdl_min: float = 2.0) -> dict[str, Any]`
4084
+ - `compare_glucose_models(*, data_path: Path, output_dir: Path, model_specs: Sequence[GlucoseModelSpec] = (), config_path: Optional[Path] = None, include_baselines: bool = True, mc_samples: int = 0, max_roc_mgdl_min: float = 3.0) -> GlucoseModelComparisonBundle`
4071
4085
 
4072
4086
  ### Public Constants
4073
4087
 
@@ -4603,7 +4617,7 @@ No public classes, functions, or all-caps constants are declared directly in thi
4603
4617
 
4604
4618
  | Class | Signature | Summary |
4605
4619
  | --- | --- | --- |
4606
- | `DigitalTwinCalibrator` | `DigitalTwinCalibrator` | Fits the AdvancedMetabolicModel parameters (p1, p2, p3, Gb) to real patient data (like the OhioT1DM dataset) to create a true Digital Twin. |
4620
+ | `DigitalTwinCalibrator` | `DigitalTwinCalibrator` | Fit a limited AdvancedMetabolicModel parameter set to research data. |
4607
4621
 
4608
4622
  #### `DigitalTwinCalibrator` methods
4609
4623
 
@@ -54,12 +54,21 @@ result = review_eu_ai_pact_readiness({
54
54
  print(result.status)
55
55
  ```
56
56
 
57
+ `compliance_score` accepts either a fraction (`0.99`) or the historical
58
+ percentage representation (`99`). The SDK normalizes both to a fraction and
59
+ stores the raw value in the evidence output. Values outside these two declared
60
+ scales are rejected rather than silently reinterpreted.
61
+
57
62
  ## Interpretation
58
63
 
59
64
  - `research_ready`: the evidence bundle is complete enough for internal research review.
60
65
  - `needs_review`: no hard blocker, but the bundle still needs explanation or cleanup.
61
66
  - `blocked`: do not use the bundle for public AI claims until the missing controls are resolved.
62
67
 
68
+ These statuses describe completion of an IINTS self-assessment evidence
69
+ bundle. They are not an official EU AI Act classification, legal compliance
70
+ decision, notified-body assessment, CE marking, or medical-device approval.
71
+
63
72
  ## Official Sources
64
73
 
65
74
  - European Commission: [AI Pact](https://digital-strategy.ec.europa.eu/en/policies/ai-pact)