codemie-test-harness 0.1.169__tar.gz → 0.1.170__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 codemie-test-harness might be problematic. Click here for more details.

Files changed (367) hide show
  1. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/PKG-INFO +2 -2
  2. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/cli/cli.py +18 -74
  3. codemie_test_harness-0.1.170/codemie_test_harness/cli/commands/assistant_cmd.py +104 -0
  4. codemie_test_harness-0.1.170/codemie_test_harness/cli/commands/config_cmd.py +638 -0
  5. codemie_test_harness-0.1.170/codemie_test_harness/cli/commands/workflow_cmd.py +64 -0
  6. codemie_test_harness-0.1.170/codemie_test_harness/cli/constants.py +447 -0
  7. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/cli/utils.py +9 -0
  8. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/workflows/test_workflows.py +1 -1
  9. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/credentials_manager.py +0 -15
  10. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/pyproject.toml +2 -2
  11. codemie_test_harness-0.1.169/codemie_test_harness/cli/commands/config_cmd.py +0 -48
  12. codemie_test_harness-0.1.169/codemie_test_harness/cli/constants.py +0 -68
  13. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/README.md +0 -0
  14. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/.env +0 -0
  15. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/__init__.py +0 -0
  16. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/cli/__init__.py +0 -0
  17. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/cli/commands/__init__.py +0 -0
  18. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/cli/commands/run_cmd.py +0 -0
  19. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/cli/runner.py +0 -0
  20. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/pytest.ini +0 -0
  21. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/__init__.py +0 -0
  22. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/__init__.py +0 -0
  23. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/datasource/__init__.py +0 -0
  24. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/datasource/test_code_datasource.py +0 -0
  25. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/datasource/test_confluence_datasource.py +0 -0
  26. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/datasource/test_file_indexing.py +0 -0
  27. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/datasource/test_google_datasource.py +0 -0
  28. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/datasource/test_jira_datasource.py +0 -0
  29. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/default_integrations/__init__.py +0 -0
  30. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool.py +0 -0
  31. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  32. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
  33. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/test_assistants.py +0 -0
  34. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/__init__.py +0 -0
  35. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/access_management/__init__.py +0 -0
  36. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/access_management/test_keycloak_tool.py +0 -0
  37. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/ado/__init__.py +0 -0
  38. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_test_plan_tools.py +0 -0
  39. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_wiki_tools.py +0 -0
  40. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_work_item_tools.py +0 -0
  41. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/cloud/__init__.py +0 -0
  42. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/cloud/test_cloud_tools.py +0 -0
  43. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/codebase/__init__.py +0 -0
  44. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/codebase/test_codebase_tools.py +0 -0
  45. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/datamanagement/__init__.py +0 -0
  46. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/datamanagement/test_assistant_with_data_management_tools.py +0 -0
  47. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/filemanagement/__init__.py +0 -0
  48. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/filemanagement/test_assistant_with_file_management_tools.py +0 -0
  49. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/git/__init__.py +0 -0
  50. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/git/test_assistant_with_git_tools.py +0 -0
  51. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/mcp/__init__.py +0 -0
  52. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/mcp/test_cli_mcp_server.py +0 -0
  53. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/mcp/test_mcp_servers.py +0 -0
  54. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/mcp/test_single_assistant_dual_time_plugins.py +0 -0
  55. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/notification/__init__.py +0 -0
  56. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/notification/test_assistant_notification_tools.py +0 -0
  57. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/openapi/__init__.py +0 -0
  58. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/openapi/test_assistant_with_open_api_tools.py +0 -0
  59. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/plugin/__init__.py +0 -0
  60. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_development_plugin.py +0 -0
  61. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_plugin_and_mcp_servers.py +0 -0
  62. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/project_management/__init__.py +0 -0
  63. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/project_management/test_assistant_pm_tools.py +0 -0
  64. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/report_portal/__init__.py +0 -0
  65. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/report_portal/test_assistant_report_portal_tools.py +0 -0
  66. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/research/__init__.py +0 -0
  67. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/research/test_assistant_research_tools.py +0 -0
  68. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/servicenow/__init__.py +0 -0
  69. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/servicenow/test_servicenow_tools.py +0 -0
  70. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/vcs/__init__.py +0 -0
  71. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/assistant/tools/vcs/test_assistant_with_vcs_tools.py +0 -0
  72. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/conftest.py +0 -0
  73. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/conversations/__init__.py +0 -0
  74. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/conversations/test_conversations_endpoints.py +0 -0
  75. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/e2e/__init__.py +0 -0
  76. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/e2e/test_e2e.py +0 -0
  77. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/enums/__init__.py +0 -0
  78. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/enums/environment.py +0 -0
  79. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/enums/integrations.py +0 -0
  80. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/enums/model_types.py +0 -0
  81. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/enums/tools.py +0 -0
  82. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/integrations/__init__.py +0 -0
  83. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/integrations/project/__init__.py +0 -0
  84. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/integrations/project/test_default_integrations.py +0 -0
  85. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/integrations/project/test_project_integrations.py +0 -0
  86. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/integrations/user/__init__.py +0 -0
  87. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/integrations/user/test_default_integrations.py +0 -0
  88. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/integrations/user/test_user_integrations.py +0 -0
  89. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/llm/__init__.py +0 -0
  90. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/llm/assistants/__init__.py +0 -0
  91. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/llm/assistants/test_lite_llm.py +0 -0
  92. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/llm/assistants/test_llm.py +0 -0
  93. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/providers/__init__.py +0 -0
  94. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/providers/test_providers_endpoints.py +0 -0
  95. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/search/__init__.py +0 -0
  96. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/search/test_search_assistant.py +0 -0
  97. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/search/test_search_datasource.py +0 -0
  98. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/search/test_search_integration.py +0 -0
  99. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/search/test_search_workflow.py +0 -0
  100. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/__init__.py +0 -0
  101. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_assistant_service.py +0 -0
  102. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_datasource_service.py +0 -0
  103. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_integration_service.py +0 -0
  104. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_llm_service.py +0 -0
  105. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_task_service.py +0 -0
  106. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_user_service.py +0 -0
  107. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_workflow_execution_service.py +0 -0
  108. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/service/test_workflow_service.py +0 -0
  109. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/__init__.py +0 -0
  110. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/ado_test_plan_tools_test_data.py +0 -0
  111. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/ado_wiki_tools_test_data.py +0 -0
  112. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/ado_work_item_tools_test_data.py +0 -0
  113. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/assistant_test_data.py +0 -0
  114. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/cloud_tools_test_data.py +0 -0
  115. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/codebase_tools_test_data.py +0 -0
  116. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/data_management_tools_test_data.py +0 -0
  117. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/__init__.py +0 -0
  118. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/ado_test_plan_tools_test_data.py +0 -0
  119. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/ado_wiki_tools_test_data.py +0 -0
  120. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/ado_work_item_tools_test_data.py +0 -0
  121. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/cloud_tools_test_data.py +0 -0
  122. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/codebase_tools_test_data.py +0 -0
  123. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/data_management_tools_test_data.py +0 -0
  124. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/direct_tools_test_data.py +0 -0
  125. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/file_management_tools_test_data.py +0 -0
  126. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/keycloak_tool_test_data.py +0 -0
  127. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/notification_tools_test_data.py +0 -0
  128. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/open_api_tools_test_data.py +0 -0
  129. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/project_management_tools_test_data.py +0 -0
  130. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/report_portal_tools_test_data.py +0 -0
  131. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/research_tools_test_data.py +0 -0
  132. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/servicenow_tools_test_data.py +0 -0
  133. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/direct_tools/vcs_tools_test_data.py +0 -0
  134. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/file_management_tools_test_data.py +0 -0
  135. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/file_test_data.py +0 -0
  136. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/large-files/large_file.txt +0 -0
  137. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/provider_payload.json +0 -0
  138. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.csv +0 -0
  139. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.docx +0 -0
  140. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.gif +0 -0
  141. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.ini +0 -0
  142. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.jpeg +0 -0
  143. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.jpg +0 -0
  144. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.json +0 -0
  145. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.pdf +0 -0
  146. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.png +0 -0
  147. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.pptx +0 -0
  148. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.txt +0 -0
  149. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.vtt +0 -0
  150. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.xlsx +0 -0
  151. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.xml +0 -0
  152. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/files/test.yaml +0 -0
  153. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/git_tools_test_data.py +0 -0
  154. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/google_datasource_test_data.py +0 -0
  155. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/index_test_data.py +0 -0
  156. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/integrations_test_data.py +0 -0
  157. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/keycloak_tool_test_data.py +0 -0
  158. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/llm_test_data.py +0 -0
  159. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/mcp_server_test_data.py +0 -0
  160. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/notification_tools_test_data.py +0 -0
  161. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/open_api_tools_test_data.py +0 -0
  162. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/openapi.json +0 -0
  163. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/output_schema_test_data.py +0 -0
  164. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/plugin_tools_test_data.py +0 -0
  165. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/pm_tools_test_data.py +0 -0
  166. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/project_management_test_data.py +1 -1
  167. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/report_portal_tools_test_data.py +0 -0
  168. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/research_tools_test_data.py +0 -0
  169. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/servicenow_tools_test_data.py +0 -0
  170. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/vcs_tools_test_data.py +0 -0
  171. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_assistant_id.yaml +0 -0
  172. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_assistant_in_state.yaml +0 -0
  173. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_data_source.yaml +0 -0
  174. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_state.yaml +0 -0
  175. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_tool.yaml +0 -0
  176. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_yaml.yaml +0 -0
  177. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_yaml_format.yaml +0 -0
  178. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_assistant_id.yaml +0 -0
  179. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_assistant_tools_name.yaml +0 -0
  180. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_backoff_factor.yaml +0 -0
  181. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_initial_interval.yaml +0 -0
  182. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_max_attempts.yaml +0 -0
  183. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_max_interval.yaml +0 -0
  184. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states.yaml +0 -0
  185. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_id.yaml +0 -0
  186. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next.yaml +0 -0
  187. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_expression.yaml +0 -0
  188. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_otherwise.yaml +0 -0
  189. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_then.yaml +0 -0
  190. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases.yaml +0 -0
  191. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases_condition.yaml +0 -0
  192. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases_state_id.yaml +0 -0
  193. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_default.yaml +0 -0
  194. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_backoff_factor.yaml +0 -0
  195. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_initial_interval.yaml +0 -0
  196. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_max_attempts.yaml +0 -0
  197. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_max_interval.yaml +0 -0
  198. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_system_prompt.yaml +0 -0
  199. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_tools_id.yaml +0 -0
  200. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_tools_name.yaml +0 -0
  201. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/test_data/workflow_validation_messages.py +0 -0
  202. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/__init__.py +0 -0
  203. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/assistants/__init__.py +0 -0
  204. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/assistants/test_create_assistant.py +0 -0
  205. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/conftest.py +0 -0
  206. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/__init__.py +0 -0
  207. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/assistants/__init__.py +0 -0
  208. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/assistants/assistants_page.py +0 -0
  209. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/assistants/create_assistant_page.py +0 -0
  210. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/assistants/generate_with_ai_modal.py +0 -0
  211. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/base_page.py +0 -0
  212. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/__init__.py +0 -0
  213. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/execution_history_row.py +0 -0
  214. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/menu.py +0 -0
  215. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/pop_up.py +0 -0
  216. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/workflow_card.py +0 -0
  217. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/workflow_execution_history_item.py +0 -0
  218. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/workflow_execution_state.py +0 -0
  219. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/workflow_sidebar.py +0 -0
  220. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/components/workflow_state_card.py +0 -0
  221. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/login_page.py +0 -0
  222. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/__init__.py +0 -0
  223. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/base_workflow_form_page.py +0 -0
  224. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/create_workflow_page.py +0 -0
  225. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/edit_workflow_page.py +0 -0
  226. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_details_page.py +0 -0
  227. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_executions_page.py +0 -0
  228. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_template_details.py +0 -0
  229. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_templates_page.py +0 -0
  230. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pageobject/workflows/workflows_page.py +0 -0
  231. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/pytest.ini +0 -0
  232. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/workflows/__init__.py +0 -0
  233. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/workflows/test_create_workflow.py +0 -0
  234. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/workflows/test_edit_workflow.py +0 -0
  235. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/workflows/test_workflow_details.py +0 -0
  236. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/workflows/test_workflow_executions_page.py +0 -0
  237. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/ui/workflows/test_workflow_templates.py +0 -0
  238. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/__init__.py +0 -0
  239. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/assistant_utils.py +0 -0
  240. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/aws_parameters_store.py +0 -0
  241. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/base_utils.py +0 -0
  242. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/client_factory.py +0 -0
  243. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/constants.py +0 -0
  244. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/conversation_utils.py +0 -0
  245. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/datasource_utils.py +0 -0
  246. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/env_resolver.py +0 -0
  247. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/env_utils.py +0 -0
  248. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/file_utils.py +0 -0
  249. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/gitbud_utils.py +0 -0
  250. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/http_utils.py +0 -0
  251. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/integration_utils.py +0 -0
  252. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/json_utils.py +0 -0
  253. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/llm_utils.py +0 -0
  254. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/logger_util.py +0 -0
  255. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/notification_utils.py +0 -0
  256. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/provider_utils.py +0 -0
  257. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/pytest_utils.py +0 -0
  258. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/search_utils.py +0 -0
  259. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/similarity_check.py +0 -0
  260. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/user_utils.py +0 -0
  261. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/workflow_utils.py +0 -0
  262. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/utils/yaml_utils.py +0 -0
  263. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/__init__.py +0 -0
  264. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/__init__.py +0 -0
  265. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/access_management/__init__.py +0 -0
  266. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/access_management/test_workflow_with_assistant_with_keycloak_tool.py +0 -0
  267. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/ado/__init__.py +0 -0
  268. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_test_plan_tools.py +0 -0
  269. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_wiki_tools.py +0 -0
  270. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_work_item_tools.py +0 -0
  271. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/cloud/__init__.py +0 -0
  272. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/cloud/test_workflow_with_assistant_cloud_tools.py +0 -0
  273. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/codebase/__init__.py +0 -0
  274. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/codebase/test_worfklow_with_assistant_codebase_tools.py +0 -0
  275. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/data_management/__init__.py +0 -0
  276. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/data_management/test_workflow_with_assistant_with_data_management_tools.py +0 -0
  277. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/__init__.py +0 -0
  278. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool.py +0 -0
  279. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  280. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
  281. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/file_management/__init__.py +0 -0
  282. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/file_management/test_workflow_with_assistant_with_file_management_tools.py +0 -0
  283. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/git/__init__.py +0 -0
  284. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/git/test_workflow_with_assistant_git_tools.py +0 -0
  285. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/mcp/__init__.py +0 -0
  286. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/mcp/test_workflow_with_assistant_with_mcp_server.py +0 -0
  287. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/notification/__init__.py +0 -0
  288. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/notification/test_workflow_with_assistant_notification_tools.py +0 -0
  289. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/open_api/__init__.py +0 -0
  290. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/open_api/test_workflow_with_assistant_with_open_api_tools.py +0 -0
  291. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/plugin/__init__.py +0 -0
  292. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_development_plugin.py +0 -0
  293. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_plugin_and_mcp_servers.py +0 -0
  294. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/project_management/__init__.py +0 -0
  295. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/project_management/test_workflow_with_assistant_pm_tools.py +0 -0
  296. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/report_portal/__init__.py +0 -0
  297. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/report_portal/test_workflow_with_assistant_with_report_portal_tools.py +0 -0
  298. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/research/__init__.py +0 -0
  299. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/research/test_workflow_with_assistant_research_tools.py +0 -0
  300. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/servicenow/__init__.py +0 -0
  301. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +0 -0
  302. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/vcs/__init__.py +0 -0
  303. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/assistant_tools/vcs/workflow_with_assistant_vcs_tools.py +0 -0
  304. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/config_validation/__init__.py +0 -0
  305. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/config_validation/test_config_validation.py +0 -0
  306. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/__init__.py +0 -0
  307. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/__init__.py +0 -0
  308. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool.py +0 -0
  309. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  310. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_access_management_tool.py +0 -0
  311. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_test_plan_tools.py +0 -0
  312. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_wiki_tools.py +0 -0
  313. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_work_item_tools.py +0 -0
  314. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_cloud_tools.py +0 -0
  315. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_codebase_tools.py +0 -0
  316. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_elastic.py +0 -0
  317. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_sql.py +0 -0
  318. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_file_management_tools.py +0 -0
  319. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_notification_tools.py +0 -0
  320. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_open_api_tools.py +0 -0
  321. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_plugin_tools.py +0 -0
  322. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_project_management_tools.py +0 -0
  323. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_report_portal_tools.py +0 -0
  324. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_research_tools.py +0 -0
  325. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_servicenow_tools.py +0 -0
  326. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_vcs_tools.py +0 -0
  327. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/test_workflows.py +0 -0
  328. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/__init__.py +0 -0
  329. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management/__init__.py +0 -0
  330. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management/test_workflow_with_keycloak_tool.py +0 -0
  331. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/__init__.py +0 -0
  332. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_test_plan_tools.py +0 -0
  333. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_wiki_tools.py +0 -0
  334. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_work_item_tools.py +0 -0
  335. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud/__init__.py +0 -0
  336. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud/test_workflow_with_cloud_tools.py +0 -0
  337. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/codebase/__init__.py +0 -0
  338. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/codebase/test_workflow_with_codebase_tools.py +0 -0
  339. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/data_management/__init__.py +0 -0
  340. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/data_management/test_workflow_with_data_management_tools.py +0 -0
  341. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/__init__.py +0 -0
  342. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool.py +0 -0
  343. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  344. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
  345. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/file_management/__init__.py +0 -0
  346. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/file_management/test_workflow_with_file_management_tools.py +0 -0
  347. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/git/__init__.py +0 -0
  348. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/git/test_workflow_with_git_tools.py +0 -0
  349. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp/__init__.py +0 -0
  350. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp/test_workflow_with_mcp_server.py +0 -0
  351. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/notification/__init__.py +0 -0
  352. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/notification/test_workflow_with_notification_tools.py +0 -0
  353. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/open_api/__init__.py +0 -0
  354. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/open_api/test_workflow_with_open_api_tools.py +0 -0
  355. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/__init__.py +0 -0
  356. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_development_plugin.py +0 -0
  357. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_plugin_and_mcp_servers.py +0 -0
  358. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/project_management/__init__.py +0 -0
  359. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/project_management/test_workflow_with_project_management_tools.py +0 -0
  360. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal/__init__.py +0 -0
  361. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal/test_workflow_with_report_portal_tool.py +0 -0
  362. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/research/__init__.py +0 -0
  363. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/research/test_workflow_with_research_tools.py +0 -0
  364. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/__init__.py +0 -0
  365. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +0 -0
  366. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/__init__.py +0 -0
  367. {codemie_test_harness-0.1.169 → codemie_test_harness-0.1.170}/codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/test_workflow_with_vcs_tools.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: codemie-test-harness
