mito-ai 0.1.32__tar.gz → 0.1.34__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.

Potentially problematic release.


This version of mito-ai might be problematic. Click here for more details.

Files changed (917) hide show
  1. {mito_ai-0.1.32 → mito_ai-0.1.34}/PKG-INFO +1 -1
  2. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/_version.py +1 -1
  3. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/anthropic_client.py +52 -54
  4. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/app_builder/handlers.py +2 -4
  5. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/models.py +15 -1
  6. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/agent_system_message.py +10 -2
  7. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/providers.py +79 -39
  8. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/constants.py +11 -24
  9. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/gemini_client.py +44 -48
  10. {mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai → mito_ai-0.1.34/mito_ai/labextension}/build_log.json +1 -1
  11. {mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai → mito_ai-0.1.34/mito_ai/labextension}/package.json +2 -2
  12. {mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai → mito_ai-0.1.34/mito_ai/labextension}/schemas/mito_ai/package.json.orig +1 -1
  13. mito_ai-0.1.32/mito_ai/labextension/static/lib_index_js.42b54cf8f038cc526980.js → mito_ai-0.1.34/mito_ai/labextension/static/lib_index_js.a20772bc113422d0f505.js +785 -351
  14. mito_ai-0.1.34/mito_ai/labextension/static/lib_index_js.a20772bc113422d0f505.js.map +1 -0
  15. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.a711c58b58423173bd24.js → mito_ai-0.1.34/mito_ai/labextension/static/remoteEntry.51d07439b02aaa830975.js +13 -16
  16. mito_ai-0.1.34/mito_ai/labextension/static/remoteEntry.51d07439b02aaa830975.js.map +1 -0
  17. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/style_index_js.06083e515de4862df010.js → mito_ai-0.1.34/mito_ai/labextension/static/style_index_js.76efcc5c3be4056457ee.js +6 -2
  18. mito_ai-0.1.34/mito_ai/labextension/static/style_index_js.76efcc5c3be4056457ee.js.map +1 -0
  19. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/openai_client.py +30 -44
  20. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/message_history/test_generate_short_chat_name.py +0 -4
  21. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/open_ai_utils_test.py +18 -22
  22. {mito_ai-0.1.32/mito_ai/tests → mito_ai-0.1.34/mito_ai/tests/providers}/test_anthropic_client.py +37 -32
  23. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/providers/test_azure.py +2 -6
  24. mito_ai-0.1.34/mito_ai/tests/providers/test_capabilities.py +120 -0
  25. {mito_ai-0.1.32/mito_ai/tests → mito_ai-0.1.34/mito_ai/tests/providers}/test_gemini_client.py +40 -36
  26. mito_ai-0.1.34/mito_ai/tests/providers/test_mito_server_utils.py +448 -0
  27. mito_ai-0.1.34/mito_ai/tests/providers/test_model_resolution.py +130 -0
  28. mito_ai-0.1.34/mito_ai/tests/providers/test_openai_client.py +57 -0
  29. mito_ai-0.1.34/mito_ai/tests/providers/test_provider_completion_exception.py +66 -0
  30. mito_ai-0.1.34/mito_ai/tests/providers/test_provider_limits.py +42 -0
  31. mito_ai-0.1.34/mito_ai/tests/providers/test_providers.py +382 -0
  32. mito_ai-0.1.34/mito_ai/tests/providers/test_retry_logic.py +389 -0
  33. mito_ai-0.1.34/mito_ai/tests/providers/utils.py +85 -0
  34. mito_ai-0.1.34/mito_ai/tests/test_constants.py +32 -0
  35. mito_ai-0.1.34/mito_ai/tests/test_telemetry.py +12 -0
  36. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/anthropic_utils.py +21 -29
  37. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/gemini_utils.py +18 -22
  38. mito_ai-0.1.34/mito_ai/utils/mito_server_utils.py +92 -0
  39. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/open_ai_utils.py +22 -46
  40. mito_ai-0.1.34/mito_ai/utils/provider_utils.py +49 -0
  41. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/telemetry_utils.py +11 -1
  42. {mito_ai-0.1.32 → mito_ai-0.1.34}/mypy.ini +1 -1
  43. {mito_ai-0.1.32 → mito_ai-0.1.34}/package.json +1 -1
  44. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/AssistantCodeBlock.tsx +17 -21
  45. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/ChatMessage.tsx +5 -4
  46. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatTaskpane.tsx +115 -59
  47. mito_ai-0.1.34/src/components/AgentComponents/AgentComponentHeader.tsx +61 -0
  48. mito_ai-0.1.34/src/components/AgentComponents/ErrorFixupToolUI.tsx +121 -0
  49. mito_ai-0.1.34/src/icons/AlertIcon.tsx +16 -0
  50. mito_ai-0.1.34/src/icons/WrenchAndScrewdriverIcon.tsx +18 -0
  51. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/AssistantCodeBlock.test.tsx +53 -3
  52. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/ChatInput.test.tsx +50 -0
  53. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/ChatMessage.test.tsx +28 -1
  54. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/NextSteps.test.tsx +1 -1
  55. mito_ai-0.1.34/src/tests/utils/processChatHistoryForErrorGrouping.test.tsx +246 -0
  56. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/agentActions.tsx +0 -13
  57. mito_ai-0.1.34/src/utils/chatHistory.tsx +74 -0
  58. mito_ai-0.1.34/src/utils/errors.tsx +32 -0
  59. mito_ai-0.1.34/src/utils/notebook.tsx +405 -0
  60. mito_ai-0.1.34/src/utils/waitForNotebookReady.ts +77 -0
  61. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/websockets/completions/CompletionModels.ts +2 -0
  62. mito_ai-0.1.34/style/AgentComponentHeader.css +59 -0
  63. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ChatMessage.css +1 -2
  64. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/CodeBlock.css +29 -5
  65. mito_ai-0.1.34/style/ErrorFixupToolUI.css +53 -0
  66. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/GetCellOutputToolUI.css +1 -1
  67. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/base.css +4 -0
  68. {mito_ai-0.1.32/mito_ai/labextension → mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai}/build_log.json +1 -1
  69. {mito_ai-0.1.32/mito_ai/labextension → mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai}/package.json +2 -2
  70. {mito_ai-0.1.32/mito_ai/labextension → mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai}/schemas/mito_ai/package.json.orig +1 -1
  71. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.42b54cf8f038cc526980.js → mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.a20772bc113422d0f505.js +785 -351
  72. mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.a20772bc113422d0f505.js.map +1 -0
  73. mito_ai-0.1.32/mito_ai/labextension/static/remoteEntry.a711c58b58423173bd24.js → mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.51d07439b02aaa830975.js +13 -16
  74. mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.51d07439b02aaa830975.js.map +1 -0
  75. mito_ai-0.1.32/mito_ai/labextension/static/style_index_js.06083e515de4862df010.js → mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai/static/style_index_js.76efcc5c3be4056457ee.js +6 -2
  76. mito_ai-0.1.34/venv/share/jupyter/labextensions/mito_ai/static/style_index_js.76efcc5c3be4056457ee.js.map +1 -0
  77. mito_ai-0.1.32/mito_ai/labextension/static/lib_index_js.42b54cf8f038cc526980.js.map +0 -1
  78. mito_ai-0.1.32/mito_ai/labextension/static/remoteEntry.a711c58b58423173bd24.js.map +0 -1
  79. mito_ai-0.1.32/mito_ai/labextension/static/style_index_js.06083e515de4862df010.js.map +0 -1
  80. mito_ai-0.1.32/mito_ai/labextension/static/vendors-node_modules_html2canvas_dist_html2canvas_js.ea47e8c8c906197f8d19.js +0 -7842
  81. mito_ai-0.1.32/mito_ai/labextension/static/vendors-node_modules_html2canvas_dist_html2canvas_js.ea47e8c8c906197f8d19.js.map +0 -1
  82. mito_ai-0.1.32/mito_ai/tests/providers_test.py +0 -438
  83. mito_ai-0.1.32/mito_ai/tests/test_constants.py +0 -19
  84. mito_ai-0.1.32/src/utils/errors.tsx +0 -6
  85. mito_ai-0.1.32/src/utils/notebook.tsx +0 -374
  86. mito_ai-0.1.32/src/utils/waitForNotebookReady.ts +0 -57
  87. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.42b54cf8f038cc526980.js.map +0 -1
  88. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.a711c58b58423173bd24.js.map +0 -1
  89. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/style_index_js.06083e515de4862df010.js.map +0 -1
  90. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_html2canvas_dist_html2canvas_js.ea47e8c8c906197f8d19.js +0 -7842
  91. mito_ai-0.1.32/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_html2canvas_dist_html2canvas_js.ea47e8c8c906197f8d19.js.map +0 -1
  92. {mito_ai-0.1.32 → mito_ai-0.1.34}/.babelrc +0 -0
  93. {mito_ai-0.1.32 → mito_ai-0.1.34}/.copier-answers.yml +0 -0
  94. {mito_ai-0.1.32 → mito_ai-0.1.34}/.eslintrc.js +0 -0
  95. {mito_ai-0.1.32 → mito_ai-0.1.34}/.gitignore +0 -0
  96. {mito_ai-0.1.32 → mito_ai-0.1.34}/.prettierignore +0 -0
  97. {mito_ai-0.1.32 → mito_ai-0.1.34}/.yarnrc.yml +0 -0
  98. {mito_ai-0.1.32 → mito_ai-0.1.34}/CLAUDE.md +0 -0
  99. {mito_ai-0.1.32 → mito_ai-0.1.34}/LICENSE +0 -0
  100. {mito_ai-0.1.32 → mito_ai-0.1.34}/README.md +0 -0
  101. {mito_ai-0.1.32 → mito_ai-0.1.34}/babel.config.js +0 -0
  102. {mito_ai-0.1.32 → mito_ai-0.1.34}/declarations.d.ts +0 -0
  103. {mito_ai-0.1.32 → mito_ai-0.1.34}/dev/README.md +0 -0
  104. {mito_ai-0.1.32 → mito_ai-0.1.34}/dev/generate_ai_chats.py +0 -0
  105. {mito_ai-0.1.32 → mito_ai-0.1.34}/jest.config.js +0 -0
  106. {mito_ai-0.1.32 → mito_ai-0.1.34}/jupyter-config/jupyter_server_config.d/mito_ai.json +0 -0
  107. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/__init__.py +0 -0
  108. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/app_builder/__init__.py +0 -0
  109. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/app_builder/models.py +0 -0
  110. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/__init__.py +0 -0
  111. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/agent_auto_error_fixup_handler.py +0 -0
  112. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/agent_execution_handler.py +0 -0
  113. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/chat_completion_handler.py +0 -0
  114. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/code_explain_handler.py +0 -0
  115. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/completion_handler.py +0 -0
  116. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/inline_completer_handler.py +0 -0
  117. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/smart_debug_handler.py +0 -0
  118. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/completion_handlers/utils.py +0 -0
  119. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/handlers.py +0 -0
  120. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/message_history.py +0 -0
  121. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/__init__.py +0 -0
  122. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/agent_execution_prompt.py +0 -0
  123. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/agent_smart_debug_prompt.py +0 -0
  124. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/chat_name_prompt.py +0 -0
  125. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/chat_prompt.py +0 -0
  126. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/chat_system_message.py +0 -0
  127. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/explain_code_prompt.py +0 -0
  128. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/inline_completer_prompt.py +0 -0
  129. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/prompt_constants.py +0 -0
  130. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/smart_debug_prompt.py +0 -0
  131. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/completions/prompt_builders/utils.py +0 -0
  132. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/__init__.py +0 -0
  133. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/crawlers/__init__.py +0 -0
  134. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/crawlers/base_crawler.py +0 -0
  135. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/crawlers/constants.py +0 -0
  136. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/crawlers/snowflake.py +0 -0
  137. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/handlers.py +0 -0
  138. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/models.py +0 -0
  139. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/urls.py +0 -0
  140. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/db/utils.py +0 -0
  141. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/mssql/compose.yml +0 -0
  142. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/mssql/init/setup.sql +0 -0
  143. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/mysql/compose.yml +0 -0
  144. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/mysql/init/setup.sql +0 -0
  145. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/oracle/compose.yml +0 -0
  146. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/oracle/init/setup.sql +0 -0
  147. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/postgres/compose.yml +0 -0
  148. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/docker/postgres/init/setup.sql +0 -0
  149. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/enterprise/__init__.py +0 -0
  150. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/enterprise/utils.py +0 -0
  151. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/labextension/schemas/mito_ai/toolbar-buttons.json +0 -0
  152. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/labextension/static/style.js +0 -0
  153. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/labextension/static/vendors-node_modules_semver_index_js.9795f79265ddb416864b.js +0 -0
  154. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/labextension/static/vendors-node_modules_semver_index_js.9795f79265ddb416864b.js.map +0 -0
  155. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/labextension/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js +0 -0
  156. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/labextension/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js.map +0 -0
  157. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/log/handlers.py +0 -0
  158. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/log/urls.py +0 -0
  159. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/logger.py +0 -0
  160. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/rules/handlers.py +0 -0
  161. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/rules/urls.py +0 -0
  162. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/rules/utils.py +0 -0
  163. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/settings/handlers.py +0 -0
  164. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/settings/urls.py +0 -0
  165. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/settings/utils.py +0 -0
  166. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/__init__.py +0 -0
  167. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/conftest.py +0 -0
  168. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/create_agent_system_message_prompt_test.py +0 -0
  169. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/data/prompt_lg.py +0 -0
  170. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/data/prompt_sm.py +0 -0
  171. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/data/prompt_xl.py +0 -0
  172. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/data/stock_data.sqlite3 +0 -0
  173. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/conftest.py +0 -0
  174. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/connections_test.py +0 -0
  175. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/mssql_test.py +0 -0
  176. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/mysql_test.py +0 -0
  177. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/oracle_test.py +0 -0
  178. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/postgres_test.py +0 -0
  179. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/schema_test.py +0 -0
  180. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/sqlite_test.py +0 -0
  181. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/db/test_db_constants.py +0 -0
  182. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/message_history/test_message_history_utils.py +0 -0
  183. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/performance_test.py +0 -0
  184. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/rules/conftest.py +0 -0
  185. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/rules/rules_test.py +0 -0
  186. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/server_limits_test.py +0 -0
  187. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/settings/conftest.py +0 -0
  188. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/settings/settings_test.py +0 -0
  189. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/settings/test_settings_constants.py +0 -0
  190. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/utils/__init__.py +0 -0
  191. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/utils/test_anthropic_utils.py +0 -0
  192. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/utils/test_gemini_utils.py +0 -0
  193. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/tests/version_check_test.py +0 -0
  194. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/__init__.py +0 -0
  195. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/create.py +0 -0
  196. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/db.py +0 -0
  197. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/message_history_utils.py +0 -0
  198. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/schema.py +0 -0
  199. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/server_limits.py +0 -0
  200. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/utils.py +0 -0
  201. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/version_utils.py +0 -0
  202. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/utils/websocket_base.py +0 -0
  203. {mito_ai-0.1.32 → mito_ai-0.1.34}/mito_ai/version_check.py +0 -0
  204. {mito_ai-0.1.32 → mito_ai-0.1.34}/package-lock.json +0 -0
  205. {mito_ai-0.1.32 → mito_ai-0.1.34}/pyproject.toml +0 -0
  206. {mito_ai-0.1.32 → mito_ai-0.1.34}/requirements.txt +0 -0
  207. {mito_ai-0.1.32 → mito_ai-0.1.34}/schema/toolbar-buttons.json +0 -0
  208. {mito_ai-0.1.32 → mito_ai-0.1.34}/setup.py +0 -0
  209. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/AiChatPlugin.ts +0 -0
  210. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/CTACarousel.tsx +0 -0
  211. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatHistoryManager.tsx +0 -0
  212. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/AlertBlock.tsx +0 -0
  213. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/ChatDropdown.tsx +0 -0
  214. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/ChatInput.tsx +0 -0
  215. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/Citation.tsx +0 -0
  216. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/CodeBlockToolbar.tsx +0 -0
  217. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/MarkdownBlock.tsx +0 -0
  218. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/PythonCode.tsx +0 -0
  219. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/ScrollableSuggestions.tsx +0 -0
  220. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatMessage/UserCodeBlock.tsx +0 -0
  221. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/ChatWidget.tsx +0 -0
  222. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/CodeDiffDisplay.tsx +0 -0
  223. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/FirstMessage.ts +0 -0
  224. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AiChat/token.ts +0 -0
  225. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/AppBuilderPlugin.ts +0 -0
  226. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/DeployAppNotification.tsx +0 -0
  227. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/NotebookToStreamlit.tsx +0 -0
  228. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/cellConversionUtils.tsx +0 -0
  229. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/fileUtils.tsx +0 -0
  230. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/requirementsUtils.tsx +0 -0
  231. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/visualizationConversionUtils.tsx +0 -0
  232. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/AppBuilder/visualization_test_notebook.ipynb +0 -0
  233. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/ContextManager/ContextManagerPlugin.ts +0 -0
  234. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/ContextManager/FileInspector.tsx +0 -0
  235. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/ContextManager/VariableInspector.tsx +0 -0
  236. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/ErrorMimeRenderer/CollapsibleWarningBlock.tsx +0 -0
  237. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/ErrorMimeRenderer/ErrorMimeRendererPlugin.tsx +0 -0
  238. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/ErrorMimeRenderer/errorUtils.tsx +0 -0
  239. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/InlineCompleter/index.ts +0 -0
  240. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/InlineCompleter/provider.ts +0 -0
  241. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/NotebookFooter/NotebookFooter.tsx +0 -0
  242. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/NotebookFooter/index.tsx +0 -0
  243. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/SettingsManagerPlugin.tsx +0 -0
  244. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/SettingsWidget.tsx +0 -0
  245. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/database/ConnectionForm.tsx +0 -0
  246. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/database/ConnectionList.tsx +0 -0
  247. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/database/DatabasePage.tsx +0 -0
  248. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/database/model.ts +0 -0
  249. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/general/GeneralPage.tsx +0 -0
  250. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/rules/RulesForm.tsx +0 -0
  251. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/rules/RulesPage.tsx +0 -0
  252. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/rules/models.ts +0 -0
  253. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/SettingsManager/support/SupportPage.tsx +0 -0
  254. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/ToolbarButtons/ToolbarButtonsPlugin.tsx +0 -0
  255. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/VersionCheck/index.ts +0 -0
  256. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/emptyCell/EmptyCellPlugin.ts +0 -0
  257. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/emptyCell/emptyCell.ts +0 -0
  258. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/Extensions/status/index.tsx +0 -0
  259. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/commands.tsx +0 -0
  260. {mito_ai-0.1.32/src/components/AgentToolComponents → mito_ai-0.1.34/src/components/AgentComponents}/GetCellOutputToolUI.tsx +0 -0
  261. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/DropdownMenu.tsx +0 -0
  262. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/IconButton.tsx +0 -0
  263. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/LoadingCircle.tsx +0 -0
  264. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/LoadingDots.tsx +0 -0
  265. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/ModelSelector.tsx +0 -0
  266. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/NextStepsPills.tsx +0 -0
  267. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/SelectedContextContainer.tsx +0 -0
  268. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/TextAndIconButton.tsx +0 -0
  269. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/TextButton.tsx +0 -0
  270. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/components/ToggleButton.tsx +0 -0
  271. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/hooks/useDebouncedEffect.tsx +0 -0
  272. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/hooks/useDebouncedFunction.tsx +0 -0
  273. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/AcceptIcon.tsx +0 -0
  274. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/AiIcon.tsx +0 -0
  275. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/AppBuilderExcludeCellIcon.svg +0 -0
  276. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/AppBuilderIncludeCellIcon.svg +0 -0
  277. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/ChatIcon.svg +0 -0
  278. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/ChatIcon.tsx +0 -0
  279. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/Check.tsx +0 -0
  280. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/CodeIcon.tsx +0 -0
  281. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/CopyIcon.tsx +0 -0
  282. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/ErrorIcon.tsx +0 -0
  283. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/ExpandIcon.tsx +0 -0
  284. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/GarbageIcon.tsx +0 -0
  285. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/LightbulbIcon.svg +0 -0
  286. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/MagicWand.tsx +0 -0
  287. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/MagnifyingGlassIcon.tsx +0 -0
  288. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/MitoLogo.tsx +0 -0
  289. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/NotebookFooter/CodeIcon.tsx +0 -0
  290. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/NotebookFooter/TextIcon.tsx +0 -0
  291. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/NucleausIcon.tsx +0 -0
  292. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/NucleusIcon.svg +0 -0
  293. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/OpenIndicatorIcon.svg +0 -0
  294. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/Pencil.tsx +0 -0
  295. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/PlayButtonIcon.tsx +0 -0
  296. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/RejectIcon.tsx +0 -0
  297. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/RobotHeadIcon.tsx +0 -0
  298. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/RuleIcon.tsx +0 -0
  299. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/SupportIcon.tsx +0 -0
  300. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/UndoIcon.tsx +0 -0
  301. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/XMark.tsx +0 -0
  302. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/icons/index.ts +0 -0
  303. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/index.ts +0 -0
  304. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/restAPI/RestAPI.tsx +0 -0
  305. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/restAPI/utils.ts +0 -0
  306. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/CTACarousel.test.tsx +0 -0
  307. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/ChatDropdown.test.tsx +0 -0
  308. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/CodeBlockToolbar.test.tsx +0 -0
  309. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/ModelSelector.test.tsx +0 -0
  310. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/RestoreCheckpoint.test.tsx +0 -0
  311. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AiChat/UserCodeBlock.test.tsx +0 -0
  312. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AppBuilder/NotebookToStreamlit.test.tsx +0 -0
  313. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AppBuilder/transformInvalidLines.test.tsx +0 -0
  314. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AppBuilder/transformMitoAppInput.test.tsx +0 -0
  315. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/AppBuilder/transformVisualizationCell.test.tsx +0 -0
  316. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/ContextManager/ContextManagerPlugin.test.tsx +0 -0
  317. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/NotebookFooter/notebookFooter.test.tsx +0 -0
  318. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/SettingsManager/ConnectionList.test.tsx +0 -0
  319. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/__mocks__/fileMock.js +0 -0
  320. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/__mocks__/jupyterMocks.ts +0 -0
  321. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/__mocks__/openaiMocks.ts +0 -0
  322. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/__mocks__/styleMock.js +0 -0
  323. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/setup/setupTests.js +0 -0
  324. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/tests/utils/blacklistedWords.test.tsx +0 -0
  325. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/arrays.tsx +0 -0
  326. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/blacklistedWords.tsx +0 -0
  327. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/checkpoint.tsx +0 -0
  328. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/classNames.tsx +0 -0
  329. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/codeDiff.tsx +0 -0
  330. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/copyToClipboard.tsx +0 -0
  331. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/fileName.tsx +0 -0
  332. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/nodeToPng.tsx +0 -0
  333. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/scroll.tsx +0 -0
  334. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/scrollMask.ts +0 -0
  335. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/sleep.ts +0 -0
  336. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/strings.tsx +0 -0
  337. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/stripe.tsx +0 -0
  338. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/user.tsx +0 -0
  339. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/utils/version_check.ts +0 -0
  340. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/websockets/BaseWebsocketClient.ts +0 -0
  341. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/websockets/appBuilder/appBuilderModels.ts +0 -0
  342. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/websockets/appBuilder/appBuilderWebsocketClient.ts +0 -0
  343. {mito_ai-0.1.32 → mito_ai-0.1.34}/src/websockets/completions/CompletionsWebsocketClient.ts +0 -0
  344. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/CTACarousel.css +0 -0
  345. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ChatDropdown.css +0 -0
  346. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ChatInput.css +0 -0
  347. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ChatTaskpane.css +0 -0
  348. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/Citation.css +0 -0
  349. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ConnectionForm.css +0 -0
  350. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/DatabasePage.css +0 -0
  351. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/DropdownMenu.css +0 -0
  352. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ErrorMimeRendererPlugin.css +0 -0
  353. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/IconButton.css +0 -0
  354. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/MarkdownMessage.css +0 -0
  355. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ModelSelector.css +0 -0
  356. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/NextStepsPills.css +0 -0
  357. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/NotebookFooter.css +0 -0
  358. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/PythonCode.css +0 -0
  359. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/RulesForm.css +0 -0
  360. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/SelectedContextContainer.css +0 -0
  361. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/SettingsWidget.css +0 -0
  362. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/TextAndIconButton.css +0 -0
  363. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/TextButton.css +0 -0
  364. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/ToggleButton.css +0 -0
  365. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/button.css +0 -0
  366. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/icons.css +0 -0
  367. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/index.css +0 -0
  368. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/index.js +0 -0
  369. {mito_ai-0.1.32 → mito_ai-0.1.34}/style/statusItem.css +0 -0
  370. {mito_ai-0.1.32 → mito_ai-0.1.34}/tsconfig.json +0 -0
  371. {mito_ai-0.1.32 → mito_ai-0.1.34}/tsconfig.test.json +0 -0
  372. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/Activate.ps1 +0 -0
  373. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/activate +0 -0
  374. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/activate.csh +0 -0
  375. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/activate.fish +0 -0
  376. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/debugpy +0 -0
  377. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/debugpy-adapter +0 -0
  378. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/distro +0 -0
  379. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/docutils +0 -0
  380. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/hatch-jupyter-builder +0 -0
  381. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/hatchling +0 -0
  382. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/httpx +0 -0
  383. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/ipython +0 -0
  384. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/ipython3 +0 -0
  385. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jlpm +0 -0
  386. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jsonpointer +0 -0
  387. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jsonschema +0 -0
  388. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter +0 -0
  389. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-dejavu +0 -0
  390. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-events +0 -0
  391. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-execute +0 -0
  392. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-kernel +0 -0
  393. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-kernelspec +0 -0
  394. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-lab +0 -0
  395. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-labextension +0 -0
  396. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-labhub +0 -0
  397. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-migrate +0 -0
  398. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-nbconvert +0 -0
  399. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-run +0 -0
  400. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-server +0 -0
  401. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-troubleshoot +0 -0
  402. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/jupyter-trust +0 -0
  403. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/keyring +0 -0
  404. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/markdown-it +0 -0
  405. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/normalizer +0 -0
  406. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/openai +0 -0
  407. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pip +0 -0
  408. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pip3 +0 -0
  409. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pip3.11 +0 -0
  410. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pipreqs +0 -0
  411. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pybabel +0 -0
  412. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pygmentize +0 -0
  413. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pyjson5 +0 -0
  414. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pyrsa-decrypt +0 -0
  415. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pyrsa-encrypt +0 -0
  416. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pyrsa-keygen +0 -0
  417. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pyrsa-priv2pub +0 -0
  418. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pyrsa-sign +0 -0
  419. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/pyrsa-verify +0 -0
  420. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/python +0 -0
  421. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/python3 +0 -0
  422. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/python3.11 +0 -0
  423. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2html +0 -0
  424. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2html4 +0 -0
  425. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2html5 +0 -0
  426. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2latex +0 -0
  427. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2man +0 -0
  428. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2odt +0 -0
  429. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2pseudoxml +0 -0
  430. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2s5 +0 -0
  431. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2xetex +0 -0
  432. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/rst2xml +0 -0
  433. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/send2trash +0 -0
  434. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/tqdm +0 -0
  435. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/trove-classifiers +0 -0
  436. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/twine +0 -0
  437. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/websockets +0 -0
  438. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/bin/wsdump +0 -0
  439. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/etc/jupyter/jupyter_notebook_config.d/jupyterlab.json +0 -0
  440. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/etc/jupyter/jupyter_server_config.d/jupyter-lsp-jupyter-server.json +0 -0
  441. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/etc/jupyter/jupyter_server_config.d/jupyter_server_terminals.json +0 -0
  442. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/etc/jupyter/jupyter_server_config.d/jupyterlab.json +0 -0
  443. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/etc/jupyter/jupyter_server_config.d/mito_ai.json +0 -0
  444. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/etc/jupyter/jupyter_server_config.d/notebook_shim.json +0 -0
  445. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/etc/jupyter/labconfig/page_config.json +0 -0
  446. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/include/site/python3.11/greenlet/greenlet.h +0 -0
  447. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/pyvenv.cfg +0 -0
  448. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/applications/jupyterlab.desktop +0 -0
  449. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/icons/hicolor/scalable/apps/jupyterlab.svg +0 -0
  450. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/kernels/python3/kernel.json +0 -0
  451. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/kernels/python3/logo-32x32.png +0 -0
  452. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/kernels/python3/logo-64x64.png +0 -0
  453. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/kernels/python3/logo-svg.svg +0 -0
  454. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/commands.json +0 -0
  455. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/context-menu.json +0 -0
  456. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/package.json.orig +0 -0
  457. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/property-inspector.json +0 -0
  458. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/shell.json +0 -0
  459. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/top-bar.json +0 -0
  460. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/kernels-settings.json +0 -0
  461. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/notification.json +0 -0
  462. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/package.json.orig +0 -0
  463. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/palette.json +0 -0
  464. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/print.json +0 -0
  465. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/sanitizer.json +0 -0
  466. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/sessionDialogs.json +0 -0
  467. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/themes.json +0 -0
  468. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/utilityCommands.json +0 -0
  469. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/cell-toolbar-extension/package.json.orig +0 -0
  470. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/cell-toolbar-extension/plugin.json +0 -0
  471. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/celltags-extension/package.json.orig +0 -0
  472. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/celltags-extension/plugin.json +0 -0
  473. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/codemirror-extension/package.json.orig +0 -0
  474. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/codemirror-extension/plugin.json +0 -0
  475. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/completer-extension/inline-completer.json +0 -0
  476. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/completer-extension/manager.json +0 -0
  477. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/completer-extension/package.json.orig +0 -0
  478. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/completer.json +0 -0
  479. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/foreign.json +0 -0
  480. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/package.json.orig +0 -0
  481. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/tracker.json +0 -0
  482. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/csvviewer-extension/csv.json +0 -0
  483. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/csvviewer-extension/package.json.orig +0 -0
  484. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/csvviewer-extension/tsv.json +0 -0
  485. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/debugger-extension/main.json +0 -0
  486. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/debugger-extension/package.json.orig +0 -0
  487. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/docmanager-extension/download.json +0 -0
  488. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/docmanager-extension/package.json.orig +0 -0
  489. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/docmanager-extension/plugin.json +0 -0
  490. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/documentsearch-extension/package.json.orig +0 -0
  491. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/documentsearch-extension/plugin.json +0 -0
  492. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/extensionmanager-extension/package.json.orig +0 -0
  493. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/extensionmanager-extension/plugin.json +0 -0
  494. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/browser.json +0 -0
  495. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/download.json +0 -0
  496. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/open-browser-tab.json +0 -0
  497. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/open-with.json +0 -0
  498. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/package.json.orig +0 -0
  499. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/widget.json +0 -0
  500. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/fileeditor-extension/completer.json +0 -0
  501. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/fileeditor-extension/package.json.orig +0 -0
  502. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/fileeditor-extension/plugin.json +0 -0
  503. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/about.json +0 -0
  504. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/jupyter-forum.json +0 -0
  505. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/launch-classic.json +0 -0
  506. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/package.json.orig +0 -0
  507. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/htmlviewer-extension/package.json.orig +0 -0
  508. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/htmlviewer-extension/plugin.json +0 -0
  509. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/hub-extension/menu.json +0 -0
  510. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/hub-extension/package.json.orig +0 -0
  511. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/imageviewer-extension/package.json.orig +0 -0
  512. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/imageviewer-extension/plugin.json +0 -0
  513. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/consoles.json +0 -0
  514. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/inspector.json +0 -0
  515. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/notebooks.json +0 -0
  516. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/package.json.orig +0 -0
  517. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/launcher-extension/package.json.orig +0 -0
  518. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/launcher-extension/plugin.json +0 -0
  519. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/logconsole-extension/package.json.orig +0 -0
  520. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/logconsole-extension/plugin.json +0 -0
  521. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/lsp-extension/package.json.orig +0 -0
  522. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/lsp-extension/plugin.json +0 -0
  523. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/mainmenu-extension/package.json.orig +0 -0
  524. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/mainmenu-extension/plugin.json +0 -0
  525. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/markdownviewer-extension/package.json.orig +0 -0
  526. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/markdownviewer-extension/plugin.json +0 -0
  527. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/mathjax-extension/package.json.orig +0 -0
  528. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/mathjax-extension/plugin.json +0 -0
  529. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/metadataform-extension/metadataforms.json +0 -0
  530. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/metadataform-extension/package.json.orig +0 -0
  531. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/completer.json +0 -0
  532. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/export.json +0 -0
  533. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/package.json.orig +0 -0
  534. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/panel.json +0 -0
  535. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/tools.json +0 -0
  536. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/tracker.json +0 -0
  537. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/running-extension/package.json.orig +0 -0
  538. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/running-extension/plugin.json +0 -0
  539. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/settingeditor-extension/form-ui.json +0 -0
  540. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/settingeditor-extension/package.json.orig +0 -0
  541. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/settingeditor-extension/plugin.json +0 -0
  542. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/shortcuts-extension/package.json.orig +0 -0
  543. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/shortcuts-extension/shortcuts.json +0 -0
  544. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/statusbar-extension/package.json.orig +0 -0
  545. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/statusbar-extension/plugin.json +0 -0
  546. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/terminal-extension/package.json.orig +0 -0
  547. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/terminal-extension/plugin.json +0 -0
  548. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/toc-extension/package.json.orig +0 -0
  549. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/toc-extension/registry.json +0 -0
  550. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/consoles.json +0 -0
  551. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/files.json +0 -0
  552. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/notebooks.json +0 -0
  553. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/package.json.orig +0 -0
  554. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/translation-extension/package.json.orig +0 -0
  555. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/translation-extension/plugin.json +0 -0
  556. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/indicator.json +0 -0
  557. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/menu.json +0 -0
  558. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/package.json.orig +0 -0
  559. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/sidebar.json +0 -0
  560. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/100.1d14ca44a3cc8849349f.js +0 -0
  561. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1039.3fe94e87219c0ed159d3.js +0 -0
  562. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1096.dd4c563e0483cbbeb9c9.js +0 -0
  563. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1189.c1482e88f0e949753db6.js +0 -0
  564. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1208.4b9ab7b231d39ebdbc3f.js +0 -0
  565. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1219.b5630aa3a46050fddc27.js +0 -0
  566. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1268.e75d8a6dd557ac8957ca.js +0 -0
  567. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1359.d5f23f0e2a6f67b69751.js +0 -0
  568. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1423.4bcf4453e1c1d12d872f.js +0 -0
  569. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1436.2c11d9dee0ad6f49e968.js +0 -0
  570. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1445.a0e099c27d073217031a.js +0 -0
  571. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1449.7026e8748d2a77e15d5b.js +0 -0
  572. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1462.57e39f487257f25263d4.js +0 -0
  573. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1491.010c623dd546db976e95.js +0 -0
  574. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1495.13603dd823bbf5eb08b3.js +0 -0
  575. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1673.b0ee25168543434bdbca.js +0 -0
  576. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1737.a5fc97075f693ec36fe6.js +0 -0
  577. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1832.b1ede2fe899bdec88938.js +0 -0
  578. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1834.7445ad0c82371ac40737.js +0 -0
  579. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1838.839690ff17ec3c532f0a.js +0 -0
  580. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1887.56f83f163a18c61efb16.js +0 -0
  581. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1909.7487a09fefbe7f9eabb6.js +0 -0
  582. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1909.7487a09fefbe7f9eabb6.js.LICENSE.txt +0 -0
  583. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1912.f16dddc294d66c3c81e9.js +0 -0
  584. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1954.f1c519cb1415c7da3e8c.js +0 -0
  585. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1960.f8d8ef8a91360e60f0b9.js +0 -0
  586. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1962.6a7da74e809b70d5200d.js +0 -0
  587. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1969.86e3168e52802569d650.js +0 -0
  588. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1986.26029e99ef54a5652df8.js +0 -0
  589. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1991.84fc123d7cfe8ae2948e.js +0 -0
  590. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/1cb1c39ea642f26a4dfe.woff +0 -0
  591. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2023.59b30086fbeff6d17e3b.js +0 -0
  592. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2211.3123543dcc217549bbb0.js +0 -0
  593. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/227.6bd3154334bb91c5ca1c.js +0 -0
  594. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/227.6bd3154334bb91c5ca1c.js.LICENSE.txt +0 -0
  595. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2280.6614699f54522fffbc00.js +0 -0
  596. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/232.5419cbec68e3fd0cf431.js +0 -0
  597. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/232.5419cbec68e3fd0cf431.js.LICENSE.txt +0 -0
  598. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2353.ab70488f07a7c0a7a3fd.js +0 -0
  599. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/246.326a6482593e8a7bcd58.js +0 -0
  600. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2467.4227742ac4b60289f222.js +0 -0
  601. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/247.84259ab142dd8c151fc2.js +0 -0
  602. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2550.75fcaa650ffac405c0dc.js +0 -0
  603. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2574.327dadfe49120269ff31.js +0 -0
  604. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2576.b98b7b23adeec4cb6932.js +0 -0
  605. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2590.99e505d19b964439aa31.js +0 -0
  606. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2633.ea053b40991eb5adbc69.js +0 -0
  607. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2641.e77441e7a3e0d12834c5.js +0 -0
  608. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/265.6f9e37c0b72db64203b1.js +0 -0
  609. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2658.d1cae1b08b068d864368.js +0 -0
  610. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/26683bf201fb258a2237.woff +0 -0
  611. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2681.a47f40e38ecd31ccd687.js +0 -0
  612. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2707.61050e600b0aa9624127.js +0 -0
  613. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2729.cafaf0caf2c0c83ac9fe.js +0 -0
  614. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2794.05495c139ed000b57598.js +0 -0
  615. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2823.0b6015b5e03c08281f41.js +0 -0
  616. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2880.8483d51b11998bfe8e4b.js +0 -0
  617. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2957.bc5eb9549a0b15c44916.js +0 -0
  618. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/2959.b24c9f67d639376f5ead.js +0 -0
  619. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3048.59e6166a886a78f4f698.js +0 -0
  620. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/30e889b58cbc51adfbb0.woff +0 -0
  621. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3111.33574d9124842f355bce.js +0 -0
  622. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3112.0757b31e24c5334fda73.js +0 -0
  623. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3122.fed5688acdcf6ff6aa6b.js +0 -0
  624. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/321.0fb994fd384a54491584.js +0 -0
  625. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3257.30af681f0c294efb65f7.js +0 -0
  626. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3257.30af681f0c294efb65f7.js.LICENSE.txt +0 -0
  627. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/32792104b5ef69eded90.woff +0 -0
  628. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3282.22e78350d54fcaf3c6c8.js +0 -0
  629. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3293.375c6685d72662fc062f.js +0 -0
  630. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3303.b5596c0715d2d58332fb.js +0 -0
  631. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3358.7ba73a6804155b619b44.js +0 -0
  632. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3372.8eeafd96de9a7a205f40.js +0 -0
  633. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/339.380593b40d8d41150a4e.js +0 -0
  634. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/355254db9ca10a09a3b5.woff +0 -0
  635. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3616.a4271ffcf2ac3b4c2338.js +0 -0
  636. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/36e0d72d8a7afc696a3e.woff +0 -0
  637. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3709.e33bc30c83272aa85628.js +0 -0
  638. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/373c04fd2418f5c77eea.eot +0 -0
  639. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3763.56191df5d72d2ffa5aa6.js +0 -0
  640. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3780.c9294dc98ae926717741.js +0 -0
  641. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3799.eaa0438bc5c41bad0516.js +0 -0
  642. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3824.5f2d72e7866264f44c07.js +0 -0
  643. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3832.c6026c483bb46cc8e599.js +0 -0
  644. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3974.79f68bca9a02c92dab5e.js +0 -0
  645. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3991.678edf189fe92a216c70.js +0 -0
  646. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3bc6ecaae7ecf6f8d7f8.woff +0 -0
  647. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3de784d07b9fa8f104c1.woff +0 -0
  648. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/3f6d3488cf65374f6f67.woff +0 -0
  649. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4001.80ab3ef5300d7ce2d1fe.js +0 -0
  650. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4010.5271baedaaff5113c699.js +0 -0
  651. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4053.4945facc348478fd59f4.js +0 -0
  652. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4068.9cc41f46f729f2c4369b.js +0 -0
  653. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4076.b4d803d8bf1bd6c97854.js +0 -0
  654. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4090.c1367cf63af4f0088045.js +0 -0
  655. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4266.155b468271987c81d948.js +0 -0
  656. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4296.721da424585874d0789e.js +0 -0
  657. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4311.b44e8bc4829e0b1226d2.js +0 -0
  658. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4323.b2bd8a329a81d30ed039.js +0 -0
  659. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4350.8c8a0e7a3ffe036494e1.js +0 -0
  660. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4353.8572f6845cfde92dc152.js +0 -0
  661. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4364.b9b49d8d836882f44e62.js +0 -0
  662. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4372.645626a2452c190dbb22.js +0 -0
  663. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4372.645626a2452c190dbb22.js.LICENSE.txt +0 -0
  664. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4408.f24dd0edf35e08548967.js +0 -0
  665. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4462.c3c6de84bc9399e0290d.js +0 -0
  666. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4484.e1d2565d1a3daa5fe5f1.js +0 -0
  667. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4486.8d2f41ae787607b7bf31.js +0 -0
  668. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4528.43328125d98d6cfdfa99.js +0 -0
  669. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4611.bd2b768223b0cd570834.js +0 -0
  670. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4616.04cfbd55593c51921cc7.js +0 -0
  671. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4728.f59e4bd4b29409da82bc.js +0 -0
  672. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4728.f59e4bd4b29409da82bc.js.LICENSE.txt +0 -0
  673. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4735.7731d551ca68bcb58e9f.js +0 -0
  674. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4797.3740ef47b224a11a7fab.js +0 -0
  675. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/481e39042508ae313a60.woff +0 -0
  676. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4838.8db4c61349bfba200547.js +0 -0
  677. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4855.29e8dc6982ba4873487d.js +0 -0
  678. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4878.f7557c5c99a54b40c49b.js +0 -0
  679. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/492.5f186062d2dcdf79c86c.js +0 -0
  680. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4928.6cb408e4def87534970d.js +0 -0
  681. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4958.0a9dba3bf643df0b91de.js +0 -0
  682. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4981.eed4ddb90566e90e3df4.js +0 -0
  683. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/4982.c609185756485c6e3344.js +0 -0
  684. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5085.a38923f36b551620798a.js +0 -0
  685. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5090.404be96d8a6eae1e719a.js +0 -0
  686. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5090.404be96d8a6eae1e719a.js.LICENSE.txt +0 -0
  687. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5135.7f204de2153e4d85406d.js +0 -0
  688. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5211.83e78dadcef89cae04bf.js +0 -0
  689. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5224.8a6bbc774d20be66fdfb.js +0 -0
  690. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5244.eefac84704ad30f00af3.js +0 -0
  691. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5317.f4bba2e3d0f4fdd088f7.js +0 -0
  692. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5318.d5df5c275e925c22d780.js +0 -0
  693. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5338.38c32bdfb0695f9b501f.js +0 -0
  694. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5489.7fab44eac7538297b164.js +0 -0
  695. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5492.44728a640c37a4b4aa0c.js +0 -0
  696. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5521.0337f193af4e5eee6057.js +0 -0
  697. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5566.c76ea61eb723ee84e2cf.js +0 -0
  698. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5606.e03dfa10c124a03f36ba.js +0 -0
  699. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/580.4ea1e6182e0b35ff091a.js +0 -0
  700. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5829.0e46d479b4ade4783661.js +0 -0
  701. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5847.930208c25e45ecf30657.js +0 -0
  702. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5862.be1ec453e8db6844c62d.js +0 -0
  703. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5877.72ab5a29e95ce21981e4.js +0 -0
  704. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5929.d561797f8259994ecdd8.js +0 -0
  705. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5942.05cbcd55c5f45ff7db43.js +0 -0
  706. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5987.7e967df5417044d337a4.js +0 -0
  707. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/5cda41563a095bd70c78.woff +0 -0
  708. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6003.94cdab770c801f3c46f7.js +0 -0
  709. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6060.52dca011e9f2f279fc5e.js +0 -0
  710. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6095.6e79e3bad86e054aa8c8.js +0 -0
  711. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6145.c422868290460078c013.js +0 -0
  712. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6166.2bc9ac8e2156c0701a52.js +0 -0
  713. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6170.65d899f43342f1e34bf1.js +0 -0
  714. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6180.1a4acf96a100bec7a003.js +0 -0
  715. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6214.617de47747c5a9b19ef7.js +0 -0
  716. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6275.e99f9312900c481b467d.js +0 -0
  717. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6294.b3cb5e16527b9d09b4a2.js +0 -0
  718. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6364.c592f3101de349ba3904.js +0 -0
  719. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6372.edc0712a4be855493530.js +0 -0
  720. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6412.ebdf8da40f1ba8272df9.js +0 -0
  721. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6439.1723c0b3882bf535486e.js +0 -0
  722. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6460.d9aaa1e48da295c6035d.js +0 -0
  723. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/649.4081045b1737e4213282.js +0 -0
  724. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6492.804d51a693edf6978ef4.js +0 -0
  725. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6540.51c00e890179a4832552.js +0 -0
  726. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6540.51c00e890179a4832552.js.LICENSE.txt +0 -0
  727. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6733.2d8d3e01d56d79a52e7e.js +0 -0
  728. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6733.2d8d3e01d56d79a52e7e.js.LICENSE.txt +0 -0
  729. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6767.4b82d96c237ca7e31bc6.js +0 -0
  730. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6779.051cfbcb0700a96839b2.js +0 -0
  731. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6831.1df8fa4cabb5b1c19803.js +0 -0
  732. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6843.dabcc3c9658bc6ded6d1.js +0 -0
  733. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6874.bb2f7fbc6ce56eecc800.js +0 -0
  734. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6896.af1d649e0efae70b7b1a.js +0 -0
  735. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6941.465bebbd3d8a024f5f15.js +0 -0
  736. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6974.b5b353b8af28fbc91291.js +0 -0
  737. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6986.c4dab251590b27fdd9ad.js +0 -0
  738. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/6993.c93f5a810fcf441cbb6f.js +0 -0
  739. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7136.b312751fbb25b73f5e71.js +0 -0
  740. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/721921bab0d001ebff02.woff +0 -0
  741. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7250.b88d0a5e237ff5ff1aad.js +0 -0
  742. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7260.b47dcaccbe7991104e8a.js +0 -0
  743. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7269.962f078e97afc4f68e79.js +0 -0
  744. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/72bc573386dd1d48c5bb.woff +0 -0
  745. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/731.82a7b980b5b7f4b7a14f.js +0 -0
  746. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7318.7cc6b4b0b3151b205ecb.js +0 -0
  747. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7371.63b12ce793df713ab95b.js +0 -0
  748. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7425.f1c25f6c8aaec77e8635.js +0 -0
  749. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7445.7c793c8e1720f8ec4f85.js +0 -0
  750. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7575.2e3e32236d5667bba43f.js +0 -0
  751. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7587.3112240b6b82407b0f16.js +0 -0
  752. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7694.1cbff84dccb512476b7c.js +0 -0
  753. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7741.2ad1372a5862c4522be3.js +0 -0
  754. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7756.93d0ab41829355a147ab.js +0 -0
  755. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7769.d39df7673ee2660a9ac4.js +0 -0
  756. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7799.97fcec85f6547cd50a54.js +0 -0
  757. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7803.0c8929610218552319bf.js +0 -0
  758. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7856.dd9523e57bed80f1f694.js +0 -0
  759. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7879.5c485d200dc01b6f43ff.js +0 -0
  760. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7881.c5a234ce171f347c94e2.js +0 -0
  761. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7990.0d774450b53727ab32d5.js +0 -0
  762. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/7990.0d774450b53727ab32d5.js.LICENSE.txt +0 -0
  763. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/79d088064beb3826054f.eot +0 -0
  764. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8038.aea19fb961abd87d6255.js +0 -0
  765. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/805.2a0b8ac50aa8e6ab096f.js +0 -0
  766. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8103.ed2b21471519b58a3d73.js +0 -0
  767. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8217.801fbb0b549a74238760.js +0 -0
  768. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8232.e31d5021e77a9b5215d6.js +0 -0
  769. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8313.aac706f5036a7209b3a8.js +0 -0
  770. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8326.9dda93079a9e4f1b9be6.js +0 -0
  771. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8354.94077232b086a13541cc.js +0 -0
  772. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8368.c75a4b32ae45ec88465d.js +0 -0
  773. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8391.e5fb2e35cced405eb819.js +0 -0
  774. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/84.fe0a55d7756c37585fb4.js +0 -0
  775. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8418.42e29778d4b49fb54e8e.js +0 -0
  776. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8493.3b6106e45d5661438d8e.js +0 -0
  777. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8537.21b8b9ae0d81ae264499.js +0 -0
  778. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8606.bc1b0136e61d173913cd.js +0 -0
  779. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/867.e814bf26fbfc77fc4f16.js +0 -0
  780. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/870673df72e70f87c91a.woff +0 -0
  781. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/874.fbd3ae653c7337f3425b.js +0 -0
  782. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8753.56da17175b663d61f9d3.js +0 -0
  783. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8778.a3883f9acac5a903d6be.js +0 -0
  784. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8779.6eebdb56785e3d38a457.js +0 -0
  785. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8786.a2bc3dfc1ea13c04ba94.js +0 -0
  786. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8786.a2bc3dfc1ea13c04ba94.js.LICENSE.txt +0 -0
  787. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8816.d7ec52fb31e9c6749593.js +0 -0
  788. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8830.d5bb102ed8737ffe38cb.js +0 -0
  789. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8855.b17b9969fce42d0398e4.js +0 -0
  790. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/88b98cad3688915e50da.woff +0 -0
  791. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/89.933673451ca4a51053cb.js +0 -0
  792. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8915.ab253990b1581460b255.js +0 -0
  793. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/898.ed04189e15f0a3781fb1.js +0 -0
  794. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8ea8791754915a898a31.woff2 +0 -0
  795. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/8ea8dbb1b02e6f730f55.woff +0 -0
  796. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9023.2ff687d7ff50df3719fc.js +0 -0
  797. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9046.99c477ea375dcbb8c7ca.js +0 -0
  798. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9085.93df3ddfd17e1e45d82c.js +0 -0
  799. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9085.93df3ddfd17e1e45d82c.js.LICENSE.txt +0 -0
  800. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9123.501219cd782693d6539f.js +0 -0
  801. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9136.8f4cc6ecadcf250fd8ac.js +0 -0
  802. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9137.179a3c47465e7fb8f067.js +0 -0
  803. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9296.1c75c887f933757c6bfb.js +0 -0
  804. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9311.ad0012965aa52db7a3e3.js +0 -0
  805. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9329.1683d45b6478b7c81a24.js +0 -0
  806. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9359.34d1b961b733676193cb.js +0 -0
  807. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9400.90fd1d2212781c80b587.js +0 -0
  808. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9474.01b4e1d1e3376f4a5919.js +0 -0
  809. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9517.7056cafdf1da3a136d45.js +0 -0
  810. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9572.f91bbaa33e932d524f8f.js +0 -0
  811. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/961.29c067b15a524e556eed.js +0 -0
  812. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/961.29c067b15a524e556eed.js.LICENSE.txt +0 -0
  813. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9652.a8d2e5854bcae4d40041.js +0 -0
  814. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9674eb1bd55047179038.svg +0 -0
  815. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9744.c7c91fdb0180dcf5cd9b.js +0 -0
  816. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9746.c7e86b432363dfd28caa.js +0 -0
  817. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9834b82ad26e2a37583d.woff2 +0 -0
  818. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9881.37d189ff085cb3468683.js +0 -0
  819. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9890.75ea8024e2c1c49c89a3.js +0 -0
  820. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9892.6d289e7baed8c64d88e2.js +0 -0
  821. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/9892.6d289e7baed8c64d88e2.js.LICENSE.txt +0 -0
  822. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/a009bea404f7a500ded4.woff +0 -0
  823. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/a3b9817780214caf01e8.svg +0 -0
  824. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/af04542b29eaac04550a.woff +0 -0
  825. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/af6397503fcefbd61397.ttf +0 -0
  826. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/af96f67d7accf5fd2a4a.woff +0 -0
  827. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/b418136e3b384baaadec.woff +0 -0
  828. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/be0a084962d8066884f7.svg +0 -0
  829. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/bootstrap.js +0 -0
  830. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/build_log.json +0 -0
  831. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/c49810b53ecc0d87d802.woff +0 -0
  832. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/c56da8d69f1a0208b8e0.woff +0 -0
  833. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/cb9e9e693192413cde2b.woff +0 -0
  834. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/cda59d6efffa685830fd.ttf +0 -0
  835. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/e4299464e7b012968eed.eot +0 -0
  836. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/e42a88444448ac3d6054.woff2 +0 -0
  837. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/e8711bbb871afd8e9dea.ttf +0 -0
  838. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/f9217f66874b0c01cd8c.woff +0 -0
  839. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/fc6ddf5df402b263cfb1.woff +0 -0
  840. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/index.html +0 -0
  841. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/index.out.js +0 -0
  842. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/jlab_core.7930f75c363206fef83d.js +0 -0
  843. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/main.e0ad11baf75be894f6f6.js +0 -0
  844. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/package.json +0 -0
  845. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/style.js +0 -0
  846. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/static/third-party-licenses.json +0 -0
  847. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-extension/index.css +0 -0
  848. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-extension/index.js +0 -0
  849. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-high-contrast-extension/index.css +0 -0
  850. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-high-contrast-extension/index.js +0 -0
  851. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/themes/@jupyterlab/theme-light-extension/index.css +0 -0
  852. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/lab/themes/@jupyterlab/theme-light-extension/index.js +0 -0
  853. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/jupyterlab_pygments/install.json +0 -0
  854. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/jupyterlab_pygments/package.json +0 -0
  855. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/568.1e2faa2ba0bbe59c4780.js +0 -0
  856. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/747.67662283a5707eeb4d4c.js +0 -0
  857. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/remoteEntry.5cbb9d2323598fbda535.js +0 -0
  858. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/style.js +0 -0
  859. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/third-party-licenses.json +0 -0
  860. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/mito_ai/schemas/mito_ai/toolbar-buttons.json +0 -0
  861. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/mito_ai/static/style.js +0 -0
  862. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_semver_index_js.9795f79265ddb416864b.js +0 -0
  863. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_semver_index_js.9795f79265ddb416864b.js.map +0 -0
  864. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js +0 -0
  865. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js.map +0 -0
  866. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/asciidoc/conf.json +0 -0
  867. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/asciidoc/index.asciidoc.j2 +0 -0
  868. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/base/cell_id_anchor.j2 +0 -0
  869. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/base/celltags.j2 +0 -0
  870. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/base/display_priority.j2 +0 -0
  871. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/base/jupyter_widgets.html.j2 +0 -0
  872. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/base/mathjax.html.j2 +0 -0
  873. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/base/null.j2 +0 -0
  874. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/basic/conf.json +0 -0
  875. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/basic/index.html.j2 +0 -0
  876. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/classic/base.html.j2 +0 -0
  877. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/classic/conf.json +0 -0
  878. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/classic/index.html.j2 +0 -0
  879. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/classic/static/style.css +0 -0
  880. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/compatibility/display_priority.tpl +0 -0
  881. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/compatibility/full.tpl +0 -0
  882. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/lab/base.html.j2 +0 -0
  883. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/lab/conf.json +0 -0
  884. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/lab/index.html.j2 +0 -0
  885. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/lab/mermaidjs.html.j2 +0 -0
  886. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/lab/static/index.css +0 -0
  887. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/lab/static/theme-dark.css +0 -0
  888. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/lab/static/theme-light.css +0 -0
  889. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/base.tex.j2 +0 -0
  890. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/conf.json +0 -0
  891. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/display_priority.j2 +0 -0
  892. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/document_contents.tex.j2 +0 -0
  893. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/index.tex.j2 +0 -0
  894. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/null.j2 +0 -0
  895. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/report.tex.j2 +0 -0
  896. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/style_bw_ipython.tex.j2 +0 -0
  897. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/style_bw_python.tex.j2 +0 -0
  898. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/style_ipython.tex.j2 +0 -0
  899. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/style_jupyter.tex.j2 +0 -0
  900. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/latex/style_python.tex.j2 +0 -0
  901. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/markdown/conf.json +0 -0
  902. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/markdown/index.md.j2 +0 -0
  903. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/python/conf.json +0 -0
  904. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/python/index.py.j2 +0 -0
  905. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/reveal/base.html.j2 +0 -0
  906. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/reveal/cellslidedata.j2 +0 -0
  907. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/reveal/conf.json +0 -0
  908. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/reveal/index.html.j2 +0 -0
  909. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/reveal/static/custom_reveal.css +0 -0
  910. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/rst/conf.json +0 -0
  911. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/rst/index.rst.j2 +0 -0
  912. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/script/conf.json +0 -0
  913. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/script/script.j2 +0 -0
  914. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/webpdf/conf.json +0 -0
  915. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/jupyter/nbconvert/templates/webpdf/index.pdf.j2 +0 -0
  916. {mito_ai-0.1.32 → mito_ai-0.1.34}/venv/share/man/man1/ipython.1 +0 -0
  917. {mito_ai-0.1.32 → mito_ai-0.1.34}/yarn.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mito_ai
