iatoolkit 2.27.2__tar.gz → 2.27.4__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.
- {iatoolkit-2.27.2/src/iatoolkit.egg-info → iatoolkit-2.27.4}/PKG-INFO +1 -1
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/__init__.py +1 -1
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/llm_client_service.py +20 -1
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/telemetry_service.py +4 -1
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/user_feedback_service.py +18 -5
- {iatoolkit-2.27.2 → iatoolkit-2.27.4/src/iatoolkit.egg-info}/PKG-INFO +1 -1
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/LICENSE +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/LICENSE_COMMUNITY.md +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/pyproject.toml +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/readme.md +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/requirements.txt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/setup.cfg +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/base_company.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/cli_commands.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/exceptions.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/asset_storage.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/database_provider.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/memory_compilation_trigger.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/memory_lint_trigger.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/secret_provider.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/signup_policy_resolver.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/web_search_provider.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/model_registry.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/routes.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/secret_resolver.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/session_manager.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/util.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/company_registry.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/llm_capabilities.yaml +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/channel_business_identity.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/channel_conversation_continuity.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/channel_response_style.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/chat_state_rules.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/chat_user_profile.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/core_identity.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/email_output.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/file_download_output.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/format_styles.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/html_structures.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/links_documents.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/memory_usage.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/multimodal_basics.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/output_basics.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/presentation_formatting.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/query_main.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_aggregation_scope.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_casting.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_core.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_jsonb.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_mysql_casting.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_mysql_json.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_redshift_basics.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_redshift_types.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_rules.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/tool_html_passthrough.prompt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts_pack.yaml +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_tools_pack.yaml +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/core.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/brevo_mail_app.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/call_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/file_connector.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/file_connector_factory.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/google_cloud_storage_connector.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/google_drive_connector.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/local_file_connector.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/s3_connector.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/google_auth_client.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/google_chat_app.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/inference_embeddings_client.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/inference_handler.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/jina_embeddings_client.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_gateway_resolver.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/anthropic_adapter.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/deepseek_adapter.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/gemini_adapter.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/openai_adapter.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/openai_compatible_chat_adapter.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/openrouter_adapter.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_proxy.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_response.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/redis_session_manager.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/locales/en.yaml +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/locales/es.yaml +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/api_key_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/database_manager.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/document_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/env_secret_provider.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/filesystem_asset_repository.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/knowledge_wiki_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/llm_query_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/mcp_token_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/memory_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/models.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/profile_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/prompt_resource_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/sql_dataset_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/sql_source_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/vs_repo.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/runtime_logging.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/api_key_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/attachment_policy_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/auth_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/benchmark_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/branding_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/company_context_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/configuration_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/context_builder_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/dispatcher_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/embedding_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/excel_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/file_processor_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/history_manager_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/http_tool_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/i18n_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/inference_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/jwt_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/knowledge_base_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/language_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/license_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/mail_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/markdown_wiki_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/mcp_token_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/memory_compiler_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/memory_lint_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/memory_lookup_policy_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/memory_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/memory_wiki_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/noop_memory_compilation_trigger.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/noop_memory_lint_trigger.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/contracts.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/image_normalizer.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/parsing_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/pdf_ocr_detection.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/provider_factory.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/provider_resolver.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/providers/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/providers/basic_provider.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/providers/docling_provider.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/validator.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/pdf_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/profile_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/prompt_resource_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/prompt_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/query_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/signup_policy_resolver.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/sql_dataset_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/sql_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/sql_source_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/storage_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/structured_output_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/system_prompt_catalog.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/system_tools.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/tenant_wiki_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/tool_output_contract.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/tool_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/user_session_context_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/visual_kb_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/visual_tool_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/warmup_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/web_search/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/web_search/provider_factory.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/web_search/providers/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/web_search/providers/brave_provider.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/web_search_service.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/images/fernando.jpeg +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/images/iatoolkit_core.png +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/images/iatoolkit_logo.png +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_feedback_button.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_filepond.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_help_content.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_history_button.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_logout_button.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_main.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_memory_button.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_model_selector.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_onboarding_button.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_prompt_manager.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/js/chat_reload_button.js +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/styles/chat_iatoolkit.css +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/styles/chat_modal.css +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/styles/chat_public.css +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/styles/documents.css +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/styles/landing_page.css +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/styles/llm_output.css +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/static/styles/onboarding.css +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/_company_header.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/_login_widget.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/account.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/base.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/change_password.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/chat.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/chat_memory_modal.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/chat_modals.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/error.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/forgot_password.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/home_hosted_default.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/memory/wiki_schema.md +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/onboarding_shell.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/pdf/base.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/pdf/letter.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/pdf/report.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/pdf/simple.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/templates/signup.html +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/__init__.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/account_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/api_key_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/base_login_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/categories_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/change_password_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/chat_context_preview_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/chat_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/configuration_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/connectors_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/embedding_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/forgot_password_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/help_content_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/history_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/home_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/init_context_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/llmquery_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/load_document_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/login_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/logout_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/memory_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/profile_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/prompt_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/prompt_context_preview_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/prompt_resource_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/rag_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/root_redirect_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/signup_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/static_page_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/tool_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/user_feedback_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/users_api_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/verify_user_view.py +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit.egg-info/SOURCES.txt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit.egg-info/dependency_links.txt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit.egg-info/requires.txt +0 -0
- {iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit.egg-info/top_level.txt +0 -0
|
@@ -400,7 +400,7 @@ class llmClient:
|
|
|
400
400
|
telemetry_execution.finalize(
|
|
401
401
|
query_id=query.id,
|
|
402
402
|
success=decoded_response.get('status', False),
|
|
403
|
-
|
|
403
|
+
output_payload=self._build_root_telemetry_output(decoded_response),
|
|
404
404
|
metrics={
|
|
405
405
|
"total_tokens": combined_stats.get("total_tokens"),
|
|
406
406
|
"response_time": combined_stats.get("response_time"),
|
|
@@ -491,6 +491,25 @@ class llmClient:
|
|
|
491
491
|
|
|
492
492
|
raise IAToolkitException(IAToolkitException.ErrorType.LLM_ERROR, error_message)
|
|
493
493
|
|
|
494
|
+
@staticmethod
|
|
495
|
+
def _build_root_telemetry_output(decoded_response: dict[str, Any] | None) -> dict[str, Any]:
|
|
496
|
+
payload = {
|
|
497
|
+
"success": bool((decoded_response or {}).get("status", False)),
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
result: dict[str, Any] = {}
|
|
501
|
+
answer = (decoded_response or {}).get("answer")
|
|
502
|
+
if answer not in (None, ""):
|
|
503
|
+
result["answer"] = answer
|
|
504
|
+
|
|
505
|
+
structured_output = (decoded_response or {}).get("structured_output")
|
|
506
|
+
if structured_output is not None:
|
|
507
|
+
result["structured_output"] = structured_output
|
|
508
|
+
|
|
509
|
+
if result:
|
|
510
|
+
payload["result"] = result
|
|
511
|
+
return payload
|
|
512
|
+
|
|
494
513
|
@staticmethod
|
|
495
514
|
def _serialize_tool_output(result) -> str:
|
|
496
515
|
if isinstance(result, str):
|
|
@@ -95,6 +95,7 @@ class TelemetryExecution:
|
|
|
95
95
|
query_id: int | None = None,
|
|
96
96
|
success: bool | None = None,
|
|
97
97
|
answer_preview: str | None = None,
|
|
98
|
+
output_payload: Any | None = None,
|
|
98
99
|
metrics: dict[str, Any] | None = None,
|
|
99
100
|
error_message: str | None = None,
|
|
100
101
|
) -> None:
|
|
@@ -122,7 +123,9 @@ class TelemetryExecution:
|
|
|
122
123
|
event["input"] = input_payload
|
|
123
124
|
if metadata:
|
|
124
125
|
event["metadata"] = metadata
|
|
125
|
-
if
|
|
126
|
+
if output_payload is not None:
|
|
127
|
+
event["output"] = self._clone_payload(output_payload)
|
|
128
|
+
elif answer_preview:
|
|
126
129
|
event["output"] = {"answer_preview": str(answer_preview)[:1000]}
|
|
127
130
|
if event:
|
|
128
131
|
self.bridge.log_span(self.span, event)
|
|
@@ -81,6 +81,17 @@ class UserFeedbackService:
|
|
|
81
81
|
else:
|
|
82
82
|
logging.warning(f"unknown feedback channel: '{channel}' for company {company.short_name}.")
|
|
83
83
|
|
|
84
|
+
@staticmethod
|
|
85
|
+
def _build_notification_text(company_short_name: str, user_identifier: str, message: str, rating: int = None) -> str:
|
|
86
|
+
lines = [
|
|
87
|
+
f"*Nuevo feedback de {company_short_name}*:",
|
|
88
|
+
f"*Usuario:* {user_identifier}",
|
|
89
|
+
f"*Mensaje:* {message}",
|
|
90
|
+
]
|
|
91
|
+
if rating != 0:
|
|
92
|
+
lines.append(f"*Calificación:* {rating if rating is not None else 'N/A'}")
|
|
93
|
+
return "\n".join(lines)
|
|
94
|
+
|
|
84
95
|
def new_feedback(self,
|
|
85
96
|
company_short_name: str,
|
|
86
97
|
message: str,
|
|
@@ -92,10 +103,12 @@ class UserFeedbackService:
|
|
|
92
103
|
return {'error': self.i18n_service.t('errors.company_not_found', company_short_name=company_short_name)}
|
|
93
104
|
|
|
94
105
|
# 2. send notification using company configuration
|
|
95
|
-
notification_text = (
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
106
|
+
notification_text = self._build_notification_text(
|
|
107
|
+
company_short_name=company_short_name,
|
|
108
|
+
user_identifier=user_identifier,
|
|
109
|
+
message=message,
|
|
110
|
+
rating=rating,
|
|
111
|
+
)
|
|
99
112
|
self._handle_notification(company, notification_text)
|
|
100
113
|
|
|
101
114
|
# 3. always save the feedback in the database
|
|
@@ -114,4 +127,4 @@ class UserFeedbackService:
|
|
|
114
127
|
|
|
115
128
|
except Exception as e:
|
|
116
129
|
logging.exception(f"Error crítico en el servicio de feedback: {e}")
|
|
117
|
-
return {'error': str(e)}
|
|
130
|
+
return {'error': str(e)}
|
|
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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/memory_compilation_trigger.py
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/memory_lint_trigger.py
RENAMED
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/signup_policy_resolver.py
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/common/interfaces/web_search_provider.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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/chat_state_rules.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/chat_user_profile.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/core_identity.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/email_output.prompt
RENAMED
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/format_styles.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/html_structures.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/links_documents.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/memory_usage.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/multimodal_basics.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/output_basics.prompt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_casting.prompt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_mysql_casting.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_mysql_json.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_redshift_basics.prompt
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/config/system_prompts/sql_redshift_types.prompt
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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/file_connector_factory.py
RENAMED
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/google_drive_connector.py
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/connectors/local_file_connector.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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/anthropic_adapter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/infra/llm_providers/openrouter_adapter.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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/repositories/filesystem_asset_repository.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
|
|
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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/memory_lookup_policy_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/noop_memory_compilation_trigger.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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/providers/basic_provider.py
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/parsers/providers/docling_provider.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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/user_session_context_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/web_search/providers/__init__.py
RENAMED
|
File without changes
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/services/web_search/providers/brave_provider.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
|
|
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
|
|
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
|
{iatoolkit-2.27.2 → iatoolkit-2.27.4}/src/iatoolkit/views/prompt_context_preview_api_view.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
|