3
- Version: 0.1.169
3
+ Version: 0.1.170
4
4
  Summary: Autotest for CodeMie backend and UI
5
5
  Author: Anton Yeromin
6
6
  Author-email: anton_yeromin@epam.com
@@ -13,7 +13,7 @@ Requires-Dist: aws-assume-role-lib (>=2.10.0,<3.0.0)
13
13
  Requires-Dist: boto3 (>=1.39.8,<2.0.0)
14
14
  Requires-Dist: click (>=8.1.7,<9.0.0)
15
15
  Requires-Dist: codemie-plugins (>=0.1.123,<0.2.0)
16
- Requires-Dist: codemie-sdk-python (==0.1.169)
16
+ Requires-Dist: codemie-sdk-python (==0.1.170)
17
17
  Requires-Dist: pytest (>=8.4.1,<9.0.0)
18
18
  Requires-Dist: pytest-playwright (>=0.7.0,<0.8.0)
19
19
  Requires-Dist: pytest-reportportal (>=5.5.2,<6.0.0)
@@ -20,21 +20,9 @@ from .constants import (
20
20
  KEY_AUTH_CLIENT_SECRET,
21
21
  KEY_AUTH_REALM_NAME,
22
22
  KEY_CODEMIE_API_DOMAIN,
23
+ KEY_AUTH_USERNAME,
24
+ KEY_AUTH_PASSWORD,
23
25
  # integrations
24
- KEY_GIT_ENV,
25
- KEY_GITLAB_URL,
26
- KEY_GITLAB_TOKEN,
27
- KEY_GITLAB_PROJECT,
28
- KEY_GITLAB_PROJECT_ID,
29
- KEY_GITHUB_URL,
30
- KEY_GITHUB_TOKEN,
31
- KEY_GITHUB_PROJECT,
32
- KEY_JIRA_URL,
33
- KEY_JIRA_TOKEN,
34
- KEY_JQL,
35
- KEY_CONFLUENCE_URL,
36
- KEY_CONFLUENCE_TOKEN,
37
- KEY_CQL,
38
26
  DEFAULT_MARKS,
39
27
  DEFAULT_XDIST_N,
40
28
  DEFAULT_RERUNS,
@@ -45,6 +33,8 @@ from .utils import get_config_value, ensure_env_from_config
45
33
  from .runner import run_pytest
46
34
  from .commands.config_cmd import config_cmd
47
35
  from .commands.run_cmd import run_cmd
36
+ from .commands.assistant_cmd import assistant_cmd
37
+ from .commands.workflow_cmd import workflow_cmd
48
38
 
49
39
 
50
40
  @click.group(context_settings=CONTEXT_SETTINGS)
@@ -65,40 +55,12 @@ from .commands.run_cmd import run_cmd
65
55
  "--auth-client-secret", envvar=KEY_AUTH_CLIENT_SECRET, help="Auth client secret"
66
56
  )