3
- Version: 0.1.32
3
+ Version: 0.1.34
4
4
  Summary: AI chat for JupyterLab
5
5
  Project-URL: Homepage, https://trymito.io
6
6
  Project-URL: Bug Tracker, https://github.com/mito-ds/monorepo/issues
@@ -1,4 +1,4 @@
1
1
  # This file is auto-generated by Hatchling. As such, do not:
2
2
  # - modify
3
3
  # - track in version control e.g. be sure to add to .gitignore
4
- __version__ = VERSION = '0.1.32'
4
+ __version__ = VERSION = '0.1.34'
@@ -6,7 +6,8 @@ import anthropic
6
6
  from typing import Dict, Any, Optional, Tuple, Union, Callable, List, cast
7
7
 
8
8
  from anthropic.types import Message, MessageParam
9
- from mito_ai.completions.models import ResponseFormatInfo, CompletionReply, CompletionStreamChunk, CompletionItem, MessageType
9
+ from mito_ai.completions.models import CompletionError, ResponseFormatInfo, CompletionReply, CompletionStreamChunk, CompletionItem, MessageType
10
+ from mito_ai.utils.mito_server_utils import ProviderCompletionException
10
11
  from openai.types.chat import ChatCompletionMessageParam
11
12
  from mito_ai.utils.anthropic_utils import get_anthropic_completion_from_mito_server, stream_anthropic_completion_from_mito_server, get_anthropic_completion_function_params
