fix: restore inline image rendering and cross-chat stability#310
Closed
solidk1 wants to merge 21 commits intodatabricks-solutions:mainfrom
Closed
fix: restore inline image rendering and cross-chat stability#310solidk1 wants to merge 21 commits intodatabricks-solutions:mainfrom
solidk1 wants to merge 21 commits intodatabricks-solutions:mainfrom
Conversation
Bring the full databricks-builder-app update set into the fork, including user PAT configuration, personal workspace sync, new API routes, database migrations, and frontend settings/runtime updates needed by the hosted Claude Code workflow.
Merge full databricks-builder-app updates
Improve the builder app with a dedicated Skills & MCP experience, durable partial stream persistence, synchronous deployment migrations, and stronger Databricks app/workspace MCP operations for deploys, logs, and workspace file CRUD.
Update app config env defaults and simplify app tool behavior so deployment and log retrieval paths are consistent with current Databricks Apps runtime behavior.
Resolved conflicts in app.yaml, ProjectPage.tsx, agent.py, user.py, and test_clusters.py. Adopted upstream's approach of removing the Anthropic proxy in favor of CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS. Re-applied local IME fix and deploy.sh SP permission grant.
Prefer .venv/bin/python3 over system python3 so databricks-sdk is importable during Lakebase URL construction and grant steps.
Avoid dropping execution events on transient DB write failures by only removing pending batches after successful persistence, and make SSE reconnect cursor parsing robust against missing or invalid timestamps.
- Track and persist token usage (input/output/cache) and duration per assistant message in Lakebase with new migration - Display timestamps on user messages and stats on assistant responses, persisted across page reloads - Fix thinking process rendering: clear live activity on completion, save to trace history for inline display above assistant messages - Extend file upload to support PDF, Word, Excel, and PowerPoint - Improve deploy script with --no-wait, --skip-migrations, and parallel prerequisite checks - Add persistent httpx client in anthropic proxy for connection reuse - Restore anthropic_proxy router, OBO auth, inline image support, and IME composition handling from custom fork
Keep per-conversation thinking activity during active streams so switching chats no longer drops the in-progress trace, and improve streamed/thinking readability by inserting paragraph breaks when chunks arrive concatenated.
Use tuple-based startswith calls for workspace path prefix checks in apps tools/core so the lint pipeline passes without behavior changes.
Rehydrate streaming ownership from active backend executions when loading conversations so in-progress thinking traces are preserved across navigation, and include ruff formatter cleanups in apps modules.
Point the app to the shared Lakebase instance and clear the default MLflow experiment path so deployment defaults are environment-agnostic.
Clean up unused imports flagged by Ruff so lint checks pass cleanly across skill tests, MCP workspace tooling, and SQL unit tests.
Rename server_name to _server_name in agent executor MCP env wiring to satisfy Ruff's unused loop variable rule in CI.
Run Ruff formatter on .test/src/skill_test in feat-builder-steve-1 so formatting checks pass on this branch.
This reverts commit 3ff71b0.
Reset .test/src/skill_test files to match origin/main so branch-specific formatting and lint drift are removed before further test updates.
Commit all current branch updates, including skill_test formatting adjustments and builder app/tooling baseline changes needed for deployment and CI consistency.
- Restore _is_inline_image_tool with check_operation_status support so charts from async operations are detected as inline images - Add hasattr(item, 'text') handling in _process_tool_result for SDK objects with .text attributes - Track inline_image_paths in router and append image markdown to final_text before persistence so charts survive in conversation history
Guard setCurrentConversation calls so they only update the UI when the user is still viewing the conversation that triggered the run, avoiding cross-chat mingling when the user switches chats while streaming.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Test plan