67
57
  @click.option("--auth-realm-name", envvar=KEY_AUTH_REALM_NAME, help="Auth realm name")
58
+ @click.option("--auth-username", envvar=KEY_AUTH_USERNAME, help="Auth username")
59
+ @click.option("--auth-password", envvar=KEY_AUTH_PASSWORD, help="Auth password")
68
60
  @click.option(
69
61
  "--api-domain", envvar=KEY_CODEMIE_API_DOMAIN, help="CodeMie API domain URL"
70
62
  )
71
- # Integrations
72
- @click.option(
73
- "--git-env",
74
- envvar=KEY_GIT_ENV,
75
- type=click.Choice(["gitlab", "github"], case_sensitive=False),
76
- help="Git provider env: gitlab or github",
77
- )
78
- # GitLab
79
- @click.option("--gitlab-url", envvar=KEY_GITLAB_URL, help="GitLab base URL")
80
- @click.option("--gitlab-token", envvar=KEY_GITLAB_TOKEN, help="GitLab access token")
81
- @click.option("--gitlab-project", envvar=KEY_GITLAB_PROJECT, help="GitLab project URL")
82
- @click.option(
83
- "--gitlab-project-id",
84
- envvar=KEY_GITLAB_PROJECT_ID,
85
- help="GitLab project id",
86
- type=str,
87
- )
88
- # GitHub
89
- @click.option("--github-url", envvar=KEY_GITHUB_URL, help="GitHub base URL")
90
- @click.option("--github-token", envvar=KEY_GITHUB_TOKEN, help="GitHub access token")
91
- @click.option("--github-project", envvar=KEY_GITHUB_PROJECT, help="GitHub project URL")
92
- # JIRA
93
- @click.option("--jira-url", envvar=KEY_JIRA_URL, help="Jira base URL")
94
- @click.option("--jira-token", envvar=KEY_JIRA_TOKEN, help="Jira token")
95
- @click.option("--jql", envvar=KEY_JQL, help="JQL query string")
96
- # Confluence
97
- @click.option("--confluence-url", envvar=KEY_CONFLUENCE_URL, help="Confluence base URL")
98
- @click.option(
99
- "--confluence-token", envvar=KEY_CONFLUENCE_TOKEN, help="Confluence token"
100
- )
101
- @click.option("--cql", envvar=KEY_CQL, help="CQL query string")
63
+ # Integration credentials are set via 'codemie-test-harness config set' command
102
64
  @click.pass_context
