databricks-tellr-app 0.4.3.dev7__tar.gz → 0.4.3.dev9__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.dev7 → databricks_tellr_app-0.4.3.dev9}/PKG-INFO +1 -1
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app/run.py +23 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app.egg-info/PKG-INFO +1 -1
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/pyproject.toml +1 -1
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/main.py +7 -23
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/database.py +53 -3
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/README.md +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app.egg-info/SOURCES.txt +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app.egg-info/dependency_links.txt +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app.egg-info/requires.txt +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app.egg-info/top_level.txt +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/setup.cfg +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/setup.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/_otel_bootstrap.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/fixtures/tour_demo_deck.json +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/mcp_auth.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/mcp_server.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/middleware/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/middleware/csrf.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/middleware/request_logging.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/middleware/security_headers.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/_authz.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/admin.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/admin_usage.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/agent_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/chat.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/deck_contributors.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/export.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/feedback.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/google_slides.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/images.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/local_version.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/profiles.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/sessions.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/settings/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/settings/contributors.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/settings/deck_prompts.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/settings/design_systems.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/settings/identities.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/settings/slide_styles.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/setup.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/slides.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/tools.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/tour.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/verification.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/version.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/agent_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/feedback.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/requests.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/responses.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/settings/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/settings/requests.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/settings/responses.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/streaming.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/chat_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/export_job_queue.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/feedback_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/job_queue.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/session_manager.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/session_naming.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/usage_events.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/usage_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/utils/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/utils/validation.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/config_loader.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/context_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/databricks_client.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/defaults.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/encryption.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/init_default_profile.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/lakebase.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/migrate_profiles_to_agent_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/mlflow_agent_spans.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/mlflow_tracing.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/otel_logging.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/permission_context.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/prompt_modules.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/settings_db.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/user_context.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/deck_contributor.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/design_system.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/encryption_key.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/feedback.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/genie_space.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/google_global_credentials.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/google_oauth_token.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/identity.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/image.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/profile.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/profile_contributor.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/prompts.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/request_log.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/session.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/slide_deck_prompt.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/slide_style_library.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/usage_event.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/user_preference.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/types.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/domain/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/domain/slide.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/domain/slide_deck.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/agent.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/agent_factory.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/config_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/config_validator.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/converter_jail/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/converter_jail/ast_guard.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/converter_jail/codeprep.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/converter_jail/gslides_runner.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/converter_jail/jail.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/converter_jail/pptx_runner.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/converter_jail/protocol.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/design_system_compiler.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/design_system_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/design_system_templates.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/drive_uploader.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/evaluation/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/evaluation/llm_judge.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/genie_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/google_slides_auth.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/google_slides_prompts_defaults.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/html_to_google_slides.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/html_to_pptx.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/identity_provider.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/identity_providers/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/identity_providers/account_provider.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/identity_providers/local_provider.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/identity_providers/workspace_provider.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/image_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/image_tools.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/permission_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/pptx_from_html_huashu.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/pptx_from_records.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/pptx_prompts_defaults.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/profile_service.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/streaming_callback.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/agent_bricks_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/ds_asset_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/genie_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/mcp_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/model_endpoint_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/vector_tool.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/validator.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/__init__.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/css_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/ds_asset_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/error_handling.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/html_safety.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/html_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/image_utils.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/js_validator.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/logging_config.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/pi_filter.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/slide_hash.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/spotlight.py +0 -0
- {databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/text_caps.py +0 -0
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app/run.py
RENAMED
|
@@ -51,6 +51,29 @@ def init_database(seed_databricks_defaults: bool = False) -> None:
|
|
|
51
51
|
logger.error(f"Failed to initialize database tables: {e}\n{tb}")
|
|
52
52
|
raise SystemExit(1) from e
|
|
53
53
|
|
|
54
|
+
# Data migrations/backfills that used to run in the FastAPI lifespan now run
|
|
55
|
+
# HERE, once, before the server forks its workers — the uvicorn workers must
|
|
56
|
+
# never execute migration code (4 of them racing the migration chain on boot
|
|
57
|
+
# wedged startup). init_db() above runs the schema/data migrations; these two
|
|
58
|
+
# convert legacy profile/session rows to the agent_config shape.
|
|
59
|
+
logger.info("Migrating profiles/sessions to agent_config...")
|
|
60
|
+
try:
|
|
61
|
+
from src.core.database import get_session_local
|
|
62
|
+
from src.core.migrate_profiles_to_agent_config import (
|
|
63
|
+
backfill_sessions,
|
|
64
|
+
migrate_profiles,
|
|
65
|
+
)
|
|
66
|
+
migrated = migrate_profiles(get_session_local())
|
|
67
|
+
if migrated:
|
|
68
|
+
logger.info(f"Migrated {migrated} profiles to agent_config")
|
|
69
|
+
backfilled = backfill_sessions(get_session_local())
|
|
70
|
+
if backfilled:
|
|
71
|
+
logger.info(f"Backfilled {backfilled} sessions with agent_config")
|
|
72
|
+
except Exception as e:
|
|
73
|
+
tb = traceback.format_exc()
|
|
74
|
+
logger.error(f"Failed to migrate profiles/sessions to agent_config: {e}\n{tb}")
|
|
75
|
+
raise SystemExit(1) from e
|
|
76
|
+
|
|
54
77
|
# Seed default content
|
|
55
78
|
logger.info(f"Seeding defaults (include_databricks={seed_databricks_defaults})...")
|
|
56
79
|
try:
|
|
@@ -34,13 +34,10 @@ from src.api.routes.settings import (
|
|
|
34
34
|
from src.api.services.export_job_queue import start_export_worker
|
|
35
35
|
from src.api.services.job_queue import recover_stuck_requests, start_worker
|
|
36
36
|
from src.core.database import (
|
|
37
|
-
get_session_local,
|
|
38
|
-
init_db,
|
|
39
37
|
is_lakebase_environment,
|
|
40
38
|
start_token_refresh,
|
|
41
39
|
stop_token_refresh,
|
|
42
40
|
)
|
|
43
|
-
from src.core.migrate_profiles_to_agent_config import migrate_profiles, backfill_sessions
|
|
44
41
|
|
|
45
42
|
logger = logging.getLogger(__name__)
|
|
46
43
|
|
|
@@ -92,8 +89,8 @@ async def lifespan(app: FastAPI):
|
|
|
92
89
|
else:
|
|
93
90
|
logger.info("Pytest detected: skipping MCP session manager startup")
|
|
94
91
|
|
|
95
|
-
# Start Lakebase token refresh if running in Databricks Apps
|
|
96
|
-
#
|
|
92
|
+
# Start Lakebase token refresh if running in Databricks Apps. Workers serve
|
|
93
|
+
# DB-backed requests, so they need fresh OAuth tokens.
|
|
97
94
|
if is_lakebase_environment():
|
|
98
95
|
try:
|
|
99
96
|
await start_token_refresh()
|
|
@@ -102,24 +99,11 @@ async def lifespan(app: FastAPI):
|
|
|
102
99
|
logger.error(f"Failed to start Lakebase token refresh: {e}")
|
|
103
100
|
raise
|
|
104
101
|
|
|
105
|
-
#
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
logger.info("Database tables initialized")
|
|
111
|
-
|
|
112
|
-
migrated = migrate_profiles(get_session_local())
|
|
113
|
-
if migrated:
|
|
114
|
-
logger.info(f"Migrated {migrated} profiles to agent_config")
|
|
115
|
-
backfilled = backfill_sessions(get_session_local())
|
|
116
|
-
if backfilled:
|
|
117
|
-
logger.info(f"Backfilled {backfilled} sessions with agent_config")
|
|
118
|
-
except Exception as e:
|
|
119
|
-
logger.error(f"Failed to initialize database: {e}")
|
|
120
|
-
raise
|
|
121
|
-
else:
|
|
122
|
-
logger.info("Pytest detected: skipping database initialization")
|
|
102
|
+
# NOTE: database migrations run ONCE before the server starts, in
|
|
103
|
+
# run.py::init_database (invoked as its own step by the Databricks Apps boot
|
|
104
|
+
# command, and by scripts/init_database.py locally) — NOT here. This lifespan
|
|
105
|
+
# runs in every uvicorn worker, and having 4 workers race the migration chain
|
|
106
|
+
# on boot wedged startup. Workers must never run migration code.
|
|
123
107
|
|
|
124
108
|
if IS_PRODUCTION:
|
|
125
109
|
logger.info("Production mode: serving frontend from package assets")
|
|
@@ -1126,6 +1126,41 @@ _DECK_PLACEHOLDER_COLUMNS: tuple[tuple[str, str], ...] = (
|
|
|
1126
1126
|
)
|
|
1127
1127
|
|
|
1128
1128
|
|
|
1129
|
+
def _deck_columns_have_int_placeholder(conn, live_targets, _qual, is_sqlite) -> bool:
|
|
1130
|
+
"""Does any target column still hold an int-style ``{{image:<digits>}}`` placeholder?
|
|
1131
|
+
|
|
1132
|
+
The cheap gate that keeps :func:`_migrate_rewrite_deck_image_placeholders` a
|
|
1133
|
+
near no-op on every startup after its one-time rewrite. Read-only and
|
|
1134
|
+
short-circuiting (``LIMIT 1``), so it never takes a write lock and stops at the
|
|
1135
|
+
first match.
|
|
1136
|
+
|
|
1137
|
+
- PostgreSQL / Lakebase (the real target): a POSIX regex, ``{{image:`` + one or
|
|
1138
|
+
more digits + ``}}``. Precise — a token placeholder is
|
|
1139
|
+
``{{image:<token>}}`` where the token is ``secrets.token_urlsafe(32)`` (43
|
|
1140
|
+
chars of ``[A-Za-z0-9_-]``), which cannot be all digits, so only genuine
|
|
1141
|
+
legacy int placeholders match.
|
|
1142
|
+
- SQLite (tests only): ``GLOB`` has no ``+`` quantifier, so the pattern matches
|
|
1143
|
+
``{{image:`` followed by a single digit. Deliberately BROAD — it can also
|
|
1144
|
+
match a token placeholder that happens to start with a digit, which at worst
|
|
1145
|
+
makes the idempotent rewrite loop run when it strictly need not. It never
|
|
1146
|
+
misses a real int placeholder, so correctness is preserved; SQLite is not a
|
|
1147
|
+
deployment target and its data is tiny.
|
|
1148
|
+
"""
|
|
1149
|
+
from sqlalchemy import text
|
|
1150
|
+
|
|
1151
|
+
for table_name, column_name in live_targets:
|
|
1152
|
+
q = _qual(table_name)
|
|
1153
|
+
if is_sqlite:
|
|
1154
|
+
stmt = text(f"SELECT 1 FROM {q} WHERE {column_name} GLOB :pat LIMIT 1")
|
|
1155
|
+
params = {"pat": "*{{image:[0-9]*"}
|
|
1156
|
+
else:
|
|
1157
|
+
stmt = text(f"SELECT 1 FROM {q} WHERE {column_name} ~ :pat LIMIT 1")
|
|
1158
|
+
params = {"pat": r"\{\{image:[0-9]+\}\}"}
|
|
1159
|
+
if conn.execute(stmt, params).first() is not None:
|
|
1160
|
+
return True
|
|
1161
|
+
return False
|
|
1162
|
+
|
|
1163
|
+
|
|
1129
1164
|
def _migrate_rewrite_deck_image_placeholders(conn, inspector, schema, _qual, is_sqlite) -> None:
|
|
1130
1165
|
"""Rewrite stored deck ``{{image:<int-id>}}`` placeholders to ``{{image:<token>}}`` (SDR-4437 F-TM-7).
|
|
1131
1166
|
|
|
@@ -1151,9 +1186,14 @@ def _migrate_rewrite_deck_image_placeholders(conn, inspector, schema, _qual, is_
|
|
|
1151
1186
|
per-match lookup into ``image_assets``, not a fixed template.
|
|
1152
1187
|
- **Prefix-safe.** The literal ``{{image:5}}`` (closing braces included) never
|
|
1153
1188
|
matches inside ``{{image:51}}``, so there is no id-prefix collision.
|
|
1154
|
-
- **Idempotent + cheap.**
|
|
1155
|
-
|
|
1156
|
-
|
|
1189
|
+
- **Idempotent + cheap on repeat.** This runs on EVERY worker at EVERY startup,
|
|
1190
|
+
so a fast gate (:func:`_deck_columns_have_int_placeholder`) short-circuits the
|
|
1191
|
+
whole thing once no int-style placeholder remains — turning steady-state boots
|
|
1192
|
+
into a few read-only ``LIMIT 1`` scans instead of O(images) unindexable
|
|
1193
|
+
leading-wildcard ``LIKE`` UPDATEs per column (that unconditional per-boot cost
|
|
1194
|
+
stalled real multi-worker startup on prod-scale data). The per-UPDATE ``LIKE``
|
|
1195
|
+
guard is the second layer: within a run it skips rows without this id, and
|
|
1196
|
+
unreferenced or hard-deleted ids are never touched.
|
|
1157
1197
|
- **No jsonb cast.** Every target column (:data:`_DECK_PLACEHOLDER_COLUMNS`) is
|
|
1158
1198
|
``TEXT`` on both backends, so ``replace()`` applies directly. Tokens are
|
|
1159
1199
|
``[A-Za-z0-9_-]`` (JSON-safe), so text-level replacement inside a JSON blob
|
|
@@ -1187,6 +1227,16 @@ def _migrate_rewrite_deck_image_placeholders(conn, inspector, schema, _qual, is_
|
|
|
1187
1227
|
if not live_targets:
|
|
1188
1228
|
return
|
|
1189
1229
|
|
|
1230
|
+
# Fast idempotency gate. This migration runs on EVERY worker at EVERY startup
|
|
1231
|
+
# (init_db in the FastAPI lifespan), so once the one-time rewrite is done it must
|
|
1232
|
+
# NOT re-issue the per-image UPDATEs: each is an unindexable leading-wildcard
|
|
1233
|
+
# LIKE scan of a large-blob deck table, and O(images) of them per column across
|
|
1234
|
+
# several concurrent workers stalls startup on prod-scale data. If no target
|
|
1235
|
+
# column still holds an int-style {{image:<digits>}} placeholder, there is
|
|
1236
|
+
# nothing to do — return before touching the image rows or the deck tables.
|
|
1237
|
+
if not _deck_columns_have_int_placeholder(conn, live_targets, _qual, is_sqlite):
|
|
1238
|
+
return
|
|
1239
|
+
|
|
1190
1240
|
rows = conn.execute(
|
|
1191
1241
|
text(f"SELECT id, token FROM {_qual('image_assets')} WHERE token IS NOT NULL")
|
|
1192
1242
|
).fetchall()
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/databricks_tellr_app/__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
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/_otel_bootstrap.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/middleware/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/middleware/csrf.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/_authz.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/admin_usage.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/agent_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/export.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/feedback.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/google_slides.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/images.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/local_version.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/profiles.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/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
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/slides.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/verification.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/routes/version.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/agent_config.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/feedback.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/requests.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/responses.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/schemas/streaming.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/chat_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/job_queue.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/services/usage_events.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/utils/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/api/utils/validation.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/config_loader.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/context_utils.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/databricks_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/init_default_profile.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/mlflow_agent_spans.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/mlflow_tracing.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/otel_logging.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/permission_context.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/prompt_modules.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/core/user_context.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/__init__.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/feedback.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/identity.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/image.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/profile.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/prompts.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/database/models/session.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
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/domain/slide_deck.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/agent_factory.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/config_service.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/config_validator.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
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/drive_uploader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/genie_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/html_to_pptx.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/image_service.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/image_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/profile_service.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/genie_tool.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/tools/mcp_tool.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/services/validator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/ds_asset_utils.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/error_handling.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/html_safety.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/image_utils.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/js_validator.py
RENAMED
|
File without changes
|
{databricks_tellr_app-0.4.3.dev7 → databricks_tellr_app-0.4.3.dev9}/src/utils/logging_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|