12
13
 
@@ -15,8 +16,6 @@ from mito_ai.utils.anthropic_utils import get_anthropic_completion_from_mito_ser
15
16
  # 8192 is the maximum allowed number of output tokens for claude-3-5-haiku-20241022
16
17
  MAX_TOKENS = 8_000
17
18
 
18
- ANTHROPIC_FAST_MODEL = "claude-3-5-haiku-latest"
19
-
20
19
  def extract_and_parse_anthropic_json_response(response: Message) -> Union[object, Any]:
21
20
  """
22
21
  Extracts and parses the JSON response from the Claude API.
@@ -131,9 +130,8 @@ class AnthropicClient:
131
130
  A client for interacting with the Anthropic API or the Mito server fallback.
132
131
  """
133
132
 
134
- def __init__(self, api_key: Optional[str], model: str, timeout: int = 30, max_retries: int = 1):
133
+ def __init__(self, api_key: Optional[str], timeout: int = 30, max_retries: int = 1):
135
134
  self.api_key = api_key
136
- self.model = model
137
135
  self.timeout = timeout
138
136
  self.max_retries = max_retries
139
137
  self.client: Optional[anthropic.Anthropic]
@@ -142,57 +140,56 @@ class AnthropicClient:
142
140
  else:
143
141
  self.client = None
