iints-sdk-python35 1.5.0__tar.gz → 1.5.1__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 (221) hide show
  1. iints_sdk_python35-1.5.1/PKG-INFO +99 -0
  2. iints_sdk_python35-1.5.1/README.md +46 -0
  3. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/pyproject.toml +1 -2
  4. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/__init__.py +9 -1
  5. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/cli.py +9 -0
  6. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/prompts.py +5 -4
  7. iints_sdk_python35-1.5.1/src/iints/analysis/__init__.py +46 -0
  8. iints_sdk_python35-1.5.1/src/iints/analysis/study_analysis.py +721 -0
  9. iints_sdk_python35-1.5.1/src/iints/analysis/study_poster.py +150 -0
  10. iints_sdk_python35-1.5.1/src/iints/analysis/study_protocol.py +310 -0
  11. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/cli/cli.py +846 -15
  12. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/__init__.py +20 -0
  13. iints_sdk_python35-1.5.1/src/iints/data/certify.py +80 -0
  14. iints_sdk_python35-1.5.1/src/iints/data/study_corruption.py +267 -0
  15. iints_sdk_python35-1.5.1/src/iints/scenarios/__init__.py +18 -0
  16. iints_sdk_python35-1.5.1/src/iints/scenarios/study_pack.py +293 -0
  17. iints_sdk_python35-1.5.1/src/iints_sdk_python35.egg-info/PKG-INFO +99 -0
  18. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints_sdk_python35.egg-info/SOURCES.txt +7 -0
  19. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints_sdk_python35.egg-info/entry_points.txt +0 -1
  20. iints_sdk_python35-1.5.1/tests/test_cli_expo_tools.py +246 -0
  21. iints_sdk_python35-1.5.0/PKG-INFO +0 -425
  22. iints_sdk_python35-1.5.0/README.md +0 -372
  23. iints_sdk_python35-1.5.0/src/iints/analysis/__init__.py +0 -18
  24. iints_sdk_python35-1.5.0/src/iints/scenarios/__init__.py +0 -3
  25. iints_sdk_python35-1.5.0/src/iints_sdk_python35.egg-info/PKG-INFO +0 -425
  26. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/LICENSE +0 -0
  27. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/LICENSE-MIT-IINTS-LEGACY +0 -0
  28. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/NOTICE +0 -0
  29. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/setup.cfg +0 -0
  30. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/__init__.py +0 -0
  31. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/assistant.py +0 -0
  32. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/backends/__init__.py +0 -0
  33. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/backends/base.py +0 -0
  34. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/backends/mistral_api.py +0 -0
  35. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/backends/ollama.py +0 -0
  36. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/mdmp_guard.py +0 -0
  37. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/model_catalog.py +0 -0
  38. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/ai/prepare.py +0 -0
  39. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/algorithm_xray.py +0 -0
  40. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/baseline.py +0 -0
  41. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/booth_demo.py +0 -0
  42. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/carelink_workbench.py +0 -0
  43. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/clinical_benchmark.py +0 -0
  44. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/clinical_metrics.py +0 -0
  45. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/clinical_tir_analyzer.py +0 -0
  46. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/diabetes_metrics.py +0 -0
  47. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/edge_efficiency.py +0 -0
  48. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/edge_performance_monitor.py +0 -0
  49. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/explainability.py +0 -0
  50. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/explainable_ai.py +0 -0
  51. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/hardware_benchmark.py +0 -0
  52. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/metrics.py +0 -0
  53. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/population_report.py +0 -0
  54. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/poster.py +0 -0
  55. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/reporting.py +0 -0
  56. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/safety_index.py +0 -0
  57. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/sensor_filtering.py +0 -0
  58. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/analysis/validator.py +0 -0
  59. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/api/__init__.py +0 -0
  60. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/api/base_algorithm.py +0 -0
  61. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/api/registry.py +0 -0
  62. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/api/template_algorithm.py +0 -0
  63. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/assets/iints_logo.png +0 -0
  64. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/cli/__init__.py +0 -0
  65. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/__init__.py +0 -0
  66. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/__init__.py +0 -0
  67. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/battle_runner.py +0 -0
  68. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/correction_bolus.py +0 -0
  69. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/discovery.py +0 -0
  70. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/fixed_basal_bolus.py +0 -0
  71. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/hybrid_algorithm.py +0 -0
  72. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/lstm_algorithm.py +0 -0
  73. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/mock_algorithms.py +0 -0
  74. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/pid_controller.py +0 -0
  75. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/algorithms/standard_pump_algo.py +0 -0
  76. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/device.py +0 -0
  77. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/device_manager.py +0 -0
  78. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/devices/__init__.py +0 -0
  79. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/devices/models.py +0 -0
  80. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/patient/__init__.py +0 -0
  81. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/patient/bergman_model.py +0 -0
  82. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/patient/models.py +0 -0
  83. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/patient/patient_factory.py +0 -0
  84. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/patient/profile.py +0 -0
  85. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/safety/__init__.py +0 -0
  86. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/safety/config.py +0 -0
  87. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/safety/input_validator.py +0 -0
  88. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/safety/supervisor.py +0 -0
  89. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/simulation/__init__.py +0 -0
  90. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/simulation/scenario_parser.py +0 -0
  91. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/simulator.py +0 -0
  92. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/core/supervisor.py +0 -0
  93. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/adapter.py +0 -0
  94. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/column_mapper.py +0 -0
  95. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/contracts.py +0 -0
  96. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/datasets.json +0 -0
  97. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/demo/__init__.py +0 -0
  98. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/demo/demo_cgm.csv +0 -0
  99. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/guardians.py +0 -0
  100. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/importer.py +0 -0
  101. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/ingestor.py +0 -0
  102. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/mdmp_visualizer.py +0 -0
  103. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/nightscout.py +0 -0
  104. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/quality_checker.py +0 -0
  105. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/registry.py +0 -0
  106. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/runner.py +0 -0
  107. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/synthetic_mirror.py +0 -0
  108. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/tidepool.py +0 -0
  109. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/universal_parser.py +0 -0
  110. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/clinic_safe_baseline.yaml +0 -0
  111. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/clinic_safe_hyper_challenge.yaml +0 -0
  112. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/clinic_safe_hypo_prone.yaml +0 -0
  113. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/clinic_safe_midnight.yaml +0 -0
  114. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/clinic_safe_pizza.yaml +0 -0
  115. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/clinic_safe_stress_meal.yaml +0 -0
  116. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/default_patient.yaml +0 -0
  117. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/data/virtual_patients/patient_559_config.yaml +0 -0
  118. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/demo_assets.py +0 -0
  119. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/emulation/__init__.py +0 -0
  120. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/emulation/legacy_base.py +0 -0
  121. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/emulation/medtronic_780g.py +0 -0
  122. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/emulation/omnipod_5.py +0 -0
  123. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/emulation/tandem_controliq.py +0 -0
  124. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/highlevel.py +0 -0
  125. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/learning/__init__.py +0 -0
  126. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/learning/autonomous_optimizer.py +0 -0
  127. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/learning/learning_system.py +0 -0
  128. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/mdmp/__init__.py +0 -0
  129. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/mdmp/backend.py +0 -0
  130. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/metrics.py +0 -0
  131. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/population/__init__.py +0 -0
  132. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/population/generator.py +0 -0
  133. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/population/runner.py +0 -0
  134. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/presets/__init__.py +0 -0
  135. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/presets/evidence_sources.yaml +0 -0
  136. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/presets/forecast_calibration_profiles.yaml +0 -0
  137. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/presets/golden_benchmark.yaml +0 -0
  138. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/presets/presets.json +0 -0
  139. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/presets/safety_contract_default.yaml +0 -0
  140. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/presets/validation_profiles.yaml +0 -0
  141. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/__init__.py +0 -0
  142. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/audit.py +0 -0
  143. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/calibration_gate.py +0 -0
  144. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/config.py +0 -0
  145. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/dataset.py +0 -0
  146. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/evaluation.py +0 -0
  147. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/losses.py +0 -0
  148. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/metrics.py +0 -0
  149. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/model_registry.py +0 -0
  150. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/research/predictor.py +0 -0
  151. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/scenarios/generator.py +0 -0
  152. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/__init__.py +0 -0
  153. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/default_algorithm.py +0 -0
  154. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/demos/__init__.py +0 -0
  155. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/demos/live_stage_demo.py +0 -0
  156. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/scenarios/__init__.py +0 -0
  157. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/scenarios/chaos_insulin_stacking.json +0 -0
  158. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/scenarios/chaos_runaway_ai.json +0 -0
  159. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/scenarios/example_scenario.json +0 -0
  160. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/templates/scenarios/exercise_stress.json +0 -0
  161. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/utils/__init__.py +0 -0
  162. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/utils/plotting.py +0 -0
  163. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/utils/run_io.py +0 -0
  164. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/validation/__init__.py +0 -0
  165. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/validation/golden.py +0 -0
  166. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/validation/replay.py +0 -0
  167. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/validation/run_validation.py +0 -0
  168. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/validation/safety_contract.py +0 -0
  169. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/validation/schemas.py +0 -0
  170. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/visualization/__init__.py +0 -0
  171. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/visualization/cockpit.py +0 -0
  172. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints/visualization/uncertainty_cloud.py +0 -0
  173. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints_sdk_python35.egg-info/dependency_links.txt +0 -0
  174. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints_sdk_python35.egg-info/requires.txt +0 -0
  175. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/iints_sdk_python35.egg-info/top_level.txt +0 -0
  176. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_ai/__init__.py +0 -0
  177. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_ai/lineage.py +0 -0
  178. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/__init__.py +0 -0
  179. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/audit.py +0 -0
  180. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/bias_hooks.py +0 -0
  181. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/bundle.py +0 -0
  182. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/certification.py +0 -0
  183. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/cli.py +0 -0
  184. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/compare.py +0 -0
  185. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/conformance.py +0 -0
  186. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/contracts.py +0 -0
  187. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/crypto.py +0 -0
  188. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/data/conformance/vectors/delegation.json +0 -0
  189. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/data/conformance/vectors/fingerprint.json +0 -0
  190. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/data/conformance/vectors/grading.json +0 -0
  191. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/data/conformance/vectors/signing.json +0 -0
  192. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/delegate.py +0 -0
  193. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/diffing.py +0 -0
  194. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/drift.py +0 -0
  195. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/exceptions.py +0 -0
  196. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/fingerprint.py +0 -0
  197. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/fingerprint_store.py +0 -0
  198. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/hf.py +0 -0
  199. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/keys/mdmp_pub_v1.pem +0 -0
  200. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/llm_provenance.py +0 -0
  201. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/migrate.py +0 -0
  202. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/policy.py +0 -0
  203. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/prov.py +0 -0
  204. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/registry.py +0 -0
  205. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/runner.py +0 -0
  206. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/schema_export.py +0 -0
  207. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/synthetic.py +0 -0
  208. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/trust.py +0 -0
  209. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_core/visualizer.py +0 -0
  210. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_flavors/__init__.py +0 -0
  211. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_integrations/__init__.py +0 -0
  212. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_integrations/dvc.py +0 -0
  213. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_integrations/mlflow.py +0 -0
  214. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/src/mdmp_integrations/wandb.py +0 -0
  215. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/tests/test_bergman.py +0 -0
  216. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/tests/test_cli_booth_demo.py +0 -0
  217. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/tests/test_cli_carelink_workbench.py +0 -0
  218. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/tests/test_cli_demo_export.py +0 -0
  219. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/tests/test_cli_poster.py +0 -0
  220. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/tests/test_install_doctor.py +0 -0
  221. {iints_sdk_python35-1.5.0 → iints_sdk_python35-1.5.1}/tests/test_population.py +0 -0
