alita-sdk 0.3.202__tar.gz → 0.3.203__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.
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/PKG-INFO +1 -1
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/api_wrapper.py +3 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/backend_reports_tool.py +29 -1
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/backend_tests_tool.py +33 -30
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/carrier_sdk.py +14 -5
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/tools.py +2 -1
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/postman/api_wrapper.py +17 -11
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/slack/api_wrapper.py +19 -4
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk.egg-info/PKG-INFO +1 -1
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/pyproject.toml +1 -1
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/LICENSE +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/README.md +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/ado_analyse/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/ado_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/github_analyse/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/github_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/gitlab_analyse/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/gitlab_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/jira_analyse/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/jira_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/clients/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/clients/artifact.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/clients/client.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/clients/datasource.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/clients/prompt.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/agents/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/agents/xml_chat.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/assistant.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/chat_message_template.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/constants.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaBDDScenariosLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaCSVLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaConfluenceLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaDirectoryLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaDocxMammothLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaExcelLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaGitRepoLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaImageLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaJiraLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaQtestLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/AlitaTableLoader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/constants.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/indexer.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/interfaces/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/interfaces/kwextractor.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/interfaces/llm_processor.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/interfaces/loaders.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/interfaces/splitters.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/langraph_agent.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/mixedAgentParser.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/mixedAgentRenderes.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/retrievers/VectorstoreRetriever.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/retrievers/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/store_manager.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_exceptions.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/feature_types.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/git.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/log.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/quota.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/state.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/vector.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/llms/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/llms/alita.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/llms/preloaded.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/application.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/artifact.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/datasource.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/prompt.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/subgraph.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/tools.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/toolkits/vectorstore.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/agent.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/application.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/artifact.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/datasource.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/echo.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/function.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/indexer_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/llm.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/loop.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/loop_output.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/mcp_server_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/pgvector_search.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/prompt.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/router.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/tools/vectorstore.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/AlitaCallback.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/constants.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/evaluate.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/logging.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/save_dataframe.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/streamlit.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/utils/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/repos/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/repos/repos_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/test_plan/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/test_plan/test_plan_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/wiki/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/wiki/ado_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/work_item/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ado/work_item/ado_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/advanced_jira_mining/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/advanced_jira_mining/data_mining_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/azure_ai/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/azure_ai/search/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/azure_ai/search/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/base/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/base/tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/bitbucket/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/bitbucket/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/bitbucket/bitbucket_constants.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/bitbucket/cloud_api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/bitbucket/tools.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/browser/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/browser/crawler.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/browser/duck_duck_go_search.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/browser/google_search_rag.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/browser/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/browser/wiki.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/cancel_ui_test_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/create_ui_excel_report_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/create_ui_test_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/excel_reporter.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/lighthouse_excel_reporter.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/run_ui_test_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/tickets_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/ui_reports_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/update_ui_test_schedule_tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/carrier/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/codeparser.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/constants.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_c.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cpp.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cs.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_go.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_hs.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_java.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_js.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_kt.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_py.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rb.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_registry.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rs.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/code/treesitter/treesitter_ts.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/models.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/sematic/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/sematic/base.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/sematic/markdown_chunker.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/sematic/proposal_chunker.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/sematic/statistical_chunker.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/chunkers/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/aws/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/aws/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/azure/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/azure/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/gcp/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/gcp/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/k8s/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/cloud/k8s/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/code/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/code/linter/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/code/linter/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/code/loaders/codesearcher.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/code/sonar/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/code/sonar/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/confluence/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/confluence/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/confluence/loader.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/confluence/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/custom_open_api/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/custom_open_api/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/elastic/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/elastic/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/elitea_base.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/figma/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/figma/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/github/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/github/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/github/github_client.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/github/graphql_client_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/github/schemas.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/github/tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/github/tool_prompts.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gitlab/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gitlab/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gitlab/tools.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gitlab/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gitlab_org/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gitlab_org/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gmail/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gmail/gmail_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/gmail/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/google_places/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/google_places/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/jira/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/jira/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/keycloak/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/keycloak/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/llm/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/llm/img_utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/llm/llm_utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/localgit/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/localgit/local_git.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/localgit/tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/memory/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ocr/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ocr/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/ocr/text_detection.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/openapi/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/errors.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/executor/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/executor/code_environment.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/executor/code_executor.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/generator/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/generator/base.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/generator/code_cleaning.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/generator/code_validator.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/prompts.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/serializer.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/dataframe/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/statsmodels/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/statsmodels/base_stats.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/statsmodels/descriptive.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/statsmodels/hypothesis_testing.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pandas/statsmodels/regression.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/postman/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/postman/postman_analysis.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pptx/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/pptx/pptx_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/qtest/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/qtest/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/qtest/tool.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/rally/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/rally/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/report_portal/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/report_portal/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/report_portal/report_portal_client.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/salesforce/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/salesforce/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/salesforce/model.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/servicenow/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/servicenow/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/servicenow/servicenow_client.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/sharepoint/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/sharepoint/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/sharepoint/authorization_helper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/sharepoint/utils.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/slack/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/sql/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/sql/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/sql/models.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/testio/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/testio/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/testrail/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/testrail/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/utils/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/utils/content_parser.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/xray/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/xray/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/yagmail/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/yagmail/yagmail_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr/Zephyr.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr/rest_client.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_enterprise/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_enterprise/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_enterprise/zephyr_enterprise.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_scale/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_scale/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_squad/__init__.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_squad/api_wrapper.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk.egg-info/SOURCES.txt +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk.egg-info/dependency_links.txt +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk.egg-info/requires.txt +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk.egg-info/top_level.txt +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/setup.cfg +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/tests/test_ado_analysis.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/tests/test_github_analysis.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/tests/test_gitlab_analysis.py +0 -0
- {alita_sdk-0.3.202 → alita_sdk-0.3.203}/tests/test_jira_analysis.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: alita_sdk
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.203
|
4
4
|
Summary: SDK for building langchain agents using resources from Alita
|
5
5
|
Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedjik@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
|
6
6
|
License-Expression: Apache-2.0
|
@@ -61,6 +61,9 @@ class CarrierAPIWrapper(BaseModel):
|
|
61
61
|
def get_reports_list(self) -> List[Dict[str, Any]]:
|
62
62
|
return self._client.get_reports_list()
|
63
63
|
|
64
|
+
def add_tag_to_report(self, report_id, tag_name):
|
65
|
+
return self._client.add_tag_to_report(report_id, tag_name)
|
66
|
+
|
64
67
|
def get_tests_list(self) -> List[Dict[str, Any]]:
|
65
68
|
return self._client.get_tests_list()
|
66
69
|
|
@@ -23,10 +23,11 @@ class GetReportsTool(BaseTool):
|
|
23
23
|
description: str = "Get list of reports from the Carrier platform."
|
24
24
|
args_schema: Type[BaseModel] = create_model(
|
25
25
|
"GetReportsInput",
|
26
|
+
name=(str, Field(default="", description="Optional parameter. Report name to filter reports")),
|
26
27
|
tag_name=(str, Field(default="", description="Optional parameter. Tag name to filter reports")),
|
27
28
|
)
|
28
29
|
|
29
|
-
def _run(self, tag_name=""):
|
30
|
+
def _run(self, name="", tag_name=""):
|
30
31
|
try:
|
31
32
|
reports = self.api_wrapper.get_reports_list()
|
32
33
|
|
@@ -38,6 +39,10 @@ class GetReportsTool(BaseTool):
|
|
38
39
|
|
39
40
|
trimmed_reports = []
|
40
41
|
for report in reports:
|
42
|
+
# Filter reports by name
|
43
|
+
if name and not name == report["name"]:
|
44
|
+
continue
|
45
|
+
|
41
46
|
# Filter by tag title
|
42
47
|
tags = report.get("tags", [])
|
43
48
|
if tag_name and not any(tag.get("title") == tag_name for tag in tags):
|
@@ -111,6 +116,29 @@ class GetReportByIDTool(BaseTool):
|
|
111
116
|
raise ToolException(stacktrace)
|
112
117
|
|
113
118
|
|
119
|
+
class AddTagToReportTool(BaseTool):
|
120
|
+
api_wrapper: CarrierAPIWrapper = Field(..., description="Carrier API Wrapper instance")
|
121
|
+
name: str = "add_tag_to_report"
|
122
|
+
description: str = "Add tag to backend report"
|
123
|
+
args_schema: Type[BaseModel] = create_model(
|
124
|
+
"AddTagToReportInput",
|
125
|
+
report_id=(str, Field(description="Report id to update")),
|
126
|
+
tag_name=(str, Field(description="Tag name to add to report")),
|
127
|
+
)
|
128
|
+
|
129
|
+
def _run(self, report_id: str, tag_name: str):
|
130
|
+
try:
|
131
|
+
res = self.api_wrapper.add_tag_to_report(report_id, tag_name)
|
132
|
+
if "Tags was updated" in res.text:
|
133
|
+
return f"Added tag {tag_name} to report id {report_id}"
|
134
|
+
else:
|
135
|
+
return f"Failed to add new tag to report id {report_id}"
|
136
|
+
except Exception:
|
137
|
+
stacktrace = traceback.format_exc()
|
138
|
+
logger.error(f"Error downloading reports: {stacktrace}")
|
139
|
+
raise ToolException(stacktrace)
|
140
|
+
|
141
|
+
|
114
142
|
class CreateExcelReportTool(BaseTool):
|
115
143
|
api_wrapper: CarrierAPIWrapper = Field(..., description="Carrier API Wrapper instance")
|
116
144
|
name: str = "create_excel_report"
|
@@ -7,7 +7,6 @@ from pydantic.fields import Field
|
|
7
7
|
from pydantic import create_model, BaseModel
|
8
8
|
from .api_wrapper import CarrierAPIWrapper
|
9
9
|
|
10
|
-
|
11
10
|
logger = logging.getLogger(__name__)
|
12
11
|
|
13
12
|
|
@@ -79,8 +78,10 @@ class RunTestByIDTool(BaseTool):
|
|
79
78
|
description: str = "Execute test plan from the Carrier platform."
|
80
79
|
args_schema: Type[BaseModel] = create_model(
|
81
80
|
"RunTestByIdInput",
|
82
|
-
test_id=(
|
83
|
-
|
81
|
+
test_id=(
|
82
|
+
int, Field(default=None, description="Test id to execute. Use test_id if user provide id in int format")),
|
83
|
+
name=(
|
84
|
+
str, Field(default=None, description="Test name to execute. Use name if user provide name in str format")),
|
84
85
|
test_parameters=(list, Field(
|
85
86
|
default=None,
|
86
87
|
description=(
|
@@ -200,7 +201,6 @@ class RunTestByIDTool(BaseTool):
|
|
200
201
|
# Validate and merge user-provided cloud_settings with available parameters
|
201
202
|
cloud_settings = self._merge_cloud_settings(available_cloud_settings, cloud_settings)
|
202
203
|
|
203
|
-
|
204
204
|
# Build common_params dictionary
|
205
205
|
common_params = {
|
206
206
|
param["name"]: param
|
@@ -307,7 +307,8 @@ class CreateBackendTestInput(BaseModel):
|
|
307
307
|
test_type: str = Field(..., description="Test type")
|
308
308
|
env_type: str = Field(..., description="Env type")
|
309
309
|
entrypoint: str = Field(..., description="Entrypoint for the test (JMeter script path or Gatling simulation path)")
|
310
|
-
custom_cmd: str = Field(...,
|
310
|
+
custom_cmd: str = Field(...,
|
311
|
+
description="Custom command line to execute the test (e.g., -l /tmp/reports/jmeter.jtl -e -o /tmp/reports/html_report)")
|
311
312
|
runner: str = Field(..., description="Test runner (Gatling or JMeter)")
|
312
313
|
source: Optional[Dict[str, Optional[str]]] = Field(
|
313
314
|
None,
|
@@ -474,8 +475,11 @@ class CreateBackendTestTool(BaseTool):
|
|
474
475
|
return {
|
475
476
|
"message": "Do you want to configure email integration?",
|
476
477
|
"instructions": (
|
478
|
+
"If the user indicates no integrations are needed make sure to pass email_integration"
|
479
|
+
" as empty dict to _run method and invoke it ones again with email_integration={}."
|
477
480
|
"If yes, select an integration from the available options below and provide email recipients.\n"
|
478
|
-
"If no, respond with 'no'."
|
481
|
+
"If no, respond with 'no'. "
|
482
|
+
|
479
483
|
),
|
480
484
|
"available_integrations": [
|
481
485
|
{
|
@@ -491,6 +495,28 @@ class CreateBackendTestTool(BaseTool):
|
|
491
495
|
},
|
492
496
|
}
|
493
497
|
|
498
|
+
# Ensure email_integrations is an empty dict if the user indicates no integrations are needed
|
499
|
+
if isinstance(email_integration, str) and email_integration.lower() == "no":
|
500
|
+
email_integration = {}
|
501
|
+
elif (
|
502
|
+
len(integrations_list) > 0
|
503
|
+
and isinstance(email_integration, dict)
|
504
|
+
and "integration_id" in email_integration
|
505
|
+
and "recipients" in email_integration
|
506
|
+
):
|
507
|
+
email_integration = {
|
508
|
+
"reporters": {
|
509
|
+
"reporter_email": {
|
510
|
+
"id": email_integration["integration_id"],
|
511
|
+
"is_local": True,
|
512
|
+
"project_id": integrations_list[0]["project_id"],
|
513
|
+
"recipients": email_integration["recipients"],
|
514
|
+
}
|
515
|
+
}
|
516
|
+
}
|
517
|
+
else:
|
518
|
+
email_integration = {}
|
519
|
+
|
494
520
|
# Prepare the final data dictionary
|
495
521
|
data = {
|
496
522
|
"common_params": {
|
@@ -512,16 +538,7 @@ class CreateBackendTestTool(BaseTool):
|
|
512
538
|
"location": "default", # TODO update location
|
513
539
|
},
|
514
540
|
"test_parameters": test_parameters,
|
515
|
-
"integrations":
|
516
|
-
"reporters": {
|
517
|
-
"reporter_email": {
|
518
|
-
"id": email_integration["integration_id"],
|
519
|
-
"is_local": True,
|
520
|
-
"project_id": integrations_list[0]["project_id"], # Example project_id
|
521
|
-
"recipients": email_integration["recipients"],
|
522
|
-
}
|
523
|
-
}
|
524
|
-
},
|
541
|
+
"integrations": email_integration,
|
525
542
|
"scheduling": [],
|
526
543
|
"run_test": False,
|
527
544
|
}
|
@@ -539,17 +556,3 @@ class CreateBackendTestTool(BaseTool):
|
|
539
556
|
stacktrace = traceback.format_exc()
|
540
557
|
logger.error(f"Error while creating test: {stacktrace}")
|
541
558
|
raise ToolException(stacktrace)
|
542
|
-
|
543
|
-
# data = {"common_params":{"name":"toolkit_demo","test_type":"toolkit_demo","env_type":"toolkit_demo",
|
544
|
-
# "entrypoint":"tests/BasicEcommerceWithTransaction.jmx","runner":"v5.6.3",
|
545
|
-
# "source":{"name":"git_https","repo":"https://git.epam.com/epm-perf/boilerplate.git",
|
546
|
-
# "branch":"jmeter","username":"mykhailo_hunko@epam.com",
|
547
|
-
# "password":"{{secret.mykhailo_gitlab}}"},
|
548
|
-
# "env_vars":{"cpu_quota":2,"memory_quota":6,"cloud_settings":{},
|
549
|
-
# "custom_cmd":"-l /tmp/reports/jmeter.jtl -e -o /tmp/reports/html_report"},
|
550
|
-
# "parallel_runners":1,"cc_env_vars":{},"customization":{},"location":"default"},
|
551
|
-
# "test_parameters":[{"name":"VUSERS","default":"5","type":"string","description":"","action":""},
|
552
|
-
# {"name":"DURATION","default":"60","type":"string","description":"","action":""}],
|
553
|
-
# "integrations":{"reporters":{"reporter_email":{"id":1,"is_local":True,"project_id":36,
|
554
|
-
# "recipients":["mykhailo_hunko@epam.com"]}}},
|
555
|
-
# "scheduling":[],"run_test":True}
|
@@ -77,6 +77,17 @@ class CarrierClient(BaseModel):
|
|
77
77
|
endpoint = f"api/v1/backend_performance/reports/{self.credentials.project_id}"
|
78
78
|
return self.request('get', endpoint).get("rows", [])
|
79
79
|
|
80
|
+
def add_tag_to_report(self, report_id, tag_name):
|
81
|
+
endpoint = f"api/v1/backend_performance/tags/{self.credentials.project_id}/{report_id}"
|
82
|
+
full_url = f"{self.credentials.url.rstrip('/')}/{endpoint.lstrip('/')}"
|
83
|
+
headers = {
|
84
|
+
'Authorization': f'bearer {self.credentials.token}',
|
85
|
+
'content-type': 'application/json'
|
86
|
+
}
|
87
|
+
data = {"tags": [{"title": tag_name, "hex": "#5933c6"}]}
|
88
|
+
res = requests.post(full_url, headers=headers, json=data)
|
89
|
+
return res
|
90
|
+
|
80
91
|
def get_tests_list(self) -> List[Dict[str, Any]]:
|
81
92
|
endpoint = f"api/v1/backend_performance/tests/{self.credentials.project_id}"
|
82
93
|
return self.request('get', endpoint).get("rows", [])
|
@@ -90,9 +101,6 @@ class CarrierClient(BaseModel):
|
|
90
101
|
form_data = {"data": dumps(data)}
|
91
102
|
# Send the POST request
|
92
103
|
res = requests.post(full_url, headers=headers, data=form_data)
|
93
|
-
print("************************* response")
|
94
|
-
print(res.text)
|
95
|
-
print("**********************************")
|
96
104
|
return res
|
97
105
|
|
98
106
|
def run_test(self, test_id: str, json_body):
|
@@ -150,7 +158,8 @@ class CarrierClient(BaseModel):
|
|
150
158
|
for file_name in file_list:
|
151
159
|
if file_name.startswith(report_archive_prefix) and "excel_report" not in file_name:
|
152
160
|
report_files_list.append(file_name)
|
153
|
-
test_log_file_path, errors_log_file_path = self.download_and_merge_reports(report_files_list, lg_type,
|
161
|
+
test_log_file_path, errors_log_file_path = self.download_and_merge_reports(report_files_list, lg_type,
|
162
|
+
bucket_name, extract_to)
|
154
163
|
|
155
164
|
return report_info, test_log_file_path, errors_log_file_path
|
156
165
|
|
@@ -312,4 +321,4 @@ class CarrierClient(BaseModel):
|
|
312
321
|
}
|
313
322
|
}
|
314
323
|
|
315
|
-
return self.request('put', endpoint, json=cancel_body)
|
324
|
+
return self.request('put', endpoint, json=cancel_body)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# import all available tools
|
2
2
|
from .tickets_tool import FetchTicketsTool, CreateTicketTool
|
3
|
-
from .backend_reports_tool import GetReportsTool, GetReportByIDTool, CreateExcelReportTool
|
3
|
+
from .backend_reports_tool import GetReportsTool, GetReportByIDTool, CreateExcelReportTool, AddTagToReportTool
|
4
4
|
from .backend_tests_tool import GetTestsTool, GetTestByIDTool, RunTestByIDTool, CreateBackendTestTool
|
5
5
|
from .ui_reports_tool import GetUIReportsTool, GetUIReportByIDTool, GetUITestsTool
|
6
6
|
from .run_ui_test_tool import RunUITestTool
|
@@ -14,6 +14,7 @@ __all__ = [
|
|
14
14
|
{"name": "create_ticket", "tool": CreateTicketTool},
|
15
15
|
{"name": "get_reports", "tool": GetReportsTool},
|
16
16
|
{"name": "get_report_by_id", "tool": GetReportByIDTool},
|
17
|
+
{"name": "add_tag_to_report", "tool": AddTagToReportTool},
|
17
18
|
{"name": "create_excel_report", "tool": CreateExcelReportTool},
|
18
19
|
{"name": "get_tests", "tool": GetTestsTool},
|
19
20
|
{"name": "get_test_by_id", "tool": GetTestByIDTool},
|
@@ -91,12 +91,16 @@ PostmanUpdateCollectionDescription = create_model(
|
|
91
91
|
|
92
92
|
PostmanUpdateCollectionVariables = create_model(
|
93
93
|
"PostmanUpdateCollectionVariables",
|
94
|
-
variables=(List[Dict], Field(
|
94
|
+
variables=(Optional[List[Dict[str, Any]]], Field(default=None,
|
95
|
+
description="List of collection variables objects. "
|
96
|
+
"Example: [{'key': 'project_id', 'type': 'string', 'value': '15', 'enabled': true}]"))
|
95
97
|
)
|
96
98
|
|
97
99
|
PostmanUpdateCollectionAuth = create_model(
|
98
100
|
"PostmanUpdateCollectionAuth",
|
99
|
-
auth=(Dict, Field(
|
101
|
+
auth=(Optional[Dict[str, Any]], Field(default=None,
|
102
|
+
description="Updated authentication settings. Example: {'type': 'bearer',token '': 'your_token'}"
|
103
|
+
))
|
100
104
|
)
|
101
105
|
|
102
106
|
PostmanDeleteCollection = create_model(
|
@@ -190,19 +194,21 @@ PostmanUpdateRequestDescription = create_model(
|
|
190
194
|
PostmanUpdateRequestHeaders = create_model(
|
191
195
|
"PostmanUpdateRequestHeaders",
|
192
196
|
request_path=(str, Field(description="Path to the request (folder/requestName)")),
|
193
|
-
headers=(List[Dict], Field(description="Request headers"))
|
197
|
+
headers=(Optional[List[Dict[str, Any]]], Field(default=None, description="Request headers."))
|
194
198
|
)
|
195
199
|
|
196
200
|
PostmanUpdateRequestBody = create_model(
|
197
201
|
"PostmanUpdateRequestBody",
|
198
202
|
request_path=(str, Field(description="Path to the request (folder/requestName)")),
|
199
|
-
body=(Dict, Field(description="Request body"))
|
203
|
+
body=(Optional[Dict[str, Any]], Field(default=None, description="Request body."))
|
200
204
|
)
|
201
205
|
|
202
206
|
PostmanUpdateRequestAuth = create_model(
|
203
207
|
"PostmanUpdateRequestAuth",
|
204
208
|
request_path=(str, Field(description="Path to the request (folder/requestName)")),
|
205
|
-
auth=(Dict, Field(
|
209
|
+
auth=(Optional[Dict[str, Any]], Field(default=None,
|
210
|
+
description="Updated authentication settings. Example: {'type': 'bearer',token '': 'your_token'}"
|
211
|
+
))
|
206
212
|
)
|
207
213
|
|
208
214
|
PostmanUpdateRequestTests = create_model(
|
@@ -692,7 +698,7 @@ class PostmanApiWrapper(BaseToolApiWrapper):
|
|
692
698
|
def get_collections(self, **kwargs) -> str:
|
693
699
|
"""Get all Postman collections accessible to the user."""
|
694
700
|
try:
|
695
|
-
response = self._make_request('GET', '/collections')
|
701
|
+
response = self._make_request('GET', f'/collections?workspace={self.workspace_id}')
|
696
702
|
return json.dumps(response, indent=2)
|
697
703
|
except Exception as e:
|
698
704
|
stacktrace = format_exc()
|
@@ -1214,7 +1220,7 @@ class PostmanApiWrapper(BaseToolApiWrapper):
|
|
1214
1220
|
raise ToolException(
|
1215
1221
|
f"Unable to update collection {self.collection_id} description: {str(e)}")
|
1216
1222
|
|
1217
|
-
def update_collection_variables(self, variables: List[Dict], **kwargs) -> str:
|
1223
|
+
def update_collection_variables(self, variables: List[Dict[str, Any]], **kwargs) -> str:
|
1218
1224
|
"""Update collection variables."""
|
1219
1225
|
try:
|
1220
1226
|
# Get current collection
|
@@ -1234,7 +1240,7 @@ class PostmanApiWrapper(BaseToolApiWrapper):
|
|
1234
1240
|
raise ToolException(
|
1235
1241
|
f"Unable to update collection {self.collection_id} variables: {str(e)}")
|
1236
1242
|
|
1237
|
-
def update_collection_auth(self, auth: Dict, **kwargs) -> str:
|
1243
|
+
def update_collection_auth(self, auth: Dict[str, Any], **kwargs) -> str:
|
1238
1244
|
"""Update collection authentication settings."""
|
1239
1245
|
try:
|
1240
1246
|
# Get current collection
|
@@ -1638,7 +1644,7 @@ class PostmanApiWrapper(BaseToolApiWrapper):
|
|
1638
1644
|
raise ToolException(
|
1639
1645
|
f"Unable to update request '{request_path}' description: {str(e)}")
|
1640
1646
|
|
1641
|
-
def update_request_headers(self, request_path: str, headers:
|
1647
|
+
def update_request_headers(self, request_path: str, headers: Dict[str, Any], **kwargs) -> str:
|
1642
1648
|
"""Update request headers."""
|
1643
1649
|
try:
|
1644
1650
|
# Get request item and ID
|
@@ -1659,7 +1665,7 @@ class PostmanApiWrapper(BaseToolApiWrapper):
|
|
1659
1665
|
raise ToolException(
|
1660
1666
|
f"Unable to update request '{request_path}' headers: {str(e)}")
|
1661
1667
|
|
1662
|
-
def update_request_body(self, request_path: str, body: Dict, **kwargs) -> str:
|
1668
|
+
def update_request_body(self, request_path: str, body: Dict[str, Any], **kwargs) -> str:
|
1663
1669
|
"""Update request body."""
|
1664
1670
|
try:
|
1665
1671
|
# Get request item and ID
|
@@ -1680,7 +1686,7 @@ class PostmanApiWrapper(BaseToolApiWrapper):
|
|
1680
1686
|
raise ToolException(
|
1681
1687
|
f"Unable to update request '{request_path}' body: {str(e)}")
|
1682
1688
|
|
1683
|
-
def update_request_auth(self, request_path: str, auth: Dict, **kwargs) -> str:
|
1689
|
+
def update_request_auth(self, request_path: str, auth: Dict[str, Any], **kwargs) -> str:
|
1684
1690
|
"""Update request authentication."""
|
1685
1691
|
try:
|
1686
1692
|
# Get request item and ID
|
@@ -203,8 +203,18 @@ class SlackApiWrapper(BaseToolApiWrapper):
|
|
203
203
|
client = self._get_client()
|
204
204
|
response = client.conversations_list() # Fetch conversations
|
205
205
|
channels = response.get("channels", [])
|
206
|
-
|
207
|
-
|
206
|
+
# Extract only the required fields
|
207
|
+
filtered_channels = [
|
208
|
+
{
|
209
|
+
"id": ch.get("id"),
|
210
|
+
"name": ch.get("name"),
|
211
|
+
"is_channel": ch.get("is_channel"),
|
212
|
+
"shared_team_ids": ch.get("shared_team_ids"),
|
213
|
+
}
|
214
|
+
for ch in channels
|
215
|
+
]
|
216
|
+
logger.info(f"Found {len(filtered_channels)} channels.")
|
217
|
+
return filtered_channels # Return the list of channels
|
208
218
|
except SlackApiError as e:
|
209
219
|
print(f"Error fetching conversations: {e.response['error']}")
|
210
220
|
return []
|
@@ -289,13 +299,18 @@ class SlackApiWrapper(BaseToolApiWrapper):
|
|
289
299
|
"description": self.list_workspace_users.__doc__ or "List all users in the Slack workspace.",
|
290
300
|
"args_schema": ListWorkspaceUsersModel,
|
291
301
|
"ref": self.list_workspace_users
|
292
|
-
}
|
293
|
-
,
|
302
|
+
},
|
294
303
|
{
|
295
304
|
"name": "invite_to_conversation",
|
296
305
|
"description": self.invite_to_conversation.__doc__ or "Invite to a conversation in the Slack workspace.",
|
297
306
|
"args_schema": InviteToConversationModel,
|
298
307
|
"ref": self.invite_to_conversation
|
308
|
+
},
|
309
|
+
{
|
310
|
+
"name": "list_workspace_conversations",
|
311
|
+
"description": self.list_workspace_conversations.__doc__ or "Invite to a conversation in the Slack workspace.",
|
312
|
+
"args_schema": ListWorkspaceConversationsModel,
|
313
|
+
"ref": self.list_workspace_conversations
|
299
314
|
}
|
300
315
|
|
301
316
|
]
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: alita_sdk
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.203
|
4
4
|
Summary: SDK for building langchain agents using resources from Alita
|
5
5
|
Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedjik@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
|
6
6
|
License-Expression: Apache-2.0
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/ado_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/ado_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/github_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/github_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/gitlab_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/gitlab_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/jira_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/community/analysis/jira_analyse/api_wrapper.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/chat_message_template.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/constants.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/document_loaders/utils.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/interfaces/kwextractor.py
RENAMED
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/interfaces/llm_processor.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py
RENAMED
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py
RENAMED
File without changes
|
File without changes
|
{alita_sdk-0.3.202 → alita_sdk-0.3.203}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|