mcli-framework 8.0.55__tar.gz → 8.0.56__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/PKG-INFO +5 -1
  2. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/pyproject.toml +13 -1
  3. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli_framework.egg-info/PKG-INFO +5 -1
  4. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli_framework.egg-info/SOURCES.txt +1 -128
  5. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli_framework.egg-info/requires.txt +4 -0
  6. mcli_framework-8.0.55/.github/dependabot.yml +0 -49
  7. mcli_framework-8.0.55/.github/dependency-review-config.yml +0 -17
  8. mcli_framework-8.0.55/.github/workflows/build.yml +0 -102
  9. mcli_framework-8.0.55/.github/workflows/ci.yml +0 -274
  10. mcli_framework-8.0.55/.github/workflows/codeql.yml +0 -43
  11. mcli_framework-8.0.55/.github/workflows/docs-links.yml +0 -48
  12. mcli_framework-8.0.55/.github/workflows/publish-self-hosted.yml +0 -244
  13. mcli_framework-8.0.55/.github/workflows/publish.yml +0 -225
  14. mcli_framework-8.0.55/.github/workflows/release.yml +0 -77
  15. mcli_framework-8.0.55/.github/workflows/security.yml +0 -128
  16. mcli_framework-8.0.55/.github/workflows/test.yml +0 -154
  17. mcli_framework-8.0.55/tests/cli/__init__.py +0 -0
  18. mcli_framework-8.0.55/tests/cli/test_all_commands.py +0 -7
  19. mcli_framework-8.0.55/tests/cli/test_app_logs_cmd.py +0 -206
  20. mcli_framework-8.0.55/tests/cli/test_app_redis_cmd.py +0 -276
  21. mcli_framework-8.0.55/tests/cli/test_logs_cmd.py +0 -287
  22. mcli_framework-8.0.55/tests/cli/test_main_app.py +0 -36
  23. mcli_framework-8.0.55/tests/cli/test_model_cmd.py +0 -619
  24. mcli_framework-8.0.55/tests/cli/test_self_cmd.py +0 -788
  25. mcli_framework-8.0.55/tests/cli/test_self_cmd_plugins.py +0 -273
  26. mcli_framework-8.0.55/tests/cli/test_self_cmd_utilities.py +0 -225
  27. mcli_framework-8.0.55/tests/cli/test_workflow_creation_commands.py +0 -109
  28. mcli_framework-8.0.55/tests/cli/test_workflow_file.py +0 -137
  29. mcli_framework-8.0.55/tests/cli/test_workflow_gcloud.py +0 -120
  30. mcli_framework-8.0.55/tests/cli/test_workflow_registry.py +0 -231
  31. mcli_framework-8.0.55/tests/conftest.py +0 -149
  32. mcli_framework-8.0.55/tests/e2e/__init__.py +0 -0
  33. mcli_framework-8.0.55/tests/e2e/test_complete_workflows.py +0 -422
  34. mcli_framework-8.0.55/tests/e2e/test_model_workflow.py +0 -155
  35. mcli_framework-8.0.55/tests/e2e/test_new_user_workflow.py +0 -144
  36. mcli_framework-8.0.55/tests/e2e/test_update_workflow.py +0 -195
  37. mcli_framework-8.0.55/tests/fixtures/__init__.py +0 -75
  38. mcli_framework-8.0.55/tests/fixtures/chat_fixtures.py +0 -82
  39. mcli_framework-8.0.55/tests/fixtures/cli_fixtures.py +0 -93
  40. mcli_framework-8.0.55/tests/fixtures/command_fixtures.py +0 -325
  41. mcli_framework-8.0.55/tests/fixtures/data_fixtures.py +0 -97
  42. mcli_framework-8.0.55/tests/fixtures/db_fixtures.py +0 -100
  43. mcli_framework-8.0.55/tests/fixtures/model_fixtures.py +0 -66
  44. mcli_framework-8.0.55/tests/integration/__init__.py +0 -0
  45. mcli_framework-8.0.55/tests/integration/test_all_commands_comprehensive.py +0 -878
  46. mcli_framework-8.0.55/tests/integration/test_daemon_server.py +0 -824
  47. mcli_framework-8.0.55/tests/integration/test_direct_file_execution.py +0 -257
  48. mcli_framework-8.0.55/tests/integration/test_e2e_dashboard_lsh_supabase.py +0 -695
  49. mcli_framework-8.0.55/tests/integration/test_flask_webapp.py +0 -7
  50. mcli_framework-8.0.55/tests/integration/test_folder_workflows_integration.py +0 -382
  51. mcli_framework-8.0.55/tests/integration/test_gcloud_services.py +0 -58
  52. mcli_framework-8.0.55/tests/integration/test_ml_data_pipeline.py +0 -642
  53. mcli_framework-8.0.55/tests/integration/test_module_imports.py +0 -132
  54. mcli_framework-8.0.55/tests/integration/test_notebook_workflows.py +0 -503
  55. mcli_framework-8.0.55/tests/integration/test_oi_service.py +0 -10
  56. mcli_framework-8.0.55/tests/integration/test_repo_operations.py +0 -77
  57. mcli_framework-8.0.55/tests/integration/test_scheduler_integration.py +0 -482
  58. mcli_framework-8.0.55/tests/integration/test_service_registry.py +0 -141
  59. mcli_framework-8.0.55/tests/integration/test_video_processing.py +0 -69
  60. mcli_framework-8.0.55/tests/integration/test_wakatime_api.py +0 -10
  61. mcli_framework-8.0.55/tests/integration/test_webapp_full.py +0 -7
  62. mcli_framework-8.0.55/tests/integration/test_workflow.py +0 -7
  63. mcli_framework-8.0.55/tests/integration/test_workflow_commands.py +0 -7
  64. mcli_framework-8.0.55/tests/performance/__init__.py +0 -0
  65. mcli_framework-8.0.55/tests/property/__init__.py +0 -0
  66. mcli_framework-8.0.55/tests/unit/__init__.py +0 -0
  67. mcli_framework-8.0.55/tests/unit/storage/__init__.py +0 -1
  68. mcli_framework-8.0.55/tests/unit/storage/test_cache.py +0 -244
  69. mcli_framework-8.0.55/tests/unit/storage/test_encryption.py +0 -118
  70. mcli_framework-8.0.55/tests/unit/storage/test_storacha_cli.py +0 -285
  71. mcli_framework-8.0.55/tests/unit/test_api_utils.py +0 -98
  72. mcli_framework-8.0.55/tests/unit/test_async_process_manager.py +0 -571
  73. mcli_framework-8.0.55/tests/unit/test_auth_modules.py +0 -324
  74. mcli_framework-8.0.55/tests/unit/test_bug_fixes.py +0 -41
  75. mcli_framework-8.0.55/tests/unit/test_command_fixtures.py +0 -240
  76. mcli_framework-8.0.55/tests/unit/test_config.py +0 -98
  77. mcli_framework-8.0.55/tests/unit/test_correlation_logging.py +0 -698
  78. mcli_framework-8.0.55/tests/unit/test_custom_commands.py +0 -338
  79. mcli_framework-8.0.55/tests/unit/test_custom_commands_filtering.py +0 -164
  80. mcli_framework-8.0.55/tests/unit/test_daemon_api.py +0 -266
  81. mcli_framework-8.0.55/tests/unit/test_dependencies.py +0 -60
  82. mcli_framework-8.0.55/tests/unit/test_doc_convert_workflow.py +0 -259
  83. mcli_framework-8.0.55/tests/unit/test_emulator_workflow.py +0 -618
  84. mcli_framework-8.0.55/tests/unit/test_erd_generation.py +0 -1365
  85. mcli_framework-8.0.55/tests/unit/test_erd_generic.py +0 -254
  86. mcli_framework-8.0.55/tests/unit/test_erd_imports.py +0 -21
  87. mcli_framework-8.0.55/tests/unit/test_folder_workflows.py +0 -401
  88. mcli_framework-8.0.55/tests/unit/test_git_commit_workflow.py +0 -343
  89. mcli_framework-8.0.55/tests/unit/test_health_cmd.py +0 -589
  90. mcli_framework-8.0.55/tests/unit/test_import_cmd.py +0 -866
  91. mcli_framework-8.0.55/tests/unit/test_init_mv_cmd.py +0 -293
  92. mcli_framework-8.0.55/tests/unit/test_ipfs_cmd.py +0 -320
  93. mcli_framework-8.0.55/tests/unit/test_ipfs_retry.py +0 -233
  94. mcli_framework-8.0.55/tests/unit/test_language_suffix.py +0 -467
  95. mcli_framework-8.0.55/tests/unit/test_lib_auth.py +0 -10
  96. mcli_framework-8.0.55/tests/unit/test_lib_files.py +0 -55
  97. mcli_framework-8.0.55/tests/unit/test_lib_utils.py +0 -9
  98. mcli_framework-8.0.55/tests/unit/test_logger.py +0 -214
  99. mcli_framework-8.0.55/tests/unit/test_new_cmd.py +0 -819
  100. mcli_framework-8.0.55/tests/unit/test_notebook_command_loader.py +0 -525
  101. mcli_framework-8.0.55/tests/unit/test_notebook_executor.py +0 -233
  102. mcli_framework-8.0.55/tests/unit/test_optional_deps.py +0 -211
  103. mcli_framework-8.0.55/tests/unit/test_paths.py +0 -202
  104. mcli_framework-8.0.55/tests/unit/test_pdf_compress.py +0 -257
  105. mcli_framework-8.0.55/tests/unit/test_pyenv.py +0 -427
  106. mcli_framework-8.0.55/tests/unit/test_regression.py +0 -129
  107. mcli_framework-8.0.55/tests/unit/test_scheduler.py +0 -439
  108. mcli_framework-8.0.55/tests/unit/test_scheduler_cron_parser.py +0 -509
  109. mcli_framework-8.0.55/tests/unit/test_scheduler_job.py +0 -505
  110. mcli_framework-8.0.55/tests/unit/test_scheduler_models.py +0 -419
  111. mcli_framework-8.0.55/tests/unit/test_scheduler_monitor.py +0 -509
  112. mcli_framework-8.0.55/tests/unit/test_scheduler_persistence.py +0 -709
  113. mcli_framework-8.0.55/tests/unit/test_scheduler_validation.py +0 -390
  114. mcli_framework-8.0.55/tests/unit/test_script_loader_options.py +0 -210
  115. mcli_framework-8.0.55/tests/unit/test_security_command_injection.py +0 -225
  116. mcli_framework-8.0.55/tests/unit/test_self_update.py +0 -200
  117. mcli_framework-8.0.55/tests/unit/test_service_config.py +0 -82
  118. mcli_framework-8.0.55/tests/unit/test_service_health.py +0 -88
  119. mcli_framework-8.0.55/tests/unit/test_service_manager.py +0 -150
  120. mcli_framework-8.0.55/tests/unit/test_service_state.py +0 -93
  121. mcli_framework-8.0.55/tests/unit/test_services_cmd.py +0 -162
  122. mcli_framework-8.0.55/tests/unit/test_shell_exceptions.py +0 -428
  123. mcli_framework-8.0.55/tests/unit/test_shell_functions.py +0 -329
  124. mcli_framework-8.0.55/tests/unit/test_shell_security.py +0 -215
  125. mcli_framework-8.0.55/tests/unit/test_store_cmd.py +0 -445
  126. mcli_framework-8.0.55/tests/unit/test_sync_cmd.py +0 -391
  127. mcli_framework-8.0.55/tests/unit/test_toml_utils.py +0 -192
  128. mcli_framework-8.0.55/tests/unit/test_ui_rich.py +0 -22
  129. mcli_framework-8.0.55/tests/unit/test_uv_compat.py +0 -224
  130. mcli_framework-8.0.55/tests/unit/test_workflow_file_completion.py +0 -219
  131. mcli_framework-8.0.55/tests/unit/test_workflow_models.py +0 -337
  132. mcli_framework-8.0.55/tests/unit/workflow/test_notebook.py +0 -443
  133. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/LICENSE +0 -0
  134. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/MANIFEST.in +0 -0
  135. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/README.md +0 -0
  136. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/llms-full.txt +0 -0
  137. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/llms.txt +0 -0
  138. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/mcli_rust/Cargo.toml +0 -0
  139. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/mcli_rust/src/command_parser.rs +0 -0
  140. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/mcli_rust/src/file_watcher.rs +0 -0
  141. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/mcli_rust/src/lib.rs +0 -0
  142. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/mcli_rust/src/process_manager.rs +0 -0
  143. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/mcli_rust/src/tfidf.rs +0 -0
  144. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/setup.cfg +0 -0
  145. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/__init__.py +0 -0
  146. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/__main__.py +0 -0
  147. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/__init__.py +0 -0
  148. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/commands_cmd.py +0 -0
  149. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/completion_helpers.py +0 -0
  150. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/context_cmd.py +0 -0
  151. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/create_cmd.py +0 -0
  152. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/delete_cmd.py +0 -0
  153. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/edit_cmd.py +0 -0
  154. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/import_cmd.py +0 -0
  155. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/init_cmd.py +0 -0
  156. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/list_cmd.py +0 -0
  157. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/main.py +0 -0
  158. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/migrate_cmd.py +0 -0
  159. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/model/__init__.py +0 -0
  160. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/model/model.py +0 -0
  161. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/model_cmd.py +0 -0
  162. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/mv_cmd.py +0 -0
  163. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/new_cmd.py +0 -0
  164. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/remove_cmd.py +0 -0
  165. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/rm_cmd.py +0 -0
  166. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/search_cmd.py +0 -0
  167. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/services_cmd.py +0 -0
  168. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/setup_cmd.py +0 -0
  169. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/source_sync_cmd.py +0 -0
  170. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/sync_cmd.py +0 -0
  171. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/video/__init__.py +0 -0
  172. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/app/video/video.py +0 -0
  173. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/config.toml +0 -0
  174. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/__init__.py +0 -0
  175. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/api/__init__.py +0 -0
  176. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/api/api.py +0 -0
  177. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/api/daemon_client.py +0 -0
  178. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/api/daemon_client_local.py +0 -0
  179. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/api/daemon_decorator.py +0 -0
  180. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/api/mcli_decorators.py +0 -0
  181. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/__init__.py +0 -0
  182. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/auth.py +0 -0
  183. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/aws_manager.py +0 -0
  184. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/azure_manager.py +0 -0
  185. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/credential_manager.py +0 -0
  186. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/gcp_manager.py +0 -0
  187. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/key_manager.py +0 -0
  188. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/mcli_manager.py +0 -0
  189. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/token_manager.py +0 -0
  190. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/auth/token_util.py +0 -0
  191. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/config/__init__.py +0 -0
  192. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/config/config.py +0 -0
  193. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/config/settings.py +0 -0
  194. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/__init__.py +0 -0
  195. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/commands.py +0 -0
  196. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/defaults.py +0 -0
  197. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/env.py +0 -0
  198. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/messages.py +0 -0
  199. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/paths.py +0 -0
  200. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/scripts.py +0 -0
  201. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/constants/storage.py +0 -0
  202. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/custom_commands.py +0 -0
  203. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/discovery/__init__.py +0 -0
  204. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/discovery/command_discovery.py +0 -0
  205. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/erd/__init__.py +0 -0
  206. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/erd/erd.py +0 -0
  207. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/erd/generate_graph.py +0 -0
  208. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/errors.py +0 -0
  209. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/feature_detection.py +0 -0
  210. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/files/__init__.py +0 -0
  211. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/files/files.py +0 -0
  212. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/folder_workflows.py +0 -0
  213. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/fs/__init__.py +0 -0
  214. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/fs/fs.py +0 -0
  215. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/ipfs_sync.py +0 -0
  216. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/ipfs_utils.py +0 -0
  217. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/ipns_manager.py +0 -0
  218. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/lib.py +0 -0
  219. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/logger/__init__.py +0 -0
  220. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/logger/correlation.py +0 -0
  221. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/logger/logger.py +0 -0
  222. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/logger/structured.py +0 -0
  223. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/optional_deps.py +0 -0
  224. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/paths.py +0 -0
  225. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/performance/__init__.py +0 -0
  226. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/performance/optimizer.py +0 -0
  227. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/performance/rust_bridge.py +0 -0
  228. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/performance/uvloop_config.py +0 -0
  229. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/pickles/__init__.py +0 -0
  230. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/pickles/pickles.py +0 -0
  231. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/pyenv/__init__.py +0 -0
  232. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/pyenv/deps.py +0 -0
  233. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/pyenv/manager.py +0 -0
  234. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/pyenv/venv.py +0 -0
  235. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/script_loader.py +0 -0
  236. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/script_sync.py +0 -0
  237. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/script_watcher.py +0 -0
  238. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/search/cached_vectorizer.py +0 -0
  239. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/secrets/__init__.py +0 -0
  240. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/secrets/commands.py +0 -0
  241. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/secrets/manager.py +0 -0
  242. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/secrets/repl.py +0 -0
  243. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/secrets/store.py +0 -0
  244. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/__init__.py +0 -0
  245. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/config.py +0 -0
  246. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/data_pipeline.py +0 -0
  247. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/health.py +0 -0
  248. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/lsh_client.py +0 -0
  249. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/manager.py +0 -0
  250. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/redis_service.py +0 -0
  251. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/registry.py +0 -0
  252. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/state.py +0 -0
  253. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/services/supervisor.py +0 -0
  254. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/shell/__init__.py +0 -0
  255. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/shell/exceptions.py +0 -0
  256. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/shell/shell.py +0 -0
  257. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/sync_key_store.py +0 -0
  258. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/templates/__init__.py +0 -0
  259. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/templates/command_templates.py +0 -0
  260. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/toml/__init__.py +0 -0
  261. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/toml/toml.py +0 -0
  262. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/types.py +0 -0
  263. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/ui/styling.py +0 -0
  264. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/ui/visual_effects.py +0 -0
  265. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/watcher/__init__.py +0 -0
  266. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/watcher/watcher.py +0 -0
  267. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/workflow_models.py +0 -0
  268. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/lib/workspace_registry.py +0 -0
  269. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/mygroup/__init__.py +0 -0
  270. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/mygroup/test_cmd.py +0 -0
  271. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/public/__init__.py +0 -0
  272. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/public/commands/__init__.py +0 -0
  273. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/public/oi/oi.py +0 -0
  274. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/public/public.py +0 -0
  275. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/__init__.py +0 -0
  276. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/completion_cmd.py +0 -0
  277. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/env_cmd.py +0 -0
  278. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/health_cmd.py +0 -0
  279. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/ipfs_cmd.py +0 -0
  280. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/logs_cmd.py +0 -0
  281. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/migrate_cmd.py +0 -0
  282. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/release_notes_cmd.py +0 -0
  283. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/self_cmd.py +0 -0
  284. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/store_cmd.py +0 -0
  285. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/test_cmd.py +0 -0
  286. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/self/workflows_cmd.py +0 -0
  287. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/__init__.py +0 -0
  288. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/backends/__init__.py +0 -0
  289. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/backends/ipfs_backend.py +0 -0
  290. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/base.py +0 -0
  291. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/cache.py +0 -0
  292. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/encryption.py +0 -0
  293. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/factory.py +0 -0
  294. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/registry.py +0 -0
  295. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/storage/storacha_cli.py +0 -0
  296. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/__init__.py +0 -0
  297. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/ci/__init__.py +0 -0
  298. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/ci/act_runner.py +0 -0
  299. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/ci/ci.py +0 -0
  300. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/ci/runner_status.py +0 -0
  301. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/ci/workflow_transform.py +0 -0
  302. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/__init__.py +0 -0
  303. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/async_command_database.py +0 -0
  304. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/async_process_manager.py +0 -0
  305. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/client.py +0 -0
  306. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/daemon.py +0 -0
  307. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/daemon_api.py +0 -0
  308. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/enhanced_daemon.py +0 -0
  309. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/process_cli.py +0 -0
  310. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/process_manager.py +0 -0
  311. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/daemon/test_daemon.py +0 -0
  312. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/doc_convert.py +0 -0
  313. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/docker/__init__.py +0 -0
  314. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/docker/docker.py +0 -0
  315. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/file/__init__.py +0 -0
  316. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/gcloud/__init__.py +0 -0
  317. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/gcloud/config.toml +0 -0
  318. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/gcloud/gcloud.py +0 -0
  319. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/git_commit/__init__.py +0 -0
  320. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/git_commit/ai_service.py +0 -0
  321. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/interview/__init__.py +0 -0
  322. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/lsh_integration.py +0 -0
  323. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/client.py +0 -0
  324. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/download_and_run_efficient_models.py +0 -0
  325. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/lightweight_embedder.py +0 -0
  326. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/lightweight_model_server.py +0 -0
  327. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/lightweight_test.py +0 -0
  328. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/model_service.py +0 -0
  329. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/ollama_efficient_runner.py +0 -0
  330. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/openai_adapter.py +0 -0
  331. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/pdf_processor.py +0 -0
  332. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/test_efficient_runner.py +0 -0
  333. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/test_example.py +0 -0
  334. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/test_integration.py +0 -0
  335. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/model_service/test_new_features.py +0 -0
  336. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/notebook/__init__.py +0 -0
  337. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/notebook/command_loader.py +0 -0
  338. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/notebook/converter.py +0 -0
  339. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/notebook/executor.py +0 -0
  340. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/notebook/notebook_cmd.py +0 -0
  341. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/notebook/schema.py +0 -0
  342. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/notebook/validator.py +0 -0
  343. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/openai/openai.py +0 -0
  344. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/registry/__init__.py +0 -0
  345. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/registry/registry.py +0 -0
  346. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/repo/__init__.py +0 -0
  347. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/repo/repo.py +0 -0
  348. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/__init__.py +0 -0
  349. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/cron_parser.py +0 -0
  350. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/job.py +0 -0
  351. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/models.py +0 -0
  352. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/monitor.py +0 -0
  353. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/persistence.py +0 -0
  354. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/scheduler.py +0 -0
  355. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/scheduler/validation.py +0 -0
  356. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/search/__init__.py +0 -0
  357. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/secrets/__init__.py +0 -0
  358. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/secrets/secrets_cmd.py +0 -0
  359. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/storage/__init__.py +0 -0
  360. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/storage/storage_cmd.py +0 -0
  361. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/sync/__init__.py +0 -0
  362. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/sync/test_cmd.py +0 -0
  363. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/videos/__init__.py +0 -0
  364. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/wakatime/__init__.py +0 -0
  365. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/wakatime/wakatime.py +0 -0
  366. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli/workflow/workflow.py +0 -0
  367. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli_framework.egg-info/dependency_links.txt +0 -0
  368. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli_framework.egg-info/entry_points.txt +0 -0
  369. {mcli_framework-8.0.55 → mcli_framework-8.0.56}/src/mcli_framework.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mcli-framework
