Fix/UI tahoe and fixes - #14
Conversation
- Implement Liquid Glass aesthetic with specular rims and box-shadows - Replace tool details modal with inline expandable step groups - Add SVG icons and shimmering labels for various tool types - Enhance animations using cubic-bezier curves and spring motions - Refine border radii, padding, and typography across all UI components - Improve dark mode contrast and theme-specific shadow adjustments - Persist tool execution records and turn durations in history - Truncate large tool I/O JSON to prevent history file bloat - Implement explicit SIGTERM shutdown to prevent orphaned sessions - Improve session recovery with validation and resume flag handling - Refine address bar visuals and suggestions dropdown behavior - Update notification toasts, slot cards, and overlay layouts
- Simplify navigation to always open new tabs in background - Remove new_tab and background flags from NavigateRequest - Add PointerEvents to click and hover for framework compatibility - Fix value setter brand-checking for input and textarea elements - Emulate form submission on Enter key press for input fields - Scan open shadow roots for elements during snapshots - Update tool descriptions and README for better clarity BREAKING CHANGE: browser_navigate no longer accepts new_tab or background parameters
- Implement robust DOM interaction pipeline with actionability checks - Add support for Shadow DOM, iframes, and occlusion detection - Implement programmatic handling for JS dialogs and file uploads - Add observability tools for console messages and network requests - Create ring buffers for tracking fetch and XHR calls - Extract JS interaction scripts into a dedicated dom_actions module - Symlink user tools from ~/.agents/tools into the workspace - Expand E2E test suite with local fixtures and complex DOM scenarios - Update MCP tools for improved scrolling and structured navigation - Refine system prompts with debugging and dialog handling guidance
… suite Make MCP browser control SOTA-grade and verify it end-to-end. Navigation - browser_navigate is always background: opens a new hidden tab (or navigates in-place via tab_id) and never moves focus. Dropped the new_tab/background flags; browser_switch_tab is the sole focus changer. - TabManager::open_background keeps is_active truthful; switch/close tab state mutates synchronously so an immediate get_tabs is consistent. Closing a background tab no longer re-switches or steals focus. Interaction reliability (dom_actions.rs) - Unified actionability harness (Playwright-style): resolve-with-retry, bounding-box stability, occlusion detection (reports what covers the click), full pointer+mouse event sequences, composed/cross-shadow events. - Fix textarea typing (WebKit brand-check on prototype value setter). - Enter on a form input submits like a real keypress, with a guarded fallback for sites that preventDefault then ignore untrusted events. - browser_scroll gains a selector to scroll an element's container. True async JS (async_eval.rs) - callAsyncJavaScript awaits Promises — fixes click/type/wait/readiness which previously got an unserialised Promise (empty result). Discovery - browser_snapshot pierces open shadow DOM and surfaces listener-only clickables; header reports scroll position / page height; refs hidden behind a non-enumerable property. New tools - browser_console_messages / browser_network_requests (ring buffers). - browser_handle_dialog / browser_upload_file (arm native answers; the open-panel delegate is replaced with a wry-fallback). - Domain failures now surface as model-visible isError results. Infra & tests - OCTOWEB_MCP_PORT / OCTOWEB_CONFIG_DIR for isolated side-by-side instances. - test_mcp.py + tests/fixtures: 28-test e2e suite (28/28 green, 3x), validated against Bing/GitHub. Docs updated. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Octomind — developer:brief (octohub:glm)Now I have a comprehensive understanding of the changes. Let me compile the brief. 📦 Brief: MCP actionability overhaul, Liquid Glass UI, ACP session persistence, and keyboard focus fixOverall risk: 🟡 MEDIUM · Cards: 5
Card 1/5: MCP interaction pipeline: actionability harness, async eval, dialogs/uploads, observability · 🟡 · ●●●INTENT WHAT CHANGED
IMPACT RADIUS
RISK DIVERGENCE 📎 Source
Card 2/5: ACP tool-run persistence and SIGTERM shutdown · 🟡 · ●●●INTENT WHAT CHANGED
IMPACT RADIUS
RISK 📎 Source
Card 3/5: Keyboard focus restored to active webview after overlay dismissal · 🟢 · ●●●INTENT WHAT CHANGED
IMPACT RADIUS
RISK 📎 Source
Card 4/5: Liquid Glass visual overhaul across all UI surfaces · 🟢 · ●●●INTENT WHAT CHANGED
IMPACT RADIUS
RISK 📎 Source Card 5/5: Config isolation, MCP port override, and user-tool symlinks · 🟢 · ●●●INTENT WHAT CHANGED
IMPACT RADIUS
RISK 📎 Source
📂 Files changed (46 files, ~4750 lines)
{tokens:460407,cost:0.4773272} |
- Consolidate multi-line PathBuf joins into single lines - Standardize brace placement in render loop - Reformat browser_try macro calls for better readability - Clean up whitespace in log directory path construction
Octomind — developer:brief (octohub:glm)Confirmed — all changes are formatting-only. Here's the brief: 📦 Brief: Style-only formatting cleanup across 4 filesOverall risk: 🟢 LOW · Cards: 1
Card 1/1: Reformat `browser_try!` macro calls and `PathBuf` joins for readability · 🟢 · ●●●INTENT WHAT CHANGED
IMPACT RADIUS RISK 📎 Source
📂 Files changed (4 files, ~242 lines)
{tokens:256945,cost:0.2608698} |
No description provided.