103
65
  def cli(
104
66
  ctx: click.Context,
@@ -109,25 +71,18 @@ def cli(
109
71
  auth_client_id: Optional[str],
110
72
  auth_client_secret: Optional[str],
111
73
  auth_realm_name: Optional[str],
74
+ auth_username: Optional[str],
75
+ auth_password: Optional[str],
112
76
  api_domain: Optional[str],
113
- git_env: Optional[str],
114
- gitlab_url: Optional[str],
115
- gitlab_token: Optional[str],
116
- gitlab_project: Optional[str],
117
- gitlab_project_id: Optional[str],
118
- github_url: Optional[str],
119
- github_token: Optional[str],
120
- github_project: Optional[str],
121
- jira_url: Optional[str],
122
- jira_token: Optional[str],
123
- jql: Optional[str],
124
- confluence_url: Optional[str],
125
- confluence_token: Optional[str],
126
- cql: Optional[str],
127
77
  ):
128
78
  """CodeMie Test Harness CLI.
129
79
 
130
80
  Without subcommand it will run pytest using configured defaults.
81
+
82
+ Integration credentials should be set using:
83
+ codemie-test-harness config set KEY VALUE
84
+
85
+ Use 'codemie-test-harness config vars' to see all available credentials.
131
86
  """
132
87
  ctx.ensure_object(dict)
133
88
 
@@ -150,23 +105,10 @@ def cli(
150
105
  KEY_AUTH_SERVER_URL: auth_server_url,
151
106
  KEY_AUTH_CLIENT_ID: auth_client_id,
152
107
  KEY_AUTH_CLIENT_SECRET: auth_client_secret,
108
+ KEY_AUTH_USERNAME: auth_username,
109
+ KEY_AUTH_PASSWORD: auth_password,
153
110
  KEY_AUTH_REALM_NAME: auth_realm_name,
154
111
  KEY_CODEMIE_API_DOMAIN: api_domain,
155
- # integrations
156
- KEY_GIT_ENV: git_env,
157
- KEY_GITLAB_URL: gitlab_url,
158
- KEY_GITLAB_TOKEN: gitlab_token,
159
- KEY_GITLAB_PROJECT: gitlab_project,
160
- KEY_GITLAB_PROJECT_ID: gitlab_project_id,
161
- KEY_GITHUB_URL: github_url,
162
- KEY_GITHUB_TOKEN: github_token,
163
- KEY_GITHUB_PROJECT: github_project,
164
- KEY_JIRA_URL: jira_url,
165
- KEY_JIRA_TOKEN: jira_token,
166
- KEY_JQL: jql,
167
- KEY_CONFLUENCE_URL: confluence_url,
168
- KEY_CONFLUENCE_TOKEN: confluence_token,
169
- KEY_CQL: cql,
170
112
  }
171
113
  for k, v in provided.items():
172
114
  if v is not None and v != "":
@@ -186,6 +128,8 @@ def cli(
186
128
  # Register subcommands
187
129
  cli.add_command(config_cmd)
188
130
  cli.add_command(run_cmd)
131
+ cli.add_command(assistant_cmd)
132
+ cli.add_command(workflow_cmd)
189
133
 
190
134
 
191
135
  if __name__ == "__main__": # pragma: no cover
@@ -0,0 +1,104 @@
1
+ """Assistant CLI commands for interactive chat with assistants."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import uuid
6
+ from typing import Optional
7
+
8
+ import click
9
+
10
+ import os
11
+
12
+ from codemie_sdk.models.assistant import AssistantChatRequest
13
+ from codemie_test_harness.tests.utils.client_factory import get_client
14
+ from ..constants import CONSOLE
15
+
16
+
17
+ @click.group(name="assistant")
18
+ def assistant_cmd():
19
+ """Interact with CodeMie assistants."""
20
+ pass
21
+
22
+
23
+ @assistant_cmd.command(name="chat")
24
+ @click.option(
25
+ "--assistant-id",
26
+ required=True,
27
+ help="Assistant ID to chat with",
28
+ )
29
+ @click.option(
30
+ "--conversation-id",
31
+ help="Conversation ID to continue existing chat (optional)",
32
+ )
33
+ @click.option(
34
+ "--message",
35
+ "-m",
36
+ required=True,
37
+ help="Message to send to the assistant",
38
+ )
39
+ @click.option(
40
+ "--stream/--no-stream",
41
+ default=False,
42
+ help="Stream the response (default: no-stream)",
43
+ )
44
+ def chat_cmd(
45
+ assistant_id: str,
46
+ conversation_id: Optional[str],
47
+ message: str,
48
+ stream: bool,
49
+ ):
50
+ """Chat with a specific assistant.
51
+
52
+ Example:
53
+ codemie-test-harness assistant chat --assistant-id "asst_123" -m "Hello, how can you help me?"
54
+ codemie-test-harness assistant chat --assistant-id "asst_123" --conversation-id "conv_456" -m "Continue our conversation"
55
+ """
56
+ try:
57
+ client = get_client()
58
+
59
+ # Generate conversation ID if not provided
60
+ if not conversation_id:
61
+ conversation_id = str(uuid.uuid4())
62
+ CONSOLE.print(
63
+ f"[green]New conversation started with ID: {conversation_id}[/green]"
64
+ )
65
+ else:
66
+ CONSOLE.print(f"[blue]Continuing conversation: {conversation_id}[/blue]")
67
+
68
+ # Create chat request
69
+ langfuse_enabled = (
70
+ os.getenv("LANGFUSE_TRACES_ENABLED", "false").lower() == "true"
71
+ )
72
+ chat_request = AssistantChatRequest(
73
+ text=message,
74
+ conversation_id=conversation_id,
75
+ stream=stream,
76
+ metadata={"langfuse_traces_enabled": langfuse_enabled},
77
+ )
78
+
79
+ CONSOLE.print(
80
+ f"[yellow]Sending message to assistant {assistant_id}...[/yellow]"
81
+ )
82
+
83
+ # Send chat request
84
+ response = client.assistants.chat(
85
+ assistant_id=assistant_id, request=chat_request
86
+ )
87
+
88
+ # Display response
89
+ if hasattr(response, "generated") and response.generated:
90
+ CONSOLE.print("[green]Assistant Response:[/green]")
91
+ CONSOLE.print(response.generated)
92
+ elif hasattr(response, "task_id") and response.task_id:
93
+ CONSOLE.print(
94
+ f"[yellow]Background task created with ID: {response.task_id}[/yellow]"
95
+ )
96
+ CONSOLE.print(
97
+ "[blue]You can check the task status using the task ID[/blue]"
98
+ )
99
+ else:
100
+ CONSOLE.print(f"[cyan]Raw response:[/cyan] {response}")
101
+
102
+ except Exception as e:
103
+ CONSOLE.print(f"[red]Error chatting with assistant: {e}[/red]")
104
+ raise click.ClickException(str(e))