@@ -0,0 +1,99 @@
1
+ Metadata-Version: 2.4
2
+ Name: iints-sdk-python35
3
+ Version: 1.5.1
4
+ Summary: A pre-clinical Edge-AI SDK for diabetes management validation.
5
+ Author-email: Rune Bobbaers <rune.bobbaers@gmail.com>
6
+ License-Expression: Apache-2.0
7
+ Project-URL: Homepage, https://github.com/python35/IINTS-SDK
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: Programming Language :: Python :: 3.10
10
+ Classifier: Programming Language :: Python :: 3.11
11
+ Classifier: Programming Language :: Python :: 3.12
12
+ Classifier: Programming Language :: Python :: 3.13
13
+ Classifier: Operating System :: OS Independent
14
+ Classifier: Development Status :: 5 - Production/Stable
15
+ Requires-Python: >=3.10
16
+ Description-Content-Type: text/markdown
17
+ License-File: LICENSE
18
+ License-File: NOTICE
19
+ License-File: LICENSE-MIT-IINTS-LEGACY
20
+ Requires-Dist: fpdf2>=2.8.0
21
+ Requires-Dist: matplotlib>=3.5.0
22
+ Requires-Dist: numpy>=1.24.0
23
+ Requires-Dist: openpyxl>=3.0.0
24
+ Requires-Dist: pandas>=2.0.0
25
+ Requires-Dist: pillow>=12.1.1
26
+ Requires-Dist: pydantic>=2.0.0
27
+ Requires-Dist: PyYAML
28
+ Requires-Dist: rich>=12.0.0
29
+ Requires-Dist: scipy>=1.9.0
30
+ Requires-Dist: seaborn>=0.11.0
31
+ Requires-Dist: typer[all]
32
+ Provides-Extra: dev
33
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
34
+ Requires-Dist: hypothesis>=6.0.0; extra == "dev"
35
+ Requires-Dist: flake8; extra == "dev"
36
+ Requires-Dist: mypy; extra == "dev"
37
+ Requires-Dist: pandas-stubs; extra == "dev"
38
+ Requires-Dist: types-PyYAML; extra == "dev"
39
+ Requires-Dist: types-psutil; extra == "dev"
40
+ Provides-Extra: torch
41
+ Requires-Dist: torch>=1.9.0; extra == "torch"
42
+ Provides-Extra: nightscout
43
+ Requires-Dist: py-nightscout; extra == "nightscout"
44
+ Provides-Extra: research
45
+ Requires-Dist: torch>=2.0.0; extra == "research"
46
+ Requires-Dist: pyarrow>=12.0.0; extra == "research"
47
+ Requires-Dist: h5py>=3.10.0; extra == "research"
48
+ Requires-Dist: onnx>=1.16.0; extra == "research"
49
+ Requires-Dist: onnxscript>=0.1.0; extra == "research"
50
+ Provides-Extra: mdmp
51
+ Requires-Dist: cryptography>=42.0.0; extra == "mdmp"
52
+ Dynamic: license-file
53
+
54
+ # IINTS-AF SDK
55
+ [![PyPI version](https://badge.fury.io/py/iints-sdk-python35.svg)](https://badge.fury.io/py/iints-sdk-python35)
56
+ [![Python Package CI](https://github.com/python35/IINTS-SDK/actions/workflows/python-package.yml/badge.svg)](https://github.com/python35/IINTS-SDK/actions/workflows/python-package.yml)
57
+ [![Docs](https://img.shields.io/badge/docs-IINTS--AF-0a66c2?style=flat&logo=firefox-browser&logoColor=white)](https://python35.github.io/IINTS-SDK/)
58
+
59
+ One platform for insulin-algorithm research.
60
+
61
+ IINTS-AF combines three layers in one SDK:
62
+ - **Simulate** insulin algorithms on virtual patients
63
+ - **Certify** the data and outputs with built-in trust grading
64
+ - **Understand** results with reports, posters, and local AI review
65
+
66
+ Docs: [python35.github.io/IINTS-SDK](https://python35.github.io/IINTS-SDK/)
67
+
68
+ ## Install
69
+ ```bash
70
+ python3 -m venv .venv
71
+ source .venv/bin/activate
72
+ python -m pip install -U pip
73
+ python -m pip install -U "iints-sdk-python35[mdmp]"
74
+ ```
75
+
76
+ Sanity check:
77
+ ```bash
78
+ iints doctor --smoke-run
79
+ ```
80
+
81
+ ## Quick Flow
82
+ ```bash
83
+ iints quickstart --project-name iints_quickstart
84
+ cd iints_quickstart
85
+ iints presets run --name baseline_t1d --algo algorithms/example_algorithm.py
86
+ iints data certify contracts/clinical_mdmp_contract.yaml results/<run_id>/results.csv --output-json results/<run_id>/certification.json
87
+ iints ai report results/<run_id>
88
+ ```
89
+
90
+ ## Read Next
91
+ - Start here: `docs/GETTING_STARTED.md`
92
+ - Installation and paths: `docs/INSTALLATION.md`
93
+ - Study analysis: `docs/STUDY_ANALYSIS.md`
94
+ - AI assistant: `docs/AI_ASSISTANT.md`
95
+ - Data certification: `docs/MDMP_QUICKSTART.md`
96
+ - Full manual: `docs/manuals/IINTS-AF_SDK_Manual.md`
97
+
98
+ ## Important
99
+ IINTS-AF is research software. It is not a medical device and does not provide clinical treatment advice.
@@ -0,0 +1,46 @@
1
+ # IINTS-AF SDK
2
+ [![PyPI version](https://badge.fury.io/py/iints-sdk-python35.svg)](https://badge.fury.io/py/iints-sdk-python35)
3
+ [![Python Package CI](https://github.com/python35/IINTS-SDK/actions/workflows/python-package.yml/badge.svg)](https://github.com/python35/IINTS-SDK/actions/workflows/python-package.yml)
4
+ [![Docs](https://img.shields.io/badge/docs-IINTS--AF-0a66c2?style=flat&logo=firefox-browser&logoColor=white)](https://python35.github.io/IINTS-SDK/)
5
+
6
+ One platform for insulin-algorithm research.
7
+
8
+ IINTS-AF combines three layers in one SDK:
9
+ - **Simulate** insulin algorithms on virtual patients
10
+ - **Certify** the data and outputs with built-in trust grading
11
+ - **Understand** results with reports, posters, and local AI review
12
+
13
+ Docs: [python35.github.io/IINTS-SDK](https://python35.github.io/IINTS-SDK/)
14
+
15
+ ## Install
16
+ ```bash
17
+ python3 -m venv .venv
18
+ source .venv/bin/activate
19
+ python -m pip install -U pip
20
+ python -m pip install -U "iints-sdk-python35[mdmp]"
21
+ ```
22
+
23
+ Sanity check:
24
+ ```bash
25
+ iints doctor --smoke-run
26
+ ```
27
+
28
+ ## Quick Flow
29
+ ```bash
30
+ iints quickstart --project-name iints_quickstart
31
+ cd iints_quickstart
32
+ iints presets run --name baseline_t1d --algo algorithms/example_algorithm.py
33
+ iints data certify contracts/clinical_mdmp_contract.yaml results/<run_id>/results.csv --output-json results/<run_id>/certification.json
34
+ iints ai report results/<run_id>
35
+ ```
36
+
37
+ ## Read Next
38
+ - Start here: `docs/GETTING_STARTED.md`
39
+ - Installation and paths: `docs/INSTALLATION.md`
40
+ - Study analysis: `docs/STUDY_ANALYSIS.md`
41
+ - AI assistant: `docs/AI_ASSISTANT.md`
42
+ - Data certification: `docs/MDMP_QUICKSTART.md`
43
+ - Full manual: `docs/manuals/IINTS-AF_SDK_Manual.md`
44
+
45
+ ## Important
46
+ IINTS-AF is research software. It is not a medical device and does not provide clinical treatment advice.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "iints-sdk-python35"
7
- version = "1.5.0"
7
+ version = "1.5.1"
8
8
  authors = [
9
9
  { name="Rune Bobbaers", email="rune.bobbaers@gmail.com" },
10
10
  ]
@@ -67,7 +67,6 @@ mdmp = [
67
67
  [project.scripts]
68
68
  iints = "iints.cli.cli:app"
69
69
  iints-sdk-doctor = "iints_sdk_python35_doctor:main"
70
- mdmp = "mdmp_core.cli:app"
71
70
 
72
71
  [project.entry-points."iints.algorithms"]
73
72
  "PID Controller" = "iints.core.algorithms.pid_controller:PIDController"
@@ -11,7 +11,7 @@ except ImportError: # pragma: no cover - Python < 3.8 fallback
11
11
  try:
12
12
  __version__ = version("iints-sdk-python35")
13
13
  except PackageNotFoundError: # pragma: no cover - source tree fallback
14
- __version__ = "1.5.0"
14
+ __version__ = "1.5.1"
15
15
 
16
16
  # Note to developers: this SDK is currently maintained by a single author.
17
17
  # Please report bugs via GitHub issues and feel free to contribute fixes via PRs.
@@ -70,11 +70,13 @@ from .data.nightscout import NightscoutConfig, import_nightscout
70
70
  from .data.tidepool import TidepoolClient, load_openapi_spec
71
71
  from .data.guardians import mdmp_gate, MDMPGateError
72
72
  from .data.synthetic_mirror import generate_synthetic_mirror, SyntheticMirrorArtifact
73
+ from .data.study_corruption import AVAILABLE_STUDY_CORRUPTIONS, apply_study_corruptions, write_corrupted_study_csv
73
74
  from .analysis.metrics import generate_benchmark_metrics # Added for benchmark
74
75
  from .analysis.booth_demo import build_booth_demo
75
76
  from .analysis.carelink_workbench import build_carelink_workbench
76
77
  from .analysis.poster import generate_results_poster
77
78
  from .analysis.reporting import ClinicalReportGenerator
79
+ from .analysis.study_protocol import build_study_protocol_payload, render_study_protocol_markdown, write_study_protocol_bundle
78
80
  from .analysis.edge_efficiency import EnergyEstimate, estimate_energy_per_decision
79
81
  from .ai import AIResponse, IINTSAssistant, MDMPGuard
80
82
  from .highlevel import run_simulation, run_full, run_population
@@ -184,10 +186,16 @@ __all__ = [
184
186
  "MDMPGateError",
185
187
  "generate_synthetic_mirror",
186
188
  "SyntheticMirrorArtifact",
189
+ "AVAILABLE_STUDY_CORRUPTIONS",
190
+ "apply_study_corruptions",
191
+ "write_corrupted_study_csv",
187
192
  # Analysis Metrics
188
193
  "generate_benchmark_metrics",
189
194
  "build_booth_demo",
190
195
  "build_carelink_workbench",
196
+ "build_study_protocol_payload",
197
+ "render_study_protocol_markdown",
198
+ "write_study_protocol_bundle",
191
199
  "ClinicalReportGenerator",
192
200
  "EnergyEstimate",
193
201
  "estimate_energy_per_decision",
@@ -70,6 +70,15 @@ def _resolve_cli_inputs(
70
70
 
71
71
  if input_path.is_dir():
72
72
  ai_dir = input_path / "ai"
73
+ if (
74
+ not ai_dir.exists()
75
+ or not any((ai_dir / candidate).is_file() for candidate in ("report_payload.json", "trends_payload.json", "anomalies_payload.json", "step_riskiest.json", "review_payload.json"))
76
+ or (resolved_cert is None and not (ai_dir / "report.signed.mdmp").is_file())
77
+ ):
78
+ prepare_ai_ready_artifacts(
79
+ input_path,
80
+ create_dev_mdmp_cert=resolved_cert is None,
81
+ )
73
82
  resolved_input = _default_prepared_payload(task, ai_dir)
74
83
  if resolved_cert is None:
75
84
  candidate_cert = ai_dir / "report.signed.mdmp"
@@ -63,10 +63,11 @@ TASK_TEMPLATES: dict[TaskName, str] = {
63
63
  "Be conservative and do not overclaim. If the payload is incomplete, say so clearly.\n"
64
64
  "Respond in markdown with these sections:\n"
65
65
  "1. Overall realism verdict (Likely realistic / Needs review / Likely unrealistic)\n"
66
- "2. Strong realism signals\n"
67
- "3. Questionable or unrealistic patterns\n"
68
- "4. Concrete feedback points the SDK developer can improve\n"
69
- "5. Suggested follow-up validation checks\n\n"
66
+ "2. What looks realistic\n"
67
+ "3. What looks suspicious\n"
68
+ "4. Priority fixes\n"
69
+ "5. What to improve next\n"
70
+ "6. Suggested follow-up validation checks\n\n"
70
71
  "Focus on glycemic ranges, excursion patterns, insulin behavior, safety overrides, and whether the data looks internally coherent.\n\n"
71
72
  "Input JSON:\n{data}"
72
73
  ),
@@ -0,0 +1,46 @@
1
+ from .clinical_metrics import ClinicalMetricsCalculator, ClinicalMetricsResult
2
+ from .baseline import compute_metrics, run_baseline_comparison, write_baseline_comparison
3
+ from .booth_demo import build_booth_demo
4
+ from .carelink_workbench import build_carelink_workbench
5
+ from .poster import generate_results_poster
6
+ from .reporting import ClinicalReportGenerator
7
+ from .study_poster import generate_study_poster
8
+ from .study_protocol import (
9
+ build_study_protocol_payload,
10
+ render_study_protocol_markdown,
11
+ write_study_protocol_bundle,
12
+ )
13
+ from .study_analysis import (
14
+ analyze_run_directory,
15
+ analyze_study_directory,
16
+ compare_studies,
17
+ load_study_summary,
18
+ quality_badges_for_metrics,
19
+ StudyComparison,
20
+ StudyRunSummary,
21
+ StudySummary,
22
+ )
23
+
24
+ __all__ = [
25
+ "analyze_run_directory",
26
+ "analyze_study_directory",
27
+ "build_booth_demo",
28
+ "build_carelink_workbench",
29
+ "ClinicalMetricsCalculator",
30
+ "ClinicalMetricsResult",
31
+ "ClinicalReportGenerator",
32
+ "compute_metrics",
33
+ "compare_studies",
34
+ "generate_results_poster",
35
+ "generate_study_poster",
36
+ "build_study_protocol_payload",
37
+ "render_study_protocol_markdown",
38
+ "write_study_protocol_bundle",
39
+ "load_study_summary",
40
+ "quality_badges_for_metrics",
41
+ "run_baseline_comparison",
42
+ "StudyComparison",
43
+ "StudyRunSummary",
44
+ "StudySummary",
45
+ "write_baseline_comparison",
46
+ ]