144
142
 
145
- async def request_completions(self, messages: List[ChatCompletionMessageParam],
146
- response_format_info: Optional[ResponseFormatInfo] = None,
147
- message_type: MessageType = MessageType.CHAT) -> Any:
143
+ async def request_completions(
144
+ self, messages: List[ChatCompletionMessageParam],
145
+ model: str,
146
+ response_format_info: Optional[ResponseFormatInfo] = None,
147
+ message_type: MessageType = MessageType.CHAT
148
+ ) -> Any:
148
149
  """
149
150
  Get a response from Claude or the Mito server that adheres to the AgentResponse format.
150
151
  """
151
- try:
152
- anthropic_system_prompt, anthropic_messages = get_anthropic_system_prompt_and_messages(messages)
153
-
154
- provider_data = get_anthropic_completion_function_params(
155
- model=self.model if response_format_info else ANTHROPIC_FAST_MODEL,
156
- messages=anthropic_messages,
157
- max_tokens=MAX_TOKENS,
158
- temperature=0,
159
- system=anthropic_system_prompt,
160
- stream=None,
161
- response_format_info=response_format_info
162
- )
163
-
164
- if self.api_key:
165
- # Unpack provider_data for direct API call
166
- assert self.client is not None
167
- response = self.client.messages.create(**provider_data)
168
- if provider_data.get("tool_choice") is not None:
169
- result = extract_and_parse_anthropic_json_response(response)
170
- return json.dumps(result) if not isinstance(result, str) else result
171
- else:
172
- content = response.content
173
- if content[0].type == "text":
174
- return content[0].text
175
- else:
176
- return ""
152
+ anthropic_system_prompt, anthropic_messages = get_anthropic_system_prompt_and_messages(messages)
153
+
154
+ provider_data = get_anthropic_completion_function_params(
155
+ message_type=message_type,
156
+ model=model,
157
+ messages=anthropic_messages,
158
+ max_tokens=MAX_TOKENS,
159
+ temperature=0,
160
+ system=anthropic_system_prompt,
161
+ stream=None,
162
+ response_format_info=response_format_info
163
+ )
164
+
165
+ if self.api_key:
166
+ # Unpack provider_data for direct API call
167
+ assert self.client is not None
168
+ response = self.client.messages.create(**provider_data)
169
+ if provider_data.get("tool_choice") is not None:
170
+ result = extract_and_parse_anthropic_json_response(response)
171
+ return json.dumps(result) if not isinstance(result, str) else result
177
172
  else:
178
- # Only pass provider_data to the server
179
- response = await get_anthropic_completion_from_mito_server(
180
- model=provider_data["model"],
181
- max_tokens=provider_data["max_tokens"],
182
- temperature=provider_data["temperature"],
183
- system=provider_data["system"],
184
- messages=provider_data["messages"],
185
- tools=provider_data.get("tools"),
186
- tool_choice=provider_data.get("tool_choice"),
187
- message_type=message_type
188
- )
189
- return response
190
- except anthropic.RateLimitError:
191
- raise Exception("Rate limit exceeded. Please try again later or reduce your request frequency.")
192
- except Exception as e:
193
- return f"Error streaming content: {str(e)}"
173
+ content = response.content
174
+ if content[0].type == "text":
175
+ return content[0].text
176
+ else:
177
+ return ""
178
+ else:
179
+ # Only pass provider_data to the server
180
+ response = await get_anthropic_completion_from_mito_server(
181
+ model=provider_data["model"],
182
+ max_tokens=provider_data["max_tokens"],
183
+ temperature=provider_data["temperature"],
184
+ system=provider_data["system"],
185
+ messages=provider_data["messages"],
186
+ tools=provider_data.get("tools"),
187
+ tool_choice=provider_data.get("tool_choice"),
188
+ message_type=message_type
189
+ )
190
+ return response
194
191
 
