codemie-test-harness 0.1.225__tar.gz → 0.1.227__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.
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/PKG-INFO +2 -2
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/conftest.py +13 -1
- codemie_test_harness-0.1.227/codemie_test_harness/tests/test_data/vendor_knowledge_base_test_data.py +84 -0
- codemie_test_harness-0.1.225/codemie_test_harness/tests/utils/vendor_utils.py → codemie_test_harness-0.1.227/codemie_test_harness/tests/utils/vendor_assistant_utils.py +81 -2
- codemie_test_harness-0.1.227/codemie_test_harness/tests/utils/vendor_knowledge_base_utils.py +350 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/vendor_workflow_utils.py +1 -1
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/vendor/assistants/test_vendor_assistants.py +1 -1
- codemie_test_harness-0.1.227/codemie_test_harness/tests/vendor/knowledge_bases/__init__.py +1 -0
- codemie_test_harness-0.1.227/codemie_test_harness/tests/vendor/knowledge_bases/test_vendor_knowledge_base_endpoints.py +285 -0
- codemie_test_harness-0.1.227/codemie_test_harness/tests/vendor/knowledge_bases/test_vendor_knowledge_bases.py +123 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/pyproject.toml +2 -2
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/README.md +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/.env +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/cli.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/commands/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/commands/assistant_cmd.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/commands/config_cmd.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/commands/marks_cmd.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/commands/run_cmd.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/commands/workflow_cmd.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/constants.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/marks_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/runner.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/cli/utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/pytest.ini +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/datasource/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/datasource/test_code_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/datasource/test_confluence_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/datasource/test_file_indexing.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/datasource/test_google_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/datasource/test_jira_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/default_integrations/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/test_assistants.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/test_sub_assistants.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/access_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/access_management/test_keycloak_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/ado/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_test_plan_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_wiki_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_work_item_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/cloud/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/cloud/test_cloud_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/codebase/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/codebase/test_codebase_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/datamanagement/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/datamanagement/test_assistant_with_data_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/filemanagement/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/filemanagement/test_assistant_with_file_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/git/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/git/test_assistant_with_git_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/mcp/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/mcp/test_cli_mcp_server.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/mcp/test_mcp_servers.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/notification/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/notification/test_assistant_notification_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/openapi/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/openapi/test_assistant_with_open_api_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/plugin/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_development_plugin.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_plugin_and_mcp_servers.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/plugin/test_single_assistant_dual_time_plugins.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/project_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/project_management/test_assistant_pm_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/report_portal/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/report_portal/test_assistant_report_portal_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/research/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/research/test_assistant_research_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/servicenow/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/servicenow/test_servicenow_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/vcs/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/assistant/tools/vcs/test_assistant_with_vcs_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/conversations/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/conversations/test_conversations_endpoints.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/e2e/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/e2e/test_e2e.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/enums/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/enums/environment.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/enums/integrations.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/enums/model_types.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/enums/tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/integrations/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/integrations/project/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/integrations/project/test_default_integrations.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/integrations/project/test_project_integrations.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/integrations/user/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/integrations/user/test_default_integrations.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/integrations/user/test_user_integrations.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/llm/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/llm/assistants/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/llm/assistants/test_lite_llm.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/llm/assistants/test_llm.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/providers/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/providers/test_providers_endpoints.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/scheduler/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/scheduler/test_scheduler_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/search/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/search/test_search_assistant.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/search/test_search_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/search/test_search_integration.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/search/test_search_workflow.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_assistant_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_datasource_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_integration_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_llm_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_task_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_user_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_workflow_execution_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/service/test_workflow_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/swagger/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/swagger/test_swagger_endpoint.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/ado_test_plan_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/ado_wiki_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/ado_work_item_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/assistant_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/cloud_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/codebase_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/data_management_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/ado_test_plan_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/ado_wiki_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/ado_work_item_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/cloud_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/codebase_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/data_management_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/direct_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/file_management_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/keycloak_tool_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/notification_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/open_api_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/project_management_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/report_portal_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/research_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/servicenow_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/direct_tools/vcs_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/file_management_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/file_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/large-files/large_file.txt +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/provider_payload.json +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.csv +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.docx +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.gif +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.ini +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.jpeg +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.jpg +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.json +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.pdf +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.png +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.pptx +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.txt +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.vtt +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.xlsx +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.xml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test_extended.docx +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/files/test_extended.xlsx +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/git_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/google_datasource_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/index_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/integrations_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/keycloak_tool_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/llm_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/mcp_server_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/notification_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/open_api_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/openapi.json +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/output_schema_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/plugin_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/pm_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/project_management_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/report_portal_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/research_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/servicenow_tools_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/vcs_tools_test_data.py +0 -0
- /codemie_test_harness-0.1.225/codemie_test_harness/tests/test_data/vendor_test_data.py → /codemie_test_harness-0.1.227/codemie_test_harness/tests/test_data/vendor_assistant_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/vendor_endpoint_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/vendor_workflow_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_assistant_id.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_assistant_in_state.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_data_source.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_state.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_tool.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_yaml.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_yaml_format.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_assistant_id.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_assistant_tools_name.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_backoff_factor.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_initial_interval.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_max_attempts.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_max_interval.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_id.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_expression.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_otherwise.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_then.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases_condition.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases_state_id.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_default.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_backoff_factor.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_initial_interval.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_max_attempts.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_max_interval.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_system_prompt.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_tools_id.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_tools_name.yaml +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/test_data/workflow_validation_messages.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/assistants/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/assistants/test_create_assistant.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/assistants/test_edit_assistant.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/chats/conftest.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/chats/test_chat_configuration.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/chats/test_chat_functionality.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/conftest.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/datasource/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/datasource/test_create_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/datasource/test_datasource_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/datasource/test_edit_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/datasource/test_view_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/integrations/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/integrations/test_create_integration.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/assistants/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/assistants/assistant_mcp_server.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/assistants/assistant_sidebar.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/assistants/assistant_view_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/assistants/assistants_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/assistants/create_edit_assistant_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/assistants/generate_with_ai_modal.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/base_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/chats/chat_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/chats/chats_sidebar.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/chats/configuration_panel.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/chats/configure_and_test_panel.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/execution_history_row.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/integration_row.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/menu.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/pop_up.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/project_selector.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/workflow_card.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/workflow_execution_history_item.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/workflow_execution_state.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/workflow_sidebar.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/components/workflow_state_card.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/datasources/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/datasources/create_edit_datasource_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/datasources/datasource_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/datasources/datasource_sidebar.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/datasources/view_datasource_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/integrations/create_integration_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/integrations/integrations_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/login_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/base_workflow_form_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/create_workflow_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/edit_workflow_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_details_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_executions_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_template_details.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_templates_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/pageobject/workflows/workflows_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/test_data/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/test_data/assistant_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/test_data/chat_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/test_data/datasource_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/test_data/integration_test_data.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/workflows/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/workflows/test_create_workflow.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/workflows/test_edit_workflow.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/workflows/test_workflow_details.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/workflows/test_workflow_executions_page.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/workflows/test_workflow_templates.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/ui/workflows/test_workflows.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/assistant_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/aws_parameters_store.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/base_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/client_factory.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/confluence_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/constants.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/conversation_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/credentials_manager.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/datasource_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/env_resolver.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/env_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/file_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/gitbud_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/http_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/integration_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/jira_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/json_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/llm_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/logger_util.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/notification_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/provider_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/pytest_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/search_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/similarity_check.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/user_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/webhook_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/workflow_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/utils/yaml_utils.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/vendor/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/vendor/assistants/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/vendor/assistants/test_vendor_assistants_endpoints.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/vendor/workflows/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/vendor/workflows/test_vendor_workflow_endpoints.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/vendor/workflows/test_vendor_workflows.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/webhook/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/webhook/test_webhook_service.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/access_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/access_management/test_workflow_with_assistant_with_keycloak_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/ado/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_test_plan_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_wiki_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_work_item_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/cloud/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/cloud/test_workflow_with_assistant_cloud_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/codebase/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/codebase/test_worfklow_with_assistant_codebase_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/data_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/data_management/test_workflow_with_assistant_with_data_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/file_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/file_management/test_workflow_with_assistant_with_file_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/git/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/git/test_workflow_with_assistant_git_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/mcp/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/mcp/test_workflow_with_assistant_with_mcp_server.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/notification/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/notification/test_workflow_with_assistant_notification_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/open_api/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/open_api/test_workflow_with_assistant_with_open_api_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/plugin/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_development_plugin.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_plugin_and_mcp_servers.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/project_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/project_management/test_workflow_with_assistant_pm_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/report_portal/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/report_portal/test_workflow_with_assistant_with_report_portal_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/research/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/research/test_workflow_with_assistant_research_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/servicenow/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/vcs/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/assistant_tools/vcs/workflow_with_assistant_vcs_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/config_validation/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/config_validation/test_config_validation.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_access_management_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_test_plan_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_wiki_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_work_item_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_cloud_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_codebase_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_elastic.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_sql.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_file_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_notification_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_open_api_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_plugin_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_project_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_report_portal_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_research_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_servicenow_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_vcs_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/test_workflows.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management/test_workflow_with_keycloak_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_test_plan_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_wiki_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_work_item_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud/test_workflow_with_cloud_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/codebase/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/codebase/test_workflow_with_codebase_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/data_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/data_management/test_workflow_with_data_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/file_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/file_management/test_workflow_with_file_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/git/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/git/test_workflow_with_git_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp/test_workflow_with_mcp_server.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/notification/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/notification/test_workflow_with_notification_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/open_api/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/open_api/test_workflow_with_open_api_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_development_plugin.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_plugin_and_mcp_servers.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/project_management/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/project_management/test_workflow_with_project_management_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal/test_workflow_with_report_portal_tool.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/research/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/research/test_workflow_with_research_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/__init__.py +0 -0
- {codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/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.
|
|
3
|
+
Version: 0.1.227
|
|
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.
|
|
16
|
+
Requires-Dist: codemie-sdk-python (==0.1.227)
|
|
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-repeat (>=0.9.3,<0.10.0)
|
{codemie_test_harness-0.1.225 → codemie_test_harness-0.1.227}/codemie_test_harness/tests/conftest.py
RENAMED
|
@@ -953,7 +953,9 @@ def integration(integration_utils):
|
|
|
953
953
|
@pytest.fixture(scope="session")
|
|
954
954
|
def vendor_assistant_utils():
|
|
955
955
|
"""Create VendorUtils instance for managing vendor assistants"""
|
|
956
|
-
from codemie_test_harness.tests.utils.
|
|
956
|
+
from codemie_test_harness.tests.utils.vendor_assistant_utils import (
|
|
957
|
+
VendorAssistantUtils,
|
|
958
|
+
)
|
|
957
959
|
|
|
958
960
|
return VendorAssistantUtils()
|
|
959
961
|
|
|
@@ -968,6 +970,16 @@ def vendor_workflow_utils():
|
|
|
968
970
|
return VendorWorkflowUtils()
|
|
969
971
|
|
|
970
972
|
|
|
973
|
+
@pytest.fixture(scope="session")
|
|
974
|
+
def vendor_knowledge_base_utils():
|
|
975
|
+
"""Create VendorKnowledgeBaseUtils instance for managing vendor knowledge bases"""
|
|
976
|
+
from codemie_test_harness.tests.utils.vendor_knowledge_base_utils import (
|
|
977
|
+
VendorKnowledgeBaseUtils,
|
|
978
|
+
)
|
|
979
|
+
|
|
980
|
+
return VendorKnowledgeBaseUtils()
|
|
981
|
+
|
|
982
|
+
|
|
971
983
|
def pytest_sessionfinish(session):
|
|
972
984
|
"""Run cleanup code after all tests have finished."""
|
|
973
985
|
clean_up_timeout = 1 if EnvironmentResolver.is_production() else 0
|
codemie_test_harness-0.1.227/codemie_test_harness/tests/test_data/vendor_knowledge_base_test_data.py
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"""Test data for vendor knowledge base integration tests."""
|
|
2
|
+
|
|
3
|
+
import pytest
|
|
4
|
+
from codemie_sdk.models.vendor_assistant import VendorType
|
|
5
|
+
from codemie_sdk.models.integration import CredentialTypes
|
|
6
|
+
|
|
7
|
+
from codemie_test_harness.tests.utils.credentials_manager import CredentialsManager
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
# Test data for vendor knowledge base integration tests
|
|
11
|
+
# Extensible for AWS Bedrock, Azure AI, and GCP Vertex AI
|
|
12
|
+
vendor_knowledge_base_test_data = [
|
|
13
|
+
pytest.param(
|
|
14
|
+
VendorType.AWS,
|
|
15
|
+
CredentialTypes.AWS,
|
|
16
|
+
CredentialsManager.aws_credentials(),
|
|
17
|
+
"Tell me about filtering by language",
|
|
18
|
+
"Filtering by language allows you to select books based on your preferred language. "
|
|
19
|
+
"According to the knowledge base, the available language filter options include:\n\n"
|
|
20
|
+
"- English\n- Spanish\n- French\n- German\n\n"
|
|
21
|
+
"You can use these filters to view only the books that are available in the selected language.",
|
|
22
|
+
marks=[pytest.mark.aws, pytest.mark.bedrock],
|
|
23
|
+
id="AWS_Bedrock",
|
|
24
|
+
),
|
|
25
|
+
# Future: Azure AI knowledge bases
|
|
26
|
+
# pytest.param(
|
|
27
|
+
# VendorType.AZURE,
|
|
28
|
+
# CredentialTypes.AZURE,
|
|
29
|
+
# CredentialsManager.azure_credentials(),
|
|
30
|
+
# "Tell me about filtering by language",
|
|
31
|
+
# "Filtering by language allows you to select books based on your preferred language.",
|
|
32
|
+
# marks=[pytest.mark.azure],
|
|
33
|
+
# id="Azure_AI",
|
|
34
|
+
# ),
|
|
35
|
+
# Future: GCP Vertex AI knowledge bases
|
|
36
|
+
# pytest.param(
|
|
37
|
+
# VendorType.GCP,
|
|
38
|
+
# CredentialTypes.GCP,
|
|
39
|
+
# CredentialsManager.gcp_credentials(),
|
|
40
|
+
# "Tell me about filtering by language",
|
|
41
|
+
# "Filtering by language allows you to select books based on your preferred language.",
|
|
42
|
+
# marks=[pytest.mark.gcp],
|
|
43
|
+
# id="GCP_Vertex_AI",
|
|
44
|
+
# ),
|
|
45
|
+
]
|
|
46
|
+
|
|
47
|
+
# Test data for vendor assistant with KB integration tests
|
|
48
|
+
vendor_assistant_with_kb_test_data = [
|
|
49
|
+
pytest.param(
|
|
50
|
+
VendorType.AWS,
|
|
51
|
+
CredentialTypes.AWS,
|
|
52
|
+
CredentialsManager.aws_credentials(),
|
|
53
|
+
"codemie-autotests-with-kb",
|
|
54
|
+
"Tell me about filtering by language",
|
|
55
|
+
"Filtering by language allows you to select books based on your preferred language. "
|
|
56
|
+
"According to the knowledge base, the available language filter options include:\n\n"
|
|
57
|
+
"- English\n- Spanish\n- French\n- German\n\n"
|
|
58
|
+
"You can use these filters to view only the books that are available in the selected language.",
|
|
59
|
+
marks=[pytest.mark.aws, pytest.mark.bedrock],
|
|
60
|
+
id="AWS_Bedrock",
|
|
61
|
+
),
|
|
62
|
+
# Future: Azure AI assistants with KB
|
|
63
|
+
# pytest.param(
|
|
64
|
+
# VendorType.AZURE,
|
|
65
|
+
# CredentialTypes.AZURE,
|
|
66
|
+
# CredentialsManager.azure_credentials(),
|
|
67
|
+
# "codemie-autotests-with-kb",
|
|
68
|
+
# "Tell me about filtering by language",
|
|
69
|
+
# "Filtering by language allows you to select books based on your preferred language.",
|
|
70
|
+
# marks=[pytest.mark.azure],
|
|
71
|
+
# id="Azure_AI",
|
|
72
|
+
# ),
|
|
73
|
+
# Future: GCP Vertex AI assistants with KB
|
|
74
|
+
# pytest.param(
|
|
75
|
+
# VendorType.GCP,
|
|
76
|
+
# CredentialTypes.GCP,
|
|
77
|
+
# CredentialsManager.gcp_credentials(),
|
|
78
|
+
# "codemie-autotests-with-kb",
|
|
79
|
+
# "Tell me about filtering by language",
|
|
80
|
+
# "Filtering by language allows you to select books based on your preferred language.",
|
|
81
|
+
# marks=[pytest.mark.gcp],
|
|
82
|
+
# id="GCP_Vertex_AI",
|
|
83
|
+
# ),
|
|
84
|
+
]
|
|
@@ -161,7 +161,7 @@ class VendorAssistantUtils:
|
|
|
161
161
|
assistants: List of assistant installation requests
|
|
162
162
|
|
|
163
163
|
Returns:
|
|
164
|
-
VendorAssistantInstallResponse containing installation summary with
|
|
164
|
+
VendorAssistantInstallResponse containing installation summary with CodeMie IDs
|
|
165
165
|
"""
|
|
166
166
|
logger.info(f"Installing {len(assistants)} assistant(s) for {vendor.value}")
|
|
167
167
|
response = self.vendor_assistant_service.install_assistants(
|
|
@@ -231,6 +231,48 @@ class VendorAssistantUtils:
|
|
|
231
231
|
aliases[0] if aliases else None,
|
|
232
232
|
)
|
|
233
233
|
|
|
234
|
+
def find_assistant_by_name(
|
|
235
|
+
self,
|
|
236
|
+
vendor: VendorType,
|
|
237
|
+
setting_id: str,
|
|
238
|
+
assistant_name: str,
|
|
239
|
+
) -> Optional[tuple[VendorAssistant, str]]:
|
|
240
|
+
"""Find an assistant by name and return it with an alias.
|
|
241
|
+
|
|
242
|
+
Args:
|
|
243
|
+
vendor: Cloud vendor type
|
|
244
|
+
setting_id: ID of the vendor setting
|
|
245
|
+
assistant_name: Name of the assistant to find
|
|
246
|
+
|
|
247
|
+
Returns:
|
|
248
|
+
Tuple of (VendorAssistant, alias_id) or None if assistant not found
|
|
249
|
+
"""
|
|
250
|
+
logger.info(
|
|
251
|
+
f"Searching for assistant '{assistant_name}' in {vendor.value} setting {setting_id}"
|
|
252
|
+
)
|
|
253
|
+
assistants_response = self.get_assistants(vendor=vendor, setting_id=setting_id)
|
|
254
|
+
|
|
255
|
+
for assistant in assistants_response.data:
|
|
256
|
+
if (
|
|
257
|
+
assistant.name == assistant_name
|
|
258
|
+
and assistant.status == VendorAssistantStatus.PREPARED
|
|
259
|
+
):
|
|
260
|
+
aliases_response = self.get_assistant_aliases(
|
|
261
|
+
vendor=vendor, assistant_id=assistant.id, setting_id=setting_id
|
|
262
|
+
)
|
|
263
|
+
if aliases_response.data:
|
|
264
|
+
non_draft_alias = self.get_non_draft_alias(aliases_response.data)
|
|
265
|
+
if non_draft_alias:
|
|
266
|
+
logger.info(
|
|
267
|
+
f"Found assistant: {assistant.name} (ID: {assistant.id}, Alias: {non_draft_alias.id})"
|
|
268
|
+
)
|
|
269
|
+
return assistant, non_draft_alias.id
|
|
270
|
+
|
|
271
|
+
logger.warning(
|
|
272
|
+
f"Assistant '{assistant_name}' not found for {vendor.value} setting {setting_id}"
|
|
273
|
+
)
|
|
274
|
+
return None
|
|
275
|
+
|
|
234
276
|
def find_first_available_assistant(
|
|
235
277
|
self,
|
|
236
278
|
vendor: VendorType,
|
|
@@ -252,7 +294,6 @@ class VendorAssistantUtils:
|
|
|
252
294
|
|
|
253
295
|
for assistant in assistants_response.data:
|
|
254
296
|
if assistant.status.value == "PREPARED":
|
|
255
|
-
# Get aliases for this assistant
|
|
256
297
|
aliases_response = self.get_assistant_aliases(
|
|
257
298
|
vendor=vendor, assistant_id=assistant.id, setting_id=setting_id
|
|
258
299
|
)
|
|
@@ -268,6 +309,44 @@ class VendorAssistantUtils:
|
|
|
268
309
|
)
|
|
269
310
|
return None
|
|
270
311
|
|
|
312
|
+
def install_assistant_by_name(
|
|
313
|
+
self,
|
|
314
|
+
vendor: VendorType,
|
|
315
|
+
setting_id: str,
|
|
316
|
+
assistant_name: str,
|
|
317
|
+
) -> Optional[str]:
|
|
318
|
+
"""Find and install an assistant by name.
|
|
319
|
+
|
|
320
|
+
Args:
|
|
321
|
+
vendor: Cloud vendor type
|
|
322
|
+
setting_id: ID of the vendor setting
|
|
323
|
+
assistant_name: Name of the assistant to install
|
|
324
|
+
|
|
325
|
+
Returns:
|
|
326
|
+
CodeMie ID of the installed assistant or None if assistant not found
|
|
327
|
+
"""
|
|
328
|
+
result = self.find_assistant_by_name(
|
|
329
|
+
vendor=vendor, setting_id=setting_id, assistant_name=assistant_name
|
|
330
|
+
)
|
|
331
|
+
if not result:
|
|
332
|
+
return None
|
|
333
|
+
|
|
334
|
+
assistant, alias_id = result
|
|
335
|
+
install_request = VendorAssistantInstallRequest(
|
|
336
|
+
id=assistant.id,
|
|
337
|
+
agentAliasId=alias_id,
|
|
338
|
+
setting_id=setting_id,
|
|
339
|
+
)
|
|
340
|
+
|
|
341
|
+
install_response = self.install_assistants(
|
|
342
|
+
vendor=vendor, assistants=[install_request]
|
|
343
|
+
)
|
|
344
|
+
|
|
345
|
+
if install_response.summary:
|
|
346
|
+
return install_response.summary[0].aiRunId
|
|
347
|
+
|
|
348
|
+
return None
|
|
349
|
+
|
|
271
350
|
def install_first_available_assistant(
|
|
272
351
|
self,
|
|
273
352
|
vendor: VendorType,
|
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
"""Utility class for managing vendor knowledge bases (AWS Bedrock, Azure, GCP)."""
|
|
2
|
+
|
|
3
|
+
from typing import Optional, List
|
|
4
|
+
from codemie_sdk.models.vendor_assistant import VendorType
|
|
5
|
+
from codemie_sdk.models.vendor_knowledgebase import (
|
|
6
|
+
VendorKnowledgeBaseSettingsResponse,
|
|
7
|
+
VendorKnowledgeBasesResponse,
|
|
8
|
+
VendorKnowledgeBase,
|
|
9
|
+
VendorKnowledgeBaseDetail,
|
|
10
|
+
VendorKnowledgeBaseInstallRequest,
|
|
11
|
+
VendorKnowledgeBaseInstallResponse,
|
|
12
|
+
VendorKnowledgeBaseUninstallResponse,
|
|
13
|
+
VendorKnowledgeBaseStatus,
|
|
14
|
+
)
|
|
15
|
+
from codemie_test_harness.tests.utils.client_factory import get_client
|
|
16
|
+
from codemie_test_harness.tests.utils.logger_util import setup_logger
|
|
17
|
+
|
|
18
|
+
logger = setup_logger(__name__)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class VendorKnowledgeBaseUtils:
|
|
22
|
+
"""Utility class for vendor knowledge base operations."""
|
|
23
|
+
|
|
24
|
+
def __init__(self):
|
|
25
|
+
"""Initialize VendorKnowledgeBaseUtils with CodeMie client."""
|
|
26
|
+
self.client = get_client()
|
|
27
|
+
self.vendor_kb_service = self.client.vendor_knowledgebases
|
|
28
|
+
|
|
29
|
+
def get_knowledgebase_settings(
|
|
30
|
+
self,
|
|
31
|
+
vendor: VendorType,
|
|
32
|
+
page: int = 0,
|
|
33
|
+
per_page: int = 10,
|
|
34
|
+
) -> VendorKnowledgeBaseSettingsResponse:
|
|
35
|
+
"""Get knowledge base settings for a specific cloud vendor.
|
|
36
|
+
|
|
37
|
+
Args:
|
|
38
|
+
vendor: Cloud vendor type (AWS, AZURE, GCP)
|
|
39
|
+
page: Page number for pagination
|
|
40
|
+
per_page: Number of items per page
|
|
41
|
+
|
|
42
|
+
Returns:
|
|
43
|
+
VendorKnowledgeBaseSettingsResponse containing list of settings
|
|
44
|
+
"""
|
|
45
|
+
logger.info(
|
|
46
|
+
f"Getting KB settings for {vendor.value} (page={page}, per_page={per_page})"
|
|
47
|
+
)
|
|
48
|
+
settings = self.vendor_kb_service.get_knowledgebase_settings(
|
|
49
|
+
vendor=vendor, page=page, per_page=per_page
|
|
50
|
+
)
|
|
51
|
+
logger.info(
|
|
52
|
+
f"Retrieved {len(settings.data)} KB settings for {vendor.value} (total: {settings.pagination.total})"
|
|
53
|
+
)
|
|
54
|
+
return settings
|
|
55
|
+
|
|
56
|
+
def get_knowledgebases(
|
|
57
|
+
self,
|
|
58
|
+
vendor: VendorType,
|
|
59
|
+
setting_id: str,
|
|
60
|
+
per_page: int = 10,
|
|
61
|
+
next_token: Optional[str] = None,
|
|
62
|
+
) -> VendorKnowledgeBasesResponse:
|
|
63
|
+
"""Get knowledge bases for a specific vendor setting.
|
|
64
|
+
|
|
65
|
+
Args:
|
|
66
|
+
vendor: Cloud vendor type
|
|
67
|
+
setting_id: ID of the vendor setting
|
|
68
|
+
per_page: Number of items per page
|
|
69
|
+
next_token: Token for pagination
|
|
70
|
+
|
|
71
|
+
Returns:
|
|
72
|
+
VendorKnowledgeBasesResponse containing list of knowledge bases
|
|
73
|
+
"""
|
|
74
|
+
logger.info(
|
|
75
|
+
f"Getting knowledge bases for {vendor.value} setting {setting_id} (per_page={per_page})"
|
|
76
|
+
)
|
|
77
|
+
kbs = self.vendor_kb_service.get_knowledgebases(
|
|
78
|
+
vendor=vendor,
|
|
79
|
+
setting_id=setting_id,
|
|
80
|
+
per_page=per_page,
|
|
81
|
+
next_token=next_token,
|
|
82
|
+
)
|
|
83
|
+
logger.info(
|
|
84
|
+
f"Retrieved {len(kbs.data)} knowledge bases for setting {setting_id}"
|
|
85
|
+
)
|
|
86
|
+
return kbs
|
|
87
|
+
|
|
88
|
+
def get_knowledgebase(
|
|
89
|
+
self,
|
|
90
|
+
vendor: VendorType,
|
|
91
|
+
knowledgebase_id: str,
|
|
92
|
+
setting_id: str,
|
|
93
|
+
) -> VendorKnowledgeBaseDetail:
|
|
94
|
+
"""Get a specific knowledge base by ID.
|
|
95
|
+
|
|
96
|
+
Args:
|
|
97
|
+
vendor: Cloud vendor type
|
|
98
|
+
knowledgebase_id: ID of the knowledge base
|
|
99
|
+
setting_id: ID of the vendor setting
|
|
100
|
+
|
|
101
|
+
Returns:
|
|
102
|
+
VendorKnowledgeBaseDetail with knowledge base details
|
|
103
|
+
"""
|
|
104
|
+
logger.info(
|
|
105
|
+
f"Getting knowledge base {knowledgebase_id} for {vendor.value} setting {setting_id}"
|
|
106
|
+
)
|
|
107
|
+
kb = self.vendor_kb_service.get_knowledgebase(
|
|
108
|
+
vendor=vendor, knowledgebase_id=knowledgebase_id, setting_id=setting_id
|
|
109
|
+
)
|
|
110
|
+
logger.info(f"Retrieved knowledge base: {kb.name} (status: {kb.status})")
|
|
111
|
+
return kb
|
|
112
|
+
|
|
113
|
+
def install_knowledgebases(
|
|
114
|
+
self,
|
|
115
|
+
vendor: VendorType,
|
|
116
|
+
knowledgebases: List[VendorKnowledgeBaseInstallRequest],
|
|
117
|
+
) -> VendorKnowledgeBaseInstallResponse:
|
|
118
|
+
"""Install/activate vendor knowledge bases.
|
|
119
|
+
|
|
120
|
+
Args:
|
|
121
|
+
vendor: Cloud vendor type
|
|
122
|
+
knowledgebases: List of knowledge base installation requests
|
|
123
|
+
|
|
124
|
+
Returns:
|
|
125
|
+
VendorKnowledgeBaseInstallResponse containing installation summary
|
|
126
|
+
"""
|
|
127
|
+
logger.info(
|
|
128
|
+
f"Installing {len(knowledgebases)} knowledge base(s) for {vendor.value}"
|
|
129
|
+
)
|
|
130
|
+
response = self.vendor_kb_service.install_knowledgebases(
|
|
131
|
+
vendor=vendor, knowledgebases=knowledgebases
|
|
132
|
+
)
|
|
133
|
+
for item in response.summary:
|
|
134
|
+
logger.info(
|
|
135
|
+
f"Installed KB {item.knowledgeBaseId} -> CodeMie ID: {item.aiRunId}"
|
|
136
|
+
)
|
|
137
|
+
return response
|
|
138
|
+
|
|
139
|
+
def uninstall_knowledgebase(
|
|
140
|
+
self,
|
|
141
|
+
vendor: VendorType,
|
|
142
|
+
codemie_id: str,
|
|
143
|
+
) -> VendorKnowledgeBaseUninstallResponse:
|
|
144
|
+
"""Uninstall/deactivate a vendor knowledge base.
|
|
145
|
+
|
|
146
|
+
Args:
|
|
147
|
+
vendor: Cloud vendor type
|
|
148
|
+
codemie_id: CodeMie ID from installation
|
|
149
|
+
|
|
150
|
+
Returns:
|
|
151
|
+
VendorKnowledgeBaseUninstallResponse with success status
|
|
152
|
+
"""
|
|
153
|
+
logger.info(f"Uninstalling knowledge base with CodeMie ID: {codemie_id}")
|
|
154
|
+
response = self.vendor_kb_service.uninstall_knowledgebase(
|
|
155
|
+
vendor=vendor, ai_run_id=codemie_id
|
|
156
|
+
)
|
|
157
|
+
if response.success:
|
|
158
|
+
logger.info(f"Successfully uninstalled knowledge base {codemie_id}")
|
|
159
|
+
else:
|
|
160
|
+
logger.warning(f"Failed to uninstall knowledge base {codemie_id}")
|
|
161
|
+
return response
|
|
162
|
+
|
|
163
|
+
def get_available_knowledge_base(
|
|
164
|
+
self,
|
|
165
|
+
knowledge_bases: List[VendorKnowledgeBase],
|
|
166
|
+
) -> Optional[VendorKnowledgeBase]:
|
|
167
|
+
"""Get first PREPARED knowledge base from the list.
|
|
168
|
+
|
|
169
|
+
Args:
|
|
170
|
+
knowledge_bases: List of vendor knowledge bases
|
|
171
|
+
|
|
172
|
+
Returns:
|
|
173
|
+
First PREPARED knowledge base or first KB if none are PREPARED
|
|
174
|
+
"""
|
|
175
|
+
return next(
|
|
176
|
+
(
|
|
177
|
+
kb
|
|
178
|
+
for kb in knowledge_bases
|
|
179
|
+
if kb.status == VendorKnowledgeBaseStatus.PREPARED
|
|
180
|
+
),
|
|
181
|
+
knowledge_bases[0] if knowledge_bases else None,
|
|
182
|
+
)
|
|
183
|
+
|
|
184
|
+
def find_setting_for_integration(
|
|
185
|
+
self,
|
|
186
|
+
vendor: VendorType,
|
|
187
|
+
integration_id: str,
|
|
188
|
+
):
|
|
189
|
+
"""Find setting for an integration by paginating through all settings.
|
|
190
|
+
|
|
191
|
+
Args:
|
|
192
|
+
vendor: Type of vendor (AWS, AZURE, GCP)
|
|
193
|
+
integration_id: ID of the integration to find (searches by setting_id)
|
|
194
|
+
|
|
195
|
+
Returns:
|
|
196
|
+
VendorKnowledgeBaseSetting or None if not found
|
|
197
|
+
"""
|
|
198
|
+
page = 0
|
|
199
|
+
per_page = 50
|
|
200
|
+
|
|
201
|
+
while True:
|
|
202
|
+
settings_response = self.get_knowledgebase_settings(
|
|
203
|
+
vendor=vendor,
|
|
204
|
+
page=page,
|
|
205
|
+
per_page=per_page,
|
|
206
|
+
)
|
|
207
|
+
|
|
208
|
+
# Find the setting for our integration by setting_id
|
|
209
|
+
for s in settings_response.data:
|
|
210
|
+
if s.setting_id == integration_id:
|
|
211
|
+
return s
|
|
212
|
+
|
|
213
|
+
# Check if there are more pages
|
|
214
|
+
if page >= settings_response.pagination.pages - 1:
|
|
215
|
+
break
|
|
216
|
+
|
|
217
|
+
page += 1
|
|
218
|
+
|
|
219
|
+
logger.warning(f"Setting not found for integration ID '{integration_id}'")
|
|
220
|
+
return None
|
|
221
|
+
|
|
222
|
+
def find_knowledge_base_by_name(
|
|
223
|
+
self,
|
|
224
|
+
vendor: VendorType,
|
|
225
|
+
setting_id: str,
|
|
226
|
+
kb_name: str,
|
|
227
|
+
) -> Optional[VendorKnowledgeBase]:
|
|
228
|
+
"""Find a knowledge base by name.
|
|
229
|
+
|
|
230
|
+
Args:
|
|
231
|
+
vendor: Cloud vendor type
|
|
232
|
+
setting_id: ID of the vendor setting
|
|
233
|
+
kb_name: Name of the knowledge base to find
|
|
234
|
+
|
|
235
|
+
Returns:
|
|
236
|
+
VendorKnowledgeBase or None if knowledge base not found
|
|
237
|
+
"""
|
|
238
|
+
logger.info(
|
|
239
|
+
f"Searching for knowledge base '{kb_name}' in {vendor.value} setting {setting_id}"
|
|
240
|
+
)
|
|
241
|
+
kbs_response = self.get_knowledgebases(vendor=vendor, setting_id=setting_id)
|
|
242
|
+
|
|
243
|
+
for kb in kbs_response.data:
|
|
244
|
+
if kb.name == kb_name and kb.status == VendorKnowledgeBaseStatus.PREPARED:
|
|
245
|
+
logger.info(f"Found knowledge base: {kb.name} (ID: {kb.id})")
|
|
246
|
+
return kb
|
|
247
|
+
|
|
248
|
+
logger.warning(
|
|
249
|
+
f"Knowledge base '{kb_name}' not found for {vendor.value} setting {setting_id}"
|
|
250
|
+
)
|
|
251
|
+
return None
|
|
252
|
+
|
|
253
|
+
def find_first_available_knowledge_base(
|
|
254
|
+
self,
|
|
255
|
+
vendor: VendorType,
|
|
256
|
+
setting_id: str,
|
|
257
|
+
) -> Optional[VendorKnowledgeBase]:
|
|
258
|
+
"""Find the first prepared knowledge base.
|
|
259
|
+
|
|
260
|
+
Args:
|
|
261
|
+
vendor: Cloud vendor type
|
|
262
|
+
setting_id: ID of the vendor setting
|
|
263
|
+
|
|
264
|
+
Returns:
|
|
265
|
+
VendorKnowledgeBase or None if no prepared knowledge base found
|
|
266
|
+
"""
|
|
267
|
+
logger.info(
|
|
268
|
+
f"Searching for prepared knowledge base in {vendor.value} setting {setting_id}"
|
|
269
|
+
)
|
|
270
|
+
kbs_response = self.get_knowledgebases(vendor=vendor, setting_id=setting_id)
|
|
271
|
+
|
|
272
|
+
for kb in kbs_response.data:
|
|
273
|
+
if kb.status == VendorKnowledgeBaseStatus.PREPARED:
|
|
274
|
+
logger.info(f"Found prepared knowledge base: {kb.name} (ID: {kb.id})")
|
|
275
|
+
return kb
|
|
276
|
+
|
|
277
|
+
logger.warning(
|
|
278
|
+
f"No prepared knowledge base found for {vendor.value} setting {setting_id}"
|
|
279
|
+
)
|
|
280
|
+
return None
|
|
281
|
+
|
|
282
|
+
def install_knowledge_base_by_name(
|
|
283
|
+
self,
|
|
284
|
+
vendor: VendorType,
|
|
285
|
+
setting_id: str,
|
|
286
|
+
kb_name: str,
|
|
287
|
+
) -> Optional[str]:
|
|
288
|
+
"""Find and install a knowledge base by name.
|
|
289
|
+
|
|
290
|
+
Args:
|
|
291
|
+
vendor: Cloud vendor type
|
|
292
|
+
setting_id: ID of the vendor setting
|
|
293
|
+
kb_name: Name of the knowledge base to install
|
|
294
|
+
|
|
295
|
+
Returns:
|
|
296
|
+
CodeMie ID of the installed knowledge base or None if not found
|
|
297
|
+
"""
|
|
298
|
+
kb = self.find_knowledge_base_by_name(
|
|
299
|
+
vendor=vendor, setting_id=setting_id, kb_name=kb_name
|
|
300
|
+
)
|
|
301
|
+
if not kb:
|
|
302
|
+
return None
|
|
303
|
+
|
|
304
|
+
install_request = VendorKnowledgeBaseInstallRequest(
|
|
305
|
+
id=kb.id,
|
|
306
|
+
setting_id=setting_id,
|
|
307
|
+
)
|
|
308
|
+
|
|
309
|
+
install_response = self.install_knowledgebases(
|
|
310
|
+
vendor=vendor, knowledgebases=[install_request]
|
|
311
|
+
)
|
|
312
|
+
|
|
313
|
+
if install_response.summary:
|
|
314
|
+
return install_response.summary[0].aiRunId
|
|
315
|
+
|
|
316
|
+
return None
|
|
317
|
+
|
|
318
|
+
def install_first_available_knowledge_base(
|
|
319
|
+
self,
|
|
320
|
+
vendor: VendorType,
|
|
321
|
+
setting_id: str,
|
|
322
|
+
) -> Optional[str]:
|
|
323
|
+
"""Find and install the first available knowledge base.
|
|
324
|
+
|
|
325
|
+
Args:
|
|
326
|
+
vendor: Cloud vendor type
|
|
327
|
+
setting_id: ID of the vendor setting
|
|
328
|
+
|
|
329
|
+
Returns:
|
|
330
|
+
CodeMie ID of the installed knowledge base or None if not available
|
|
331
|
+
"""
|
|
332
|
+
kb = self.find_first_available_knowledge_base(
|
|
333
|
+
vendor=vendor, setting_id=setting_id
|
|
334
|
+
)
|
|
335
|
+
if not kb:
|
|
336
|
+
return None
|
|
337
|
+
|
|
338
|
+
install_request = VendorKnowledgeBaseInstallRequest(
|
|
339
|
+
id=kb.id,
|
|
340
|
+
setting_id=setting_id,
|
|
341
|
+
)
|
|
342
|
+
|
|
343
|
+
install_response = self.install_knowledgebases(
|
|
344
|
+
vendor=vendor, knowledgebases=[install_request]
|
|
345
|
+
)
|
|
346
|
+
|
|
347
|
+
if install_response.summary:
|
|
348
|
+
return install_response.summary[0].aiRunId
|
|
349
|
+
|
|
350
|
+
return None
|
|
@@ -157,7 +157,7 @@ class VendorWorkflowUtils:
|
|
|
157
157
|
workflows: List of workflow installation requests
|
|
158
158
|
|
|
159
159
|
Returns:
|
|
160
|
-
VendorWorkflowInstallResponse containing installation summary with
|
|
160
|
+
VendorWorkflowInstallResponse containing installation summary with CodeMie IDs
|
|
161
161
|
"""
|
|
162
162
|
logger.info(f"Installing {len(workflows)} workflow(s) for {vendor.value}")
|
|
163
163
|
response = self.vendor_workflow_service.install_workflows(
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""Tests for vendor knowledge base endpoints and functionality."""
|