3
- Version: 8.0.55
3
+ Version: 8.0.56
4
4
  Summary: Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/workflows/, version with lockfile, run as daemon or cron job.
5
5
  Author-email: Luis Fernandez de la Vara <luis@lefv.io>
6
6
  Maintainer-email: Luis Fernandez de la Vara <luis@lefv.io>
@@ -94,6 +94,10 @@ Requires-Dist: flake8-simplify>=0.21.0; extra == "dev"
94
94
  Requires-Dist: pre-commit>=4.5.1; extra == "dev"
95
95
  Requires-Dist: bandit>=1.7.0; extra == "dev"
96
96
  Requires-Dist: safety>=3.0.0; extra == "dev"
97
+ Requires-Dist: pandas>=2.0.0; extra == "dev"
98
+ Requires-Dist: pydot>=2.0.0; extra == "dev"
99
+ Requires-Dist: openpyxl>=3.1.0; extra == "dev"
100
+ Requires-Dist: scikit-learn>=1.3.0; extra == "dev"
97
101
  Requires-Dist: build>=1.2.2.post1; extra == "dev"
98
102
  Requires-Dist: maturin>=1.9.3; extra == "dev"
99
103
  Requires-Dist: twine>=4.0.0; extra == "dev"
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mcli-framework"
3
- version = "8.0.55"
3
+ version = "8.0.56"
4
4
  description = "Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/workflows/, version with lockfile, run as daemon or cron job."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -117,6 +117,12 @@ dev = [
117
117
  "bandit>=1.7.0",
118
118
  "safety>=3.0.0",
119
119
 
120
+ # Optional-feature deps exercised by the test suite (ERD/repo graphs) — kept
121
+ # in dev so CI can run those tests strictly instead of best-effort (#169).
122
+ "pandas>=2.0.0",
123
+ "pydot>=2.0.0",
124
+ "openpyxl>=3.1.0", # Excel engine for repo.py pd.ExcelWriter (#169)
125
+ "scikit-learn>=1.3.0", # sklearn TF-IDF fallback for cached_vectorizer (pulls scipy) (#169)
120
126
  # Build tools
121
127
  "build>=1.2.2.post1",
122
128
  "maturin>=1.9.3",
@@ -298,6 +304,12 @@ dev = [
298
304
  # Security
299
305
  "bandit>=1.7.0",
300
306
  "safety>=3.0.0",
307
+ # Optional-feature deps exercised by the test suite (ERD/repo graphs) — kept
308
+ # in dev so CI can run those tests strictly instead of best-effort (#169).
309
+ "pandas>=2.0.0",
310
+ "pydot>=2.0.0",
311
+ "openpyxl>=3.1.0", # Excel engine for repo.py pd.ExcelWriter (#169)
312
+ "scikit-learn>=1.3.0", # sklearn TF-IDF fallback for cached_vectorizer (pulls scipy) (#169)
301
313
  # Pre-commit / build / publish
302
314
  "pre-commit>=4.5.1",
303
315
  "build>=1.2.2.post1",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mcli-framework
3
- Version: 8.0.55
3
+ Version: 8.0.56
4
4
  Summary: Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/workflows/, version with lockfile, run as daemon or cron job.
5
5
  Author-email: Luis Fernandez de la Vara <luis@lefv.io>
6
6
  Maintainer-email: Luis Fernandez de la Vara <luis@lefv.io>
@@ -94,6 +94,10 @@ Requires-Dist: flake8-simplify>=0.21.0; extra == "dev"
94
94
  Requires-Dist: pre-commit>=4.5.1; extra == "dev"
95
95
  Requires-Dist: bandit>=1.7.0; extra == "dev"
96
96
  Requires-Dist: safety>=3.0.0; extra == "dev"
97
+ Requires-Dist: pandas>=2.0.0; extra == "dev"
98
+ Requires-Dist: pydot>=2.0.0; extra == "dev"
99
+ Requires-Dist: openpyxl>=3.1.0; extra == "dev"
100
+ Requires-Dist: scikit-learn>=1.3.0; extra == "dev"
97
101
  Requires-Dist: build>=1.2.2.post1; extra == "dev"
98
102
  Requires-Dist: maturin>=1.9.3; extra == "dev"
99
103
  Requires-Dist: twine>=4.0.0; extra == "dev"
@@ -5,17 +5,6 @@ llms-full.txt
5
5
  llms.txt
6
6
  pyproject.toml
7
7
  setup.cfg
8
- .github/dependabot.yml
9
- .github/dependency-review-config.yml
10
- .github/workflows/build.yml
11
- .github/workflows/ci.yml
12
- .github/workflows/codeql.yml
13
- .github/workflows/docs-links.yml
14
- .github/workflows/publish-self-hosted.yml
15
- .github/workflows/publish.yml
16
- .github/workflows/release.yml
17
- .github/workflows/security.yml
18
- .github/workflows/test.yml
19
8
  mcli_rust/Cargo.toml
20
9
  mcli_rust/src/command_parser.rs
21
10
  mcli_rust/src/file_watcher.rs
@@ -249,120 +238,4 @@ src/mcli_framework.egg-info/SOURCES.txt
249
238
  src/mcli_framework.egg-info/dependency_links.txt
250
239
  src/mcli_framework.egg-info/entry_points.txt
251
240
  src/mcli_framework.egg-info/requires.txt
252
- src/mcli_framework.egg-info/top_level.txt
253
- tests/conftest.py
254
- tests/cli/__init__.py
255
- tests/cli/test_all_commands.py
256
- tests/cli/test_app_logs_cmd.py
257
- tests/cli/test_app_redis_cmd.py
258
- tests/cli/test_logs_cmd.py
259
- tests/cli/test_main_app.py
260
- tests/cli/test_model_cmd.py
261
- tests/cli/test_self_cmd.py
262
- tests/cli/test_self_cmd_plugins.py
263
- tests/cli/test_self_cmd_utilities.py
264
- tests/cli/test_workflow_creation_commands.py
265
- tests/cli/test_workflow_file.py
266
- tests/cli/test_workflow_gcloud.py
267
- tests/cli/test_workflow_registry.py
268
- tests/e2e/__init__.py
269
- tests/e2e/test_complete_workflows.py
270
- tests/e2e/test_model_workflow.py
271
- tests/e2e/test_new_user_workflow.py
272
- tests/e2e/test_update_workflow.py
273
- tests/fixtures/__init__.py
274
- tests/fixtures/chat_fixtures.py
275
- tests/fixtures/cli_fixtures.py
276
- tests/fixtures/command_fixtures.py
277
- tests/fixtures/data_fixtures.py
278
- tests/fixtures/db_fixtures.py
279
- tests/fixtures/model_fixtures.py
280
- tests/integration/__init__.py
281
- tests/integration/test_all_commands_comprehensive.py
282
- tests/integration/test_daemon_server.py
283
- tests/integration/test_direct_file_execution.py
284
- tests/integration/test_e2e_dashboard_lsh_supabase.py
285
- tests/integration/test_flask_webapp.py
286
- tests/integration/test_folder_workflows_integration.py
287
- tests/integration/test_gcloud_services.py
288
- tests/integration/test_ml_data_pipeline.py
289
- tests/integration/test_module_imports.py
290
- tests/integration/test_notebook_workflows.py
291
- tests/integration/test_oi_service.py
292
- tests/integration/test_repo_operations.py
293
- tests/integration/test_scheduler_integration.py
294
- tests/integration/test_service_registry.py
295
- tests/integration/test_video_processing.py
296
- tests/integration/test_wakatime_api.py
297
- tests/integration/test_webapp_full.py
298
- tests/integration/test_workflow.py
299
- tests/integration/test_workflow_commands.py
300
- tests/performance/__init__.py
301
- tests/property/__init__.py
302
- tests/unit/__init__.py
303
- tests/unit/test_api_utils.py
304
- tests/unit/test_async_process_manager.py
305
- tests/unit/test_auth_modules.py
306
- tests/unit/test_bug_fixes.py
307
- tests/unit/test_command_fixtures.py
308
- tests/unit/test_config.py
309
- tests/unit/test_correlation_logging.py
310
- tests/unit/test_custom_commands.py
311
- tests/unit/test_custom_commands_filtering.py
312
- tests/unit/test_daemon_api.py
313
- tests/unit/test_dependencies.py
314
- tests/unit/test_doc_convert_workflow.py
315
- tests/unit/test_emulator_workflow.py
316
- tests/unit/test_erd_generation.py
317
- tests/unit/test_erd_generic.py
318
- tests/unit/test_erd_imports.py
319
- tests/unit/test_folder_workflows.py
320
- tests/unit/test_git_commit_workflow.py
321
- tests/unit/test_health_cmd.py
322
- tests/unit/test_import_cmd.py
323
- tests/unit/test_init_mv_cmd.py
324
- tests/unit/test_ipfs_cmd.py
325
- tests/unit/test_ipfs_retry.py
326
- tests/unit/test_language_suffix.py
327
- tests/unit/test_lib_auth.py
328
- tests/unit/test_lib_files.py
329
- tests/unit/test_lib_utils.py
330
- tests/unit/test_logger.py
331
- tests/unit/test_new_cmd.py
332
- tests/unit/test_notebook_command_loader.py
333
- tests/unit/test_notebook_executor.py
334
- tests/unit/test_optional_deps.py
335
- tests/unit/test_paths.py
336
- tests/unit/test_pdf_compress.py
337
- tests/unit/test_pyenv.py
338
- tests/unit/test_regression.py
339
- tests/unit/test_scheduler.py
340
- tests/unit/test_scheduler_cron_parser.py
341
- tests/unit/test_scheduler_job.py
342
- tests/unit/test_scheduler_models.py
343
- tests/unit/test_scheduler_monitor.py
344
- tests/unit/test_scheduler_persistence.py
345
- tests/unit/test_scheduler_validation.py
346
- tests/unit/test_script_loader_options.py
347
- tests/unit/test_security_command_injection.py
348
- tests/unit/test_self_update.py
349
- tests/unit/test_service_config.py
350
- tests/unit/test_service_health.py
351
- tests/unit/test_service_manager.py
352
- tests/unit/test_service_state.py
353
- tests/unit/test_services_cmd.py
354
- tests/unit/test_shell_exceptions.py
355
- tests/unit/test_shell_functions.py
356
- tests/unit/test_shell_security.py
357
- tests/unit/test_store_cmd.py
358
- tests/unit/test_sync_cmd.py
359
- tests/unit/test_toml_utils.py
360
- tests/unit/test_ui_rich.py
361
- tests/unit/test_uv_compat.py
362
- tests/unit/test_workflow_file_completion.py
363
- tests/unit/test_workflow_models.py
364
- tests/unit/storage/__init__.py
365
- tests/unit/storage/test_cache.py
366
- tests/unit/storage/test_encryption.py
367
- tests/unit/storage/test_storacha_cli.py
368
- tests/unit/workflow/test_notebook.py
241
+ src/mcli_framework.egg-info/top_level.txt
@@ -57,6 +57,10 @@ flake8-simplify>=0.21.0
57
57
  pre-commit>=4.5.1
58
58
  bandit>=1.7.0
59
59
  safety>=3.0.0
60
+ pandas>=2.0.0
61
+ pydot>=2.0.0
62
+ openpyxl>=3.1.0
63
+ scikit-learn>=1.3.0
60
64
  build>=1.2.2.post1
61
65
  maturin>=1.9.3
62
66
  twine>=4.0.0
@@ -1,49 +0,0 @@
1
- version: 2
2
- updates:
3
- # Python dependencies
4
- - package-ecosystem: "pip"
5
- directory: "/"
6
- schedule:
7
- interval: "weekly"
8
- day: "monday"
9
- open-pull-requests-limit: 10
10
- reviewers:
11
- - "gwicho38"
12
- labels:
13
- - "dependencies"
14
- - "python"
15
- commit-message:
16
- prefix: "chore"
17
- include: "scope"
18
-
19
- # GitHub Actions
20
- - package-ecosystem: "github-actions"
21
- directory: "/"
22
- schedule:
23
- interval: "weekly"
24
- day: "monday"
25
- open-pull-requests-limit: 5
26
- reviewers:
27
- - "gwicho38"
28
- labels:
29
- - "dependencies"
30
- - "github-actions"
31
- commit-message:
32
- prefix: "chore"
33
- include: "scope"
34
-
35
- # Docker
36
- - package-ecosystem: "docker"
37
- directory: "/"
38
- schedule:
39
- interval: "weekly"
40
- day: "monday"
41
- open-pull-requests-limit: 5
42
- reviewers:
43
- - "gwicho38"
44
- labels:
45
- - "dependencies"
46
- - "docker"
47
- commit-message:
48
- prefix: "chore"
49
- include: "scope"
@@ -1,17 +0,0 @@
1
- # Dependency Review configuration
2
- # https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review
3
-
4
- # Fail on moderate and above vulnerabilities
5
- fail-on-severity: moderate
6
-
7
- # Allow specific licenses commonly used in npm packages
8
- allow-licenses:
9
- - MIT
10
- - Apache-2.0
11
- - BSD-2-Clause
12
- - BSD-3-Clause
13
- - ISC
14
- - 0BSD
15
-
16
- # Comment on PRs with dependency changes
17
- comment-summary-in-pr: on-failure
@@ -1,102 +0,0 @@
1
- name: Build and Package
2
-
3
- on:
4
- push:
5
- branches: [ main ]
6
- pull_request:
7
- branches: [ main ]
8
- workflow_dispatch:
9
- inputs:
10
- debug:
11
- description: 'Enable debug mode'
12
- required: false
13
- default: false
14
- type: boolean
15
-
16
- env:
17
- PYTHON_VERSION: '3.11'
18
- UV_VERSION: 'latest'
19
-
20
- jobs:
21
- build:
22
- name: Build Package
23
- strategy:
24
- matrix:
25
- platform: [ubuntu-latest] # self-hosted linux
26
-
27
- runs-on: [self-hosted, linux, x64]
28
-
29
- steps:
30
- - name: Checkout code
31
- uses: actions/checkout@v4
32
-
33
- - name: Set up Python
34
- uses: actions/setup-python@v4
35
- with:
36
- python-version: ${{ env.PYTHON_VERSION }}
37
-
38
- - name: Install UV
39
- run: |
40
- if [[ "${{ matrix.platform }}" == "ubuntu-latest" ]]; then
41
- curl -LsSf https://astral.sh/uv/install.sh | sh
42
- echo "$HOME/.cargo/bin" >> $GITHUB_PATH
43
- elif [[ "${{ matrix.platform }}" == "macos-latest" ]]; then
44
- curl -LsSf https://astral.sh/uv/install.sh | sh
45
- echo "$HOME/.cargo/bin" >> $GITHUB_PATH
46
- fi
47
-
48
- - name: Set up environment
49
- run: |
50
- if command -v uv >/dev/null 2>&1; then
51
- make setup
52
- else
53
- python -m pip install --upgrade pip build
54
- pip install -e .
55
- fi
56
-
57
- - name: Build wheel
58
- run: |
59
- if command -v uv >/dev/null 2>&1; then
60
- make wheel
61
- else
62
- python -m build --wheel
63
- fi
64
-
65
- - name: Test basic functionality
66
- run: |
67
- if command -v uv >/dev/null 2>&1; then
68
- make test
69
- else
70
- python -c "import mcli; print('✅ Package imports successfully')"
71
- python -m mcli --help
72
- fi
73
-
74
- - name: Upload wheel artifact
75
- uses: actions/upload-artifact@v4
76
- with:
77
- name: mcli-wheel-${{ matrix.platform }}
78
- path: dist/*.whl
79
- retention-days: 30
80
-
81
-
82
- build-summary:
83
- name: Build Summary
84
- needs: build
85
- runs-on: [self-hosted, linux, x64]
86
- if: always()
87
-
88
- steps:
89
- - name: Build Status Summary
90
- run: |
91
- echo "## Build Results" >> $GITHUB_STEP_SUMMARY
92
- echo "| Platform | Status |" >> $GITHUB_STEP_SUMMARY
93
- echo "|----------|--------|" >> $GITHUB_STEP_SUMMARY
94
- echo "| Ubuntu | ${{ needs.build.result }} |" >> $GITHUB_STEP_SUMMARY
95
- echo "| macOS | ${{ needs.build.result }} |" >> $GITHUB_STEP_SUMMARY
96
- echo "| Windows | ${{ needs.build.result }} |" >> $GITHUB_STEP_SUMMARY
97
-
98
- if [ "${{ needs.build.result }}" = "success" ]; then
99
- echo "✅ All builds completed successfully!" >> $GITHUB_STEP_SUMMARY
100
- else
101
- echo "❌ Some builds failed. Check the logs for details." >> $GITHUB_STEP_SUMMARY
102
- fi
@@ -1,274 +0,0 @@
1
- name: CI/CD Pipeline
2
-
3
- on:
4
- push:
5
- branches: [ main, develop ]
6
- pull_request:
7
- branches: [ main ]
8
- workflow_dispatch:
9
-
10
- env:
11
- PYTHON_VERSION: "3.11"
12
-
13
- jobs:
14
- lint-and-format:
15
- name: Lint and Format Check
16
- runs-on: [self-hosted, linux, x64]
17
-
18
- steps:
19
- - name: Checkout code
20
- uses: actions/checkout@v4
21
-
22
- - name: Set up Python
23
- uses: actions/setup-python@v4
24
- with:
25
- python-version: ${{ env.PYTHON_VERSION }}
26
-
27
- - name: Install dependencies
28
- run: |
29
- python -m pip install --upgrade pip
30
- pip install -e .[dev]
31
-
32
- - name: Check code formatting with Black
33
- run: black --check --diff src/
34
-
35
- - name: Check import sorting with isort
36
- run: isort --check-only --diff src/
37
-
38
- - name: Check for hardcoded strings
39
- run: python tools/lint_hardcoded_strings.py --check-all --json
40
- continue-on-error: true # Non-blocking until codebase refactoring is complete (13k+ violations)
41
-
42
- - name: Type checking with mypy (full codebase)
43
- run: mypy src/ --ignore-missing-imports
44
- continue-on-error: true # Non-blocking due to type errors in remaining modules
45
-
46
- - name: Type checking with mypy (priority modules)
47
- run: |
48
- # Check priority modules that have improved type annotations (issue #40)
49
- # These modules have fewer errors and are gradually being fully typed
50
- mypy src/mcli/lib/logger/logger.py src/mcli/lib/custom_commands.py --ignore-missing-imports
51
- continue-on-error: true # Non-blocking until all function signatures are typed
52
-
53
- test-rust:
54
- name: Test Rust Extensions
55
- runs-on: [self-hosted, linux, x64]
56
- continue-on-error: true # Non-blocking: macOS has LLVM version mismatch, tests pass on Ubuntu
57
- strategy:
58
- fail-fast: false
59
- matrix:
60
- os: [ubuntu-latest] # self-hosted linux
61
-
62
- steps:
63
- - name: Checkout code
64
- uses: actions/checkout@v4
65
-
66
- - name: Set up Python
67
- uses: actions/setup-python@v4
68
- with:
69
- python-version: ${{ env.PYTHON_VERSION }}
70
-
71
- - name: Set up Rust
72
- uses: dtolnay/rust-toolchain@stable
73
- with:
74
- components: rustfmt, clippy
75
-
76
- - name: Rust format check
77
- run: |
78
- cd mcli_rust
79
- cargo fmt --all -- --check
80
-
81
- - name: Rust clippy
82
- run: |
83
- cd mcli_rust
84
- cargo clippy -- -D warnings || cargo clippy || echo "Warning: Clippy found issues, continuing"
85
- continue-on-error: ${{ matrix.os == 'macos-latest' }}
86
-
87
- - name: Rust tests
88
- run: |
89
- cd mcli_rust
90
- cargo test
91
-
92
- test-python:
93
- name: Test Python Package
94
- runs-on: [self-hosted, linux, x64]
95
- continue-on-error: true # Some tests require optional deps (pandas, pydot) not in [dev]
96
- strategy:
97
- fail-fast: false
98
- matrix:
99
- os: [ubuntu-latest] # self-hosted linux
100
- python-version: ["3.10", "3.11", "3.12"]
101
-
102
- steps:
103
- - name: Checkout code
104
- uses: actions/checkout@v4
105
-
106
- - name: Set up Python
107
- uses: actions/setup-python@v4
108
- with:
109
- python-version: ${{ matrix.python-version }}
110
-
111
- - name: Install system dependencies (Ubuntu)
112
- if: matrix.os == 'ubuntu-latest'
113
- run: |
114
- sudo apt-get update
115
- sudo apt-get install -y build-essential libpq-dev
116
-
117
- - name: Install system dependencies (macOS)
118
- if: matrix.os == 'macos-latest'
119
- run: |
120
- brew install postgresql@16
121
-
122
- - name: Set up Rust (for building extensions)
123
- uses: dtolnay/rust-toolchain@stable
124
-
125
- - name: Install Python dependencies
126
- run: |
127
- python -m pip install --upgrade pip
128
- pip install maturin
129
- pip install -e .[dev]
130
-
131
- - name: Build Rust extensions
132
- run: |
133
- cd mcli_rust
134
- maturin develop --release || maturin develop || echo "Warning: Rust extension build failed, continuing without extensions"
135
- continue-on-error: ${{ matrix.python-version == '3.12' }}
136
-
137
- - name: Run Python tests with coverage
138
- run: |
139
- pytest tests/ -v --tb=short --cov=src/mcli --cov-report=xml --cov-report=term-missing
140
-
141
- - name: Upload coverage to Codecov
142
- uses: codecov/codecov-action@v4
143
- if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.11'
144
- with:
145
- file: ./coverage.xml
146
- flags: unittests
147
- name: codecov-umbrella
148
- fail_ci_if_error: false
149
-
150
- - name: Test CLI functionality
151
- run: |
152
- mcli self version
153
- mcli --help
154
- mcli self --help
155
-
156
- integration-test:
157
- name: Integration Tests
158
- runs-on: [self-hosted, linux, x64]
159
- continue-on-error: true # Non-blocking: Rust-Python integration depends on optional extensions
160
- if: always() # Run even if test-python or test-rust fail
161
- needs: [test-python, test-rust]
162
-
163
- steps:
164
- - name: Checkout code
165
- uses: actions/checkout@v4
166
-
167
- - name: Set up Python
168
- uses: actions/setup-python@v4
169
- with:
170
- python-version: ${{ env.PYTHON_VERSION }}
171
-
172
- - name: Set up Rust
173
- uses: dtolnay/rust-toolchain@stable
174
-
175
- - name: Create virtual environment
176
- run: |
177
- python -m venv .venv
178
- echo "VIRTUAL_ENV=${{ github.workspace }}/.venv" >> $GITHUB_ENV
179
- echo "${{ github.workspace }}/.venv/bin" >> $GITHUB_PATH
180
-
181
- - name: Install dependencies
182
- run: |
183
- .venv/bin/python -m pip install --upgrade pip
184
- .venv/bin/pip install maturin
185
- .venv/bin/pip install -e .[dev]
186
-
187
- - name: Build Rust extensions
188
- id: rust_build
189
- run: |
190
- cd mcli_rust
191
- if maturin develop --release; then
192
- echo "rust_available=true" >> $GITHUB_OUTPUT
193
- elif maturin develop; then
194
- echo "rust_available=true" >> $GITHUB_OUTPUT
195
- else
196
- echo "rust_available=false" >> $GITHUB_OUTPUT
197
- echo "Warning: Rust extension build failed"
198
- fi
199
- continue-on-error: true
200
-
201
- - name: Test Rust-Python integration
202
- if: steps.rust_build.outputs.rust_available == 'true'
203
- run: |
204
- .venv/bin/python -c "
205
- import mcli_rust
206
- print('✅ Rust extensions imported successfully')
207
-
208
- # Test TF-IDF
209
- vectorizer = mcli_rust.TfIdfVectorizer()
210
- docs = ['hello world', 'rust is fast', 'python integration']
211
- vectors = vectorizer.fit_transform(docs)
212
- print(f'✅ TF-IDF: Generated {len(vectors)} vectors')
213
-
214
- # Test File Watcher
215
- watcher = mcli_rust.FileWatcher()
216
- print('✅ File Watcher: Created successfully')
217
-
218
- # Test Command Matcher
219
- matcher = mcli_rust.CommandMatcher()
220
- print('✅ Command Matcher: Created successfully')
221
-
222
- # Test Process Manager
223
- manager = mcli_rust.ProcessManager()
224
- print('✅ Process Manager: Created successfully')
225
-
226
- print('🎉 All Rust extensions working!')
227
- "
228
-
229
- - name: Test CLI basic functionality
230
- run: |
231
- .venv/bin/mcli self version
232
- .venv/bin/mcli --help
233
- .venv/bin/mcli health
234
-
235
- build-package:
236
- name: Build Distribution Package
237
- runs-on: [self-hosted, linux, x64]
238
- if: always() # Run even if tests fail
239
- needs: [lint-and-format, test-python, test-rust, integration-test]
240
-
241
- steps:
242
- - name: Checkout code
243
- uses: actions/checkout@v4
244
-
245
- - name: Set up Python
246
- uses: actions/setup-python@v4
247
- with:
248
- python-version: ${{ env.PYTHON_VERSION }}
249
-
250
- - name: Set up Rust
251
- uses: dtolnay/rust-toolchain@stable
252
-
253
- - name: Install build dependencies
254
- run: |
255
- python -m pip install --upgrade pip
256
- pip install build maturin
257
-
258
- - name: Build Rust extensions
259
- run: |
260
- cd mcli_rust
261
- maturin build --release
262
-
263
- - name: Build Python package
264
- run: |
265
- python -m build
266
-
267
- - name: Upload build artifacts
268
- uses: actions/upload-artifact@v4
269
- with:
270
- name: dist-packages
271
- path: |
272
- dist/
273
- mcli_rust/target/wheels/
274
- retention-days: 7