databricks-tellr-app 0.4.3.dev3401__tar.gz → 0.4.3.dev3432__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.
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/PKG-INFO +1 -1
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/databricks_tellr_app.egg-info/PKG-INFO +1 -1
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/databricks_tellr_app.egg-info/SOURCES.txt +2 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/pyproject.toml +1 -1
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/chat.py +6 -31
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/identity_provider.py +4 -1
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/identity_providers/account_provider.py +5 -2
- databricks_tellr_app-0.4.3.dev3432/src/services/identity_providers/scim_filter.py +6 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/identity_providers/workspace_provider.py +6 -2
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/README.md +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/databricks_tellr_app/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/databricks_tellr_app/run.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/databricks_tellr_app.egg-info/dependency_links.txt +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/databricks_tellr_app.egg-info/requires.txt +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/databricks_tellr_app.egg-info/top_level.txt +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/setup.cfg +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/setup.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/_otel_bootstrap.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/fixtures/tour_demo_deck.json +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/main.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/mcp_auth.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/mcp_server.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/middleware/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/middleware/csrf.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/middleware/request_logging.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/middleware/security_headers.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/_authz.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/admin.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/admin_usage.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/agent_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/deck_contributors.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/export.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/feedback.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/google_slides.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/images.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/local_version.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/profiles.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/sessions.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/settings/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/settings/contributors.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/settings/deck_prompts.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/settings/design_systems.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/settings/identities.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/settings/slide_styles.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/setup.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/slides.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/tools.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/tour.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/verification.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/version.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/agent_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/feedback.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/requests.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/responses.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/settings/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/settings/requests.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/settings/responses.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/schemas/streaming.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/chat_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/export_job_queue.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/feedback_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/job_queue.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/session_manager.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/session_naming.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/usage_events.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/services/usage_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/utils/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/utils/validation.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/config_loader.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/context_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/database.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/databricks_client.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/defaults.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/encryption.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/init_default_profile.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/lakebase.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/migrate_profiles_to_agent_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/mlflow_agent_spans.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/mlflow_tracing.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/otel_logging.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/permission_context.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/prompt_modules.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/settings_db.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/user_context.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/deck_contributor.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/design_system.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/encryption_key.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/feedback.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/genie_space.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/google_global_credentials.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/google_oauth_token.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/identity.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/image.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/profile.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/profile_contributor.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/prompts.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/request_log.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/session.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/slide_deck_prompt.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/slide_style_library.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/usage_event.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/models/user_preference.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/types.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/domain/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/domain/slide.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/domain/slide_deck.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/agent.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/agent_factory.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/config_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/config_validator.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/converter_jail/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/converter_jail/ast_guard.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/converter_jail/codeprep.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/converter_jail/gslides_runner.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/converter_jail/jail.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/converter_jail/pptx_runner.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/converter_jail/protocol.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/design_system_compiler.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/design_system_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/design_system_templates.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/drive_uploader.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/evaluation/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/evaluation/llm_judge.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/genie_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/google_slides_auth.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/google_slides_prompts_defaults.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/html_to_google_slides.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/html_to_pptx.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/identity_providers/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/identity_providers/local_provider.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/image_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/image_tools.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/permission_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/pptx_from_html_huashu.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/pptx_from_records.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/pptx_prompts_defaults.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/profile_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/streaming_callback.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/tools/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/tools/agent_bricks_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/tools/ds_asset_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/tools/genie_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/tools/mcp_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/tools/model_endpoint_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/tools/vector_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/validator.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/css_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/ds_asset_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/error_handling.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/html_safety.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/html_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/image_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/js_validator.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/logging_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/pi_filter.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/slide_hash.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/spotlight.py +0 -0
- {databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/text_caps.py +0 -0
|
@@ -137,6 +137,7 @@ setup.py
|
|
|
137
137
|
./src/services/identity_providers/__init__.py
|
|
138
138
|
./src/services/identity_providers/account_provider.py
|
|
139
139
|
./src/services/identity_providers/local_provider.py
|
|
140
|
+
./src/services/identity_providers/scim_filter.py
|
|
140
141
|
./src/services/identity_providers/workspace_provider.py
|
|
141
142
|
./src/services/tools/__init__.py
|
|
142
143
|
./src/services/tools/agent_bricks_tool.py
|
|
@@ -299,6 +300,7 @@ src/services/evaluation/llm_judge.py
|
|
|
299
300
|
src/services/identity_providers/__init__.py
|
|
300
301
|
src/services/identity_providers/account_provider.py
|
|
301
302
|
src/services/identity_providers/local_provider.py
|
|
303
|
+
src/services/identity_providers/scim_filter.py
|
|
302
304
|
src/services/identity_providers/workspace_provider.py
|
|
303
305
|
src/services/tools/__init__.py
|
|
304
306
|
src/services/tools/agent_bricks_tool.py
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/chat.py
RENAMED
|
@@ -25,6 +25,7 @@ from src.api.schemas.agent_config import normalize_style_source_exclusivity
|
|
|
25
25
|
from src.api.schemas.requests import ChatRequest
|
|
26
26
|
from src.api.schemas.responses import ChatResponse
|
|
27
27
|
from src.api.schemas.streaming import StreamEvent, StreamEventType
|
|
28
|
+
from src.api.routes._authz import _check_deck_permission_for_session
|
|
28
29
|
from src.api.services.chat_service import get_chat_service
|
|
29
30
|
from src.api.services.job_queue import enqueue_job
|
|
30
31
|
from src.api.services.session_manager import SessionNotFoundError, get_session_manager
|
|
@@ -120,32 +121,6 @@ def _check_chat_permission(session_id: str, db: DBSession) -> None:
|
|
|
120
121
|
)
|
|
121
122
|
|
|
122
123
|
|
|
123
|
-
def _require_chat_request_owner(session_id: str) -> None:
|
|
124
|
-
"""Allow polling only for the session that owns the chat request.
|
|
125
|
-
|
|
126
|
-
ChatRequest rows are bound to a session, and conversations are private
|
|
127
|
-
(same rule as ``GET /api/sessions/{id}/messages``): only the session
|
|
128
|
-
creator may read them. A viewer's contributor session is a different
|
|
129
|
-
session with a different creator, so deck-level CAN_VIEW is not enough.
|
|
130
|
-
|
|
131
|
-
Raises:
|
|
132
|
-
HTTPException 404: Session no longer exists.
|
|
133
|
-
HTTPException 403: Caller is not the session creator.
|
|
134
|
-
"""
|
|
135
|
-
session_manager = get_session_manager()
|
|
136
|
-
try:
|
|
137
|
-
session_info = session_manager.get_session(session_id)
|
|
138
|
-
except SessionNotFoundError:
|
|
139
|
-
raise HTTPException(status_code=404, detail="Request not found")
|
|
140
|
-
|
|
141
|
-
current_user = get_current_user()
|
|
142
|
-
if not current_user or session_info.get("created_by") != current_user:
|
|
143
|
-
raise HTTPException(
|
|
144
|
-
status_code=403,
|
|
145
|
-
detail="Conversations are private. Only the session creator can view chat events.",
|
|
146
|
-
)
|
|
147
|
-
|
|
148
|
-
|
|
149
124
|
def _apply_org_default_style_source(
|
|
150
125
|
agent_config_data: dict,
|
|
151
126
|
*,
|
|
@@ -696,21 +671,21 @@ async def poll_chat(
|
|
|
696
671
|
Dictionary with status, events, last_message_id, and result
|
|
697
672
|
|
|
698
673
|
Raises:
|
|
699
|
-
HTTPException: 404 if request not found
|
|
700
|
-
session creator
|
|
674
|
+
HTTPException: 404 if request not found
|
|
701
675
|
"""
|
|
702
676
|
session_manager = get_session_manager()
|
|
703
677
|
|
|
704
678
|
# SDR-4437 (chat-poll IDOR): a request_id must not grant access to another
|
|
705
679
|
# user's chat events/result. ChatRequest rows are session-bound — resolve
|
|
706
|
-
# the session and require
|
|
707
|
-
# privacy rule as /messages; deck CAN_VIEW must not expose chat events).
|
|
680
|
+
# the session and require CAN_VIEW on the deck.
|
|
708
681
|
session_id = await asyncio.to_thread(
|
|
709
682
|
session_manager.get_session_id_for_request, request_id
|
|
710
683
|
)
|
|
711
684
|
if session_id is None:
|
|
712
685
|
raise HTTPException(status_code=404, detail="Request not found")
|
|
713
|
-
await asyncio.to_thread(
|
|
686
|
+
await asyncio.to_thread(
|
|
687
|
+
_check_deck_permission_for_session, session_id, PermissionLevel.CAN_VIEW
|
|
688
|
+
)
|
|
714
689
|
|
|
715
690
|
chat_request = await asyncio.to_thread(
|
|
716
691
|
session_manager.get_chat_request, request_id
|
|
@@ -14,6 +14,8 @@ from enum import Enum
|
|
|
14
14
|
from functools import lru_cache
|
|
15
15
|
from typing import Dict, List, Optional
|
|
16
16
|
|
|
17
|
+
from src.services.identity_providers.scim_filter import escape_scim_filter_string
|
|
18
|
+
|
|
17
19
|
logger = logging.getLogger(__name__)
|
|
18
20
|
|
|
19
21
|
|
|
@@ -33,8 +35,9 @@ def _resolve_cached(email: str) -> str:
|
|
|
33
35
|
provider = get_identity_provider()
|
|
34
36
|
from src.services.identity_providers.workspace_provider import WorkspaceIdentityProvider
|
|
35
37
|
if isinstance(provider._provider, WorkspaceIdentityProvider):
|
|
38
|
+
escaped_email = escape_scim_filter_string(email)
|
|
36
39
|
for u in provider._provider._client.users.list(
|
|
37
|
-
filter=f'userName eq "{
|
|
40
|
+
filter=f'userName eq "{escaped_email}"',
|
|
38
41
|
attributes="id,userName,displayName",
|
|
39
42
|
):
|
|
40
43
|
if u.display_name:
|
|
@@ -12,6 +12,8 @@ from typing import List, Optional
|
|
|
12
12
|
|
|
13
13
|
import requests
|
|
14
14
|
|
|
15
|
+
from src.services.identity_providers.scim_filter import escape_scim_filter_string
|
|
16
|
+
|
|
15
17
|
logger = logging.getLogger(__name__)
|
|
16
18
|
|
|
17
19
|
|
|
@@ -181,9 +183,10 @@ class AccountIdentityProvider:
|
|
|
181
183
|
Combined list of matching users and groups
|
|
182
184
|
"""
|
|
183
185
|
results = []
|
|
186
|
+
escaped_query = escape_scim_filter_string(query)
|
|
184
187
|
|
|
185
188
|
if include_users:
|
|
186
|
-
user_filter = f'userName co "{
|
|
189
|
+
user_filter = f'userName co "{escaped_query}" or displayName co "{escaped_query}"'
|
|
187
190
|
try:
|
|
188
191
|
users = self.list_users(filter_query=user_filter, max_results=max_results)
|
|
189
192
|
results.extend(users)
|
|
@@ -191,7 +194,7 @@ class AccountIdentityProvider:
|
|
|
191
194
|
logger.warning("Failed to search users in Account API")
|
|
192
195
|
|
|
193
196
|
if include_groups:
|
|
194
|
-
group_filter = f'displayName co "{
|
|
197
|
+
group_filter = f'displayName co "{escaped_query}"'
|
|
195
198
|
try:
|
|
196
199
|
groups = self.list_groups(filter_query=group_filter, max_results=max_results)
|
|
197
200
|
results.extend(groups)
|
|
@@ -12,6 +12,8 @@ from typing import List, Optional
|
|
|
12
12
|
|
|
13
13
|
from databricks.sdk import WorkspaceClient
|
|
14
14
|
|
|
15
|
+
from src.services.identity_providers.scim_filter import escape_scim_filter_string
|
|
16
|
+
|
|
15
17
|
logger = logging.getLogger(__name__)
|
|
16
18
|
|
|
17
19
|
|
|
@@ -50,8 +52,9 @@ class WorkspaceIdentityProvider:
|
|
|
50
52
|
try:
|
|
51
53
|
kwargs: dict = {"attributes": "id,userName,displayName"}
|
|
52
54
|
if filter_query:
|
|
55
|
+
escaped_query = escape_scim_filter_string(filter_query)
|
|
53
56
|
kwargs["filter"] = (
|
|
54
|
-
f'userName co "{
|
|
57
|
+
f'userName co "{escaped_query}" or displayName co "{escaped_query}"'
|
|
55
58
|
)
|
|
56
59
|
|
|
57
60
|
users: List[dict] = []
|
|
@@ -90,7 +93,8 @@ class WorkspaceIdentityProvider:
|
|
|
90
93
|
try:
|
|
91
94
|
kwargs: dict = {"attributes": "id,displayName"}
|
|
92
95
|
if filter_query:
|
|
93
|
-
|
|
96
|
+
escaped_query = escape_scim_filter_string(filter_query)
|
|
97
|
+
kwargs["filter"] = f'displayName co "{escaped_query}"'
|
|
94
98
|
|
|
95
99
|
groups: List[dict] = []
|
|
96
100
|
for g in self._client.groups.list(**kwargs):
|
|
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
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/_otel_bootstrap.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/mcp_auth.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/mcp_server.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/middleware/csrf.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/_authz.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/admin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/export.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/feedback.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/images.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/profiles.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/sessions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/setup.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/slides.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/tools.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/tour.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/routes/version.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
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/api/utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/config_loader.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/context_utils.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/database.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/defaults.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/encryption.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/lakebase.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/mlflow_tracing.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/otel_logging.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/prompt_modules.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/settings_db.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/core/user_context.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/__init__.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
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/database/types.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/domain/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/domain/slide.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/domain/slide_deck.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/agent.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
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/services/validator.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/css_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/html_safety.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/html_utils.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/image_utils.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/js_validator.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/pi_filter.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/slide_hash.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/spotlight.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev3401 → databricks_tellr_app-0.4.3.dev3432}/src/utils/text_caps.py
RENAMED
|
File without changes
|