195
- async def stream_response(self, messages: List[ChatCompletionMessageParam], message_id: str, message_type: MessageType,
192
+ async def stream_completions(self, messages: List[ChatCompletionMessageParam], model: str, message_id: str, message_type: MessageType,
196
193
  reply_fn: Callable[[Union[CompletionReply, CompletionStreamChunk]], None]) -> str:
197
194
  try:
198
195
  anthropic_system_prompt, anthropic_messages = get_anthropic_system_prompt_and_messages(messages)
@@ -201,7 +198,7 @@ class AnthropicClient:
201
198
  if self.api_key:
202
199
  assert self.client is not None
203
200
  stream = self.client.messages.create(
204
- model=self.model,
201
+ model=model,
205
202
  max_tokens=MAX_TOKENS,
206
203
  temperature=0,
207
204
  system=anthropic_system_prompt,
@@ -229,7 +226,7 @@ class AnthropicClient:
229
226
 
230
227
  else:
231
228
  async for stram_chunk in stream_anthropic_completion_from_mito_server(
232
- model=self.model,
229
+ model=model,
233
230
  max_tokens=MAX_TOKENS,
234
231
  temperature=0,
235
232
  system=anthropic_system_prompt,
@@ -254,6 +251,7 @@ class AnthropicClient:
254
251
  raise Exception("Rate limit exceeded. Please try again later or reduce your request frequency.")
255
252
 
256
253
  except Exception as e:
257
- return f"Error streaming content: {str(e)}"
254
+ print(f"Error streaming content: {str(e)}")
255
+ raise e
258
256
 
259
257
 
@@ -16,11 +16,9 @@ from mito_ai.app_builder.models import (
16
16
  MessageType
17
17
  )
18
18
  from mito_ai.logger import get_logger
19
+ from mito_ai.constants import ACTIVE_STREAMLIT_BASE_URL
19
20
  import requests
20
21
 
21
- # API endpoint for getting pre-signed URL
22
- API_BASE_URL = "https://fr12uvtfy5.execute-api.us-east-1.amazonaws.com"
23
-
24
22
  class AppBuilderHandler(BaseWebSocketHandler):
25
23
  """Handler for app building requests."""
26
24
 
@@ -155,7 +153,7 @@ class AppBuilderHandler(BaseWebSocketHandler):
155
153
  try:
156
154
  # Step 1: Get pre-signed URL from API
157
155
  self.log.info("Getting pre-signed upload URL...")
158
- url_response = requests.get(f"{API_BASE_URL}/get-upload-url?app_name={app_name}")
156
+ url_response = requests.get(f"{ACTIVE_STREAMLIT_BASE_URL}/get-upload-url?app_name={app_name}")
159
157
  url_response.raise_for_status()
160
158
 
161
159
  url_data = url_response.json()
@@ -8,6 +8,7 @@ from openai.types.chat import ChatCompletionMessageParam
8
8
  from enum import Enum
9
9
  from pydantic import BaseModel, Field
10
10
 
11
+
11
12
  # The ThreadID is the unique identifier for the chat thread.
12
13
  ThreadID = NewType('ThreadID', str)
13
14
 
@@ -20,6 +21,7 @@ class CellUpdate(BaseModel):
20
21
  index: Optional[int]
21
22
  id: Optional[str]
22
23
  code: str
24
+ code_summary: str
23
25
  cell_type: Optional[Literal['code', 'markdown']]
24
26
 
25
27
 
@@ -225,6 +227,19 @@ class CompletionError:
225
227
  While mypy doesn't know about this attribute on BaseException, we need to handle it
226
228
  to properly extract error messages from OpenAI API responses.
227
229
  """
230
+ from mito_ai.utils.mito_server_utils import ProviderCompletionException
231
+
232
+
233
+ # Handle ProviderCompletionException specially
234
+ if isinstance(exception, ProviderCompletionException):
235
+ return CompletionError(
236
+ error_type="LLM Provider Error",
237
+ title=exception.user_friendly_title,
238
+ traceback=traceback.format_exc(),
239
+ hint=exception.user_friendly_hint
240
+ )
241
+
242
+ # Handle all other exceptions as before
228
243
  error_type = type(exception)
229
244
  error_module = getattr(error_type, "__module__", "")
230
245
 
@@ -249,7 +264,6 @@ class CompletionError:
249
264
  hint=hint,
250
265
  )
251
266
 
252
-
253
267
  @dataclass(frozen=True)
254
268
  class ErrorMessage(CompletionError):
255
269
  """
@@ -49,6 +49,7 @@ Format:
49
49
  type: 'modification'
50
50
  id: str,
51
51
  code: str
52
+ code_summary: str
52
53
  cell_type: 'code' | 'markdown'
53
54
  }}
54
55
  get_cell_output_cell_id: None,
@@ -59,7 +60,8 @@ Important information:
59
60
  1. The id is the id of the code cell that you want to update. The id MUST already be part of the original Jupyter Notebook that your colleague shared with you.
60
61
  2. The message is a short summary of your thought process that helped you decide what to update in cell_update.
61
62
  3. The code should be the full contents of that updated code cell. The code that you return will overwrite the existing contents of the code cell so it must contain all necessary code.
62
- 4. Important: Only use the CELL_UPDATE tool if you want to add/modify a notebook cell in response to the user's request. If the user is just sending you a friendly greeting or asking you a question about yourself, you SHOULD NOT USE A CELL_UPDATE tool because it does not require modifying the notebook. Instead, just use the FINISHED_TASK response.
63
+ 4. The code_summary must be a very short phrase (1–5 words maximum) that begins with a verb ending in "-ing" (e.g., "Loading data", "Filtering rows", "Calculating average", "Plotting revenue"). Avoid full sentences or explanations—this should read like a quick commit message or code label, not a description.
64
+ 5. Important: Only use the CELL_UPDATE tool if you want to add/modify a notebook cell in response to the user's request. If the user is just sending you a friendly greeting or asking you a question about yourself, you SHOULD NOT USE A CELL_UPDATE tool because it does not require modifying the notebook. Instead, just use the FINISHED_TASK response.
63
65
 
64
66
  #### Cell Addition:
65
67
  When you want to add a new cell to the notebook, respond in this format
@@ -72,6 +74,7 @@ Format:
72
74
  type: 'new'
73
75
  index: int
74
76
  code: str
77
+ code_summary: str
75
78
  cell_type: 'code' | 'markdown'
76
79
  }}
77
80
  get_cell_output_cell_id: None,
@@ -82,7 +85,8 @@ Important information:
82
85
  1. The index should be the 0-index position of where you want the new code cell to be added in the notebook.
83
86
  2. The message is a short summary of your thought process that helped you decide what to update in cell_update.
84
87
  3. The code should be the full contents of that updated code cell. The code that you return will overwrite the existing contents of the code cell so it must contain all necessary code.
85
- 4. The cell_type should only be 'markdown' if there is no code to add. There may be times where the code has comments. These are still code cells and should have the cell_type 'code'. Any cells that are labeled 'markdown' will be converted to markdown cells by the user.
88
+ 4. code_summary must be a very short phrase (1–5 words maximum) that begins with a verb ending in "-ing" (e.g., "Loading data", "Filtering rows", "Calculating average", "Plotting revenue"). Avoid full sentences or explanations—this should read like a quick commit message or code label, not a description.
89
+ 5. The cell_type should only be 'markdown' if there is no code to add. There may be times where the code has comments. These are still code cells and should have the cell_type 'code'. Any cells that are labeled 'markdown' will be converted to markdown cells by the user.
86
90
 
87
91
  <Cell Modification Example>
88
92
  Jupyter Notebook:
@@ -126,6 +130,7 @@ Output:
126
130
  type: 'modification'
127
131
  id: 'c68fdf19-db8c-46dd-926f-d90ad35bb3bc',
128
132
  code: "import pandas as pd\\nsales_df = pd.read_csv('./sales.csv')\\nloan_multiplier = 1.5\\nsales_df['transaction_date'] = pd.to_datetime(sales_df['transaction_date'])\\nsales_df['total_price'] = sales_df['total_price'] * sales_multiplier",
133
+ code_summary: "Converting the transaction_date column",
129
134
  cell_type: 'code'
130
135
  }},
131
136
  get_cell_output_cell_id: None,
@@ -175,6 +180,8 @@ Output:
175
180
  type: 'add'
176
181
  index: 2
177
182
  code: "import matplotlib.pyplot as plt\n\nplt.bar(sales_df.index, sales_df['total_price'])\nplt.title('Total Price per Sale')\nplt.xlabel('Transaction Number')\nplt.ylabel('Sales Price ($)')\nplt.show()"
183
+ code_summary: "Plotting total_price",
184
+ code_summary: "Plotting total_price"
178
185
  }},
179
186
  get_cell_output_cell_id: None,
180
187
  next_steps: None
@@ -309,6 +316,7 @@ Output:
309
316
  type: 'add'
310
317
  index: 2
311
318
  code: "all_time_high_row_idx = tesla_stock_prices_df['closing_price'].idxmax()\nall_time_high_date = tesla_stock_prices_df.at[all_time_high_row_idx, 'Date']\nall_time_high_price = tesla_stock_prices_df.at[all_time_high_row_idx, 'closing_price']"
319
+ code_summary: "Calculating all time high"
312
320
  }},
313
321
  get_cell_output_cell_id: None
314
322
  }}
@@ -2,6 +2,7 @@
2
2
  # Distributed under the terms of the GNU Affero General Public License v3.0 License.
3
3
 
4
4
  from __future__ import annotations
5
+ import asyncio
5
6
  from typing import Any, Callable, Dict, List, Optional, Union, cast
6
7
  from mito_ai import constants
7
8
  from openai.types.chat import ChatCompletionMessageParam
@@ -28,12 +29,16 @@ from mito_ai.completions.models import (
28
29
  from mito_ai.utils.telemetry_utils import (
29
30
  KEY_TYPE_PARAM,
30
31
  MITO_AI_COMPLETION_ERROR,
32
+ MITO_AI_COMPLETION_RETRY,
31
33
  MITO_SERVER_KEY,
32
34
  USER_KEY,
33
35
  log,
36
+ log_ai_completion_error,
37
+ log_ai_completion_retry,
34
38
  log_ai_completion_success,
35
39
  )
36
- from mito_ai.constants import get_model_provider
40
+ from mito_ai.utils.provider_utils import get_model_provider
41
+ from mito_ai.utils.mito_server_utils import ProviderCompletionException
37
42
 
38
43
  __all__ = ["OpenAIProvider"]
39
44
 
@@ -66,6 +71,9 @@ This attribute is observed by the websocket provider to push the error to the cl
66
71
 
67
72
  @property
68
73
  def capabilities(self) -> AICapabilities:
74
+ """
75
+ Returns the capabilities of the AI provider.
76
+ """
69
77
  if constants.CLAUDE_API_KEY and not self.api_key:
70
78
  return AICapabilities(
71
79
  configuration={"model": "<dynamic>"},
@@ -78,6 +86,7 @@ This attribute is observed by the websocket provider to push the error to the cl
78
86
  )
79
87
  if self._openai_client:
80
88
  return self._openai_client.capabilities
89
+
81
90
  return AICapabilities(
82
91
  configuration={"model": "<dynamic>"},
83
92
  provider="Mito server",
@@ -100,7 +109,8 @@ This attribute is observed by the websocket provider to push the error to the cl
100
109
  model: str,
101
110
  response_format_info: Optional[ResponseFormatInfo] = None,
102
111
  user_input: Optional[str] = None,
103
- thread_id: Optional[str] = None
112
+ thread_id: Optional[str] = None,
113
+ max_retries: int = 3
104
114
  ) -> str:
105
115
  """
106
116
  Request completions from the AI provider.
@@ -109,43 +119,69 @@ This attribute is observed by the websocket provider to push the error to the cl
109
119
  completion = None
110
120
  last_message_content = str(messages[-1].get('content', '')) if messages else ""
111
121
  model_type = get_model_provider(model)
112
- try:
113
- if model_type == "claude":
114
- api_key = constants.CLAUDE_API_KEY
115
- anthropic_client = AnthropicClient(api_key=api_key, model=model)
116
- completion = await anthropic_client.request_completions(messages, response_format_info, message_type)
117
- elif model_type == "gemini":
118
- api_key = constants.GEMINI_API_KEY
119
- gemini_client = GeminiClient(api_key=api_key, model=model)
120
- messages_for_gemini = [dict(m) for m in messages]
121
- completion = await gemini_client.request_completions(messages_for_gemini, response_format_info, message_type)
122
- elif model_type == "openai":
123
- if not self._openai_client:
124
- raise RuntimeError("OpenAI client is not initialized.")
125
- completion = await self._openai_client.request_completions(
122
+
123
+ # Retry loop
124
+ for attempt in range(max_retries + 1):
125
+ try:
126
+ if model_type == "claude":
127
+ api_key = constants.CLAUDE_API_KEY
128
+ anthropic_client = AnthropicClient(api_key=api_key)
129
+ completion = await anthropic_client.request_completions(messages, model, response_format_info, message_type)
130
+ elif model_type == "gemini":
131
+ api_key = constants.GEMINI_API_KEY
132
+ gemini_client = GeminiClient(api_key=api_key)
133
+ messages_for_gemini = [dict(m) for m in messages]
134
+ completion = await gemini_client.request_completions(messages_for_gemini, model, response_format_info, message_type)
135
+ elif model_type == "openai":
136
+ if not self._openai_client:
137
+ raise RuntimeError("OpenAI client is not initialized.")
138
+ completion = await self._openai_client.request_completions(
139
+ message_type=message_type,
140
+ messages=messages,
141
+ model=model,
142
+ response_format_info=response_format_info
143
+ )
144
+ else:
145
+ raise ValueError(f"No AI provider configured for model: {model}")
146
+
147
+ # Success! Log and return
148
+ log_ai_completion_success(
149
+ key_type=USER_KEY if self.key_type == "user" else MITO_SERVER_KEY,
126
150
  message_type=message_type,
127
- messages=messages,
128
- model=model,
129
- response_format_info=response_format_info
151
+ last_message_content=last_message_content,
152
+ response={"completion": completion},
153
+ user_input=user_input or "",
154
+ thread_id=thread_id or "",
155
+ model=model
130
156
  )
131
- else:
132
- raise ValueError(f"No AI provider configured for model: {model}")
133
- log_ai_completion_success(
134
- key_type=USER_KEY if self.key_type == "user" else MITO_SERVER_KEY,
135
- message_type=message_type,
136
- last_message_content=last_message_content,
137
- response={"completion": completion},
138
- user_input=user_input or "",
139
- thread_id=thread_id or "",
140
- model=model
141
- )
142
- return completion
157
+ return completion # type: ignore
158
+
159
+ except PermissionError as e:
160
+ # If we hit a free tier limit, then raise an exception right away without retrying.
161
+ self.log.exception(f"Error during request_completions: {e}")
162
+ self.last_error = CompletionError.from_exception(e)
163
+ log_ai_completion_error('user_key' if self.key_type != MITO_SERVER_KEY else 'mito_server_key', message_type, e)
164
+ raise
143
165
 
144
- except BaseException as e:
145
- self.log.exception(f"Error during request_completions: {e}")
146
- self.last_error = CompletionError.from_exception(e)
147
- log(MITO_AI_COMPLETION_ERROR, params={KEY_TYPE_PARAM: self.key_type}, error=e)
148
- raise
166
+ except BaseException as e:
167
+ # Check if we should retry (not on the last attempt)
168
+ if attempt < max_retries:
169
+ # Exponential backoff: wait 2^attempt seconds
170
+ wait_time = 2 ** attempt
171
+ self.log.info(f"Retrying request_completions after {wait_time}s (attempt {attempt + 1}/{max_retries + 1}): {str(e)}")
172
+ log_ai_completion_retry('user_key' if self.key_type != MITO_SERVER_KEY else 'mito_server_key', message_type, e)
173
+ await asyncio.sleep(wait_time)
174
+ continue
175
+ else:
176
+ # Final failure after all retries - set error state and raise
177
+ self.log.exception(f"Error during request_completions after {attempt + 1} attempts: {e}")
178
+ self.last_error = CompletionError.from_exception(e)
179
+ log_ai_completion_error('user_key' if self.key_type != MITO_SERVER_KEY else 'mito_server_key', message_type, e)
180
+ raise
181
+
182
+ # This should never be reached due to the raise in the except block,
183
+ # but added to satisfy the linter
184
+ raise RuntimeError("Unexpected code path in request_completions")
149
185
 
150
186
  async def stream_completions(
151
187
  self,
@@ -176,19 +212,23 @@ This attribute is observed by the websocket provider to push the error to the cl
176
212
  try:
177
213
  if model_type == "claude":
178
214
  api_key = constants.CLAUDE_API_KEY
179
- anthropic_client = AnthropicClient(api_key=api_key, model=model)
180
- accumulated_response = await anthropic_client.stream_response(
215
+ anthropic_client = AnthropicClient(api_key=api_key)
216
+ accumulated_response = await anthropic_client.stream_completions(
181
217
  messages=messages,
218
+ model=model,
182
219
  message_type=message_type,
183
220
  message_id=message_id,
184
221
  reply_fn=reply_fn
185
222
  )
186
223
  elif model_type == "gemini":
187
224
  api_key = constants.GEMINI_API_KEY
188
- gemini_client = GeminiClient(api_key=api_key, model=model)
225
+ gemini_client = GeminiClient(api_key=api_key)
226
+ # TODO: We shouldn't need to do this because the messages should already be dictionaries...
227
+ # but if we do have to do some pre-processing, we should do it in the gemini_client instead.
189
228
  messages_for_gemini = [dict(m) for m in messages]
190
229
  accumulated_response = await gemini_client.stream_completions(
191
230
  messages=messages_for_gemini,
231
+ model=model,
192
232
  message_id=message_id,
193
233
  reply_fn=reply_fn,
194
234
  message_type=message_type
@@ -23,30 +23,9 @@ AZURE_OPENAI_API_VERSION = os.environ.get("AZURE_OPENAI_API_VERSION")
23
23
  AZURE_OPENAI_ENDPOINT = os.environ.get("AZURE_OPENAI_ENDPOINT")
24
24
  AZURE_OPENAI_MODEL = os.environ.get("AZURE_OPENAI_MODEL")
25
25
 
26
- def get_model_provider(model: str) -> Union[str, None]:
27
- """
28
- Determine the model type based on the model name prefix
29
- """
30
- if not model:
31
- return None
32
-
33
- model_lower = model.lower()
34
-
35
- if model_lower.startswith('claude'):
36
- return 'claude'
37
- elif model_lower.startswith('gemini'):
38
- return 'gemini'
39
- elif model_lower.startswith('ollama'):
40
- return 'ollama'
41
- elif model_lower.startswith('gpt'):
42
- return 'openai'
43
-
44
- return None
45
-
46
-
47
26
  # Mito AI Base URLs and Endpoint Paths
48
- MITO_PROD_BASE_URL = "https://yxwyadgaznhavqvgnbfuo2k6ca0jboku.lambda-url.us-east-1.on.aws"
49
- MITO_DEV_BASE_URL = "https://x3rafympznv4abp7phos44gzgu0clbui.lambda-url.us-east-1.on.aws"
27
+ MITO_PROD_BASE_URL = "https://7eax4i53f5odkshhlry4gw23by0yvnuv.lambda-url.us-east-1.on.aws/v1"
28
+ MITO_DEV_BASE_URL = "https://g5vwmogjg7gh7aktqezyrvcq6a0hyfnr.lambda-url.us-east-1.on.aws/v1"
50
29
 
51
30
  # Set ACTIVE_BASE_URL manually
52
31
  ACTIVE_BASE_URL = MITO_PROD_BASE_URL # Change to MITO_DEV_BASE_URL for dev
@@ -59,4 +38,12 @@ OPENAI_PATH = "openai/completions"
59
38
  # Full URLs (always use ACTIVE_BASE_URL)
60
39
  MITO_ANTHROPIC_URL = f"{ACTIVE_BASE_URL}/{ANTHROPIC_PATH}"
61
40
  MITO_GEMINI_URL = f"{ACTIVE_BASE_URL}/{GEMINI_PATH}"
62
- MITO_OPENAI_URL = f"{ACTIVE_BASE_URL}/{OPENAI_PATH}"
41
+ MITO_OPENAI_URL = f"{ACTIVE_BASE_URL}/{OPENAI_PATH}"
42
+
43
+ # Streamlit conversion endpoints
44
+ MITO_STREAMLIT_DEV_BASE_URL = "https://fr12uvtfy5.execute-api.us-east-1.amazonaws.com"
45
+ MITO_STREAMLIT_TEST_BASE_URL = "https://iyual08t6d.execute-api.us-east-1.amazonaws.com"
46
+
47
+ # Set ACTIVE_BASE_URL manually
48
+ # TODO: Modify to PROD url before release
49
+ ACTIVE_STREAMLIT_BASE_URL = MITO_STREAMLIT_TEST_BASE_URL # Change to MITO_STREAMLIT_DEV_BASE_URL for dev