Commit Graph
182 Commits
Author SHA1 Message Date
ciregenz b415a16411 [eric] chat: treat an active stream as 'live' in the fetchSession merge so a mid-stream reopen keeps the user bubble (revert the fetch-skip that added the resume-bubble regression) 2026-06-11 04:11:38 -07:00
abccodesandciregenz c0bc12763f [aidan] ui/ux: removed keyboard shortcuts 2026-06-11 03:13:05 -07:00
ciregenz 775b24d285 Merge PR #68 [aidan] bug: ui/ux fixes (back/forward disabled-state, browser-card dashboard scoping + resize, selection-overlay clipping, dashboard-duplicate carries chats)
AppShell conflict resolved: kept the lucide/redesign + folded in the back/forward disabled-state logic.
2026-06-11 02:59:30 -07:00
ciregenz 0a81bfa17a Merge PR #70 [Aidan] appbuilder: inject selected-app context into dashboard agent chat 2026-06-11 02:51:05 -07:00
ciregenz dd58177c72 [eric] onboarding: panel defaults to expanded on first init (was forced to pill); returning users keep their saved choice 2026-06-11 00:35:54 -07:00
AidanandGitHub b6db089c21 [aidan] fix: scope browser cards to their origin dashboard so they stop leaking across dashboards (#72)
The backend already broadcasts the originating dashboard_id with every browser_card_added, but the frontend was throwing it away. Browser cards live in a single global Redux dict and the canvas rendered all of them unfiltered, so a browser spawned by an agent on dashboard A would appear in whatever dashboard the user was currently viewing.

Tag every card with its dashboard_id (at WS arrival and at fetchLayout hydration) and filter by it in useDashboardSelectors so render, bounds, layout save, and keyboard nav all see only the local dashboard's cards.
2026-06-11 00:29:08 -07:00
ciregenz ddd0641cac [eric] merge free-trial + value-first onboarding (flag off, reorder gated so no-trial = today's flow)
# Conflicts:
#	frontend/src/app/pages/AgentChat/bubbles/MessageBubble.tsx
2026-06-10 23:20:18 -07:00
AidanandGitHub e8e19661e6 Inject selected-app context into dashboard agent chat (#69)
When a user selects an App card on the dashboard via the "Select UI element" picker, thread the selected Output ids to the backend (mirroring the selected_browser_ids path) and inject a per-app context block into the system prompt: each app's absolute workspace path, entry point, meta.json, and a pointer to its SKILL.md. This lets the agent edit existing apps in place from the main view (the dashboard card's Vite runtime live-reloads on save) without switching to the Apps tab.
2026-06-10 21:29:02 -07:00
ciregenz 6ed012031c [eric] ui: bring eric/ui-polish (HIG card/sidebar/status polish) onto eric/dev 2026-06-10 19:29:04 -07:00
ciregenz 0bf2eb37f6 [eric] desktop: renderer self-heals a stale backend port, fixes the post-signin CORS wall 2026-06-10 17:37:57 -07:00
ciregenz b0c3b8de19 [eric] frontend: status chips speak plain english, working / needs your OK / done instead of enum values 2026-06-10 00:56:43 -07:00
ciregenz c8c95e4297 [eric] free-trial: value-first onboarding reorder, arm-on-launch, exhaustion upsell card 2026-06-10 00:01:37 -07:00
Aidanandciregenz 0a704d4690 [aidan] chat: isolate branch history, fresh session on edit/switch (#62) 2026-06-09 22:29:31 -07:00
ciregenz 67c639a76c [eric] strip the ux-trace debug logging from the chat-reopen investigation 2026-06-09 22:00:16 -07:00
ciregenz 2fd7fc0e91 [eric] frontend: keep an active agent's WS alive across a hop, reopening a still-responding chat skips the reconnect handshake that caused the lag 2026-06-09 21:57:55 -07:00
ciregenz aaf5170cae [eric] frontend: order surviving messages by timestamp in the snapshot merge, a just-sent bubble was rendering below the agent reply 2026-06-09 20:38:26 -07:00
ciregenz ae3019640a [eric] frontend: optimistic messages survive the snapshot merge even when both sides read settled, fixes the 2nd-send bubble flicker 2026-06-09 18:31:18 -07:00
ciregenz 213048a2dc [eric] frontend: trust local live status in the session-snapshot merge, a racing stale snapshot hid the just-sent user bubble until run end 2026-06-09 18:13:13 -07:00
ciregenz 89ac24da5b [eric] frontend: scope the session-list strip to the fetched dashboard, hopping dashboards ate finished chats 2026-06-09 17:20:10 -07:00
ciregenz 662468a755 [eric] frontend: boot browser cards parked (title placeholder, no guest process), wake on zoom-in or agent dispatch 2026-06-09 16:33:50 -07:00
ciregenz 35bef3b63a [eric] frontend: keepalive flush + pagehide drain so window close stops eating queued events 2026-06-09 15:50:40 -07:00
ciregenz 68af9c1b2b [eric] frontend: activation_failed telemetry logged [object Object], surface err.message 2026-06-09 15:10:55 -07:00
ciregenz b8a0c0814c [eric] dashboard: suspend offscreen browser webviews to a snapshot, cuts RAM/CPU at scale 2026-06-09 14:06:18 -07:00
ciregenz c035c3377a [eric] frontend: clear pong timeout before the rAF coalescer, a frameless window buffered pongs and suicided healthy sockets 2026-06-09 12:59:00 -07:00
ciregenz e13f282050 [eric] frontend: reconnect layout refetch merges (keeps live card positions) instead of blind-replacing 2026-06-09 04:52:49 -07:00
ciregenz 8159d79c4a [eric] frontend: stop the session-list poll from clobbering live chat messages, fixes the user bubble vanishing on click-out/in 2026-06-09 02:51:40 -07:00
ciregenz dd0f70d9a3 [eric] onboarding: delete the now-unreachable docked resume tab, migrate stale docked state to hidden 2026-06-08 13:17:28 -07:00
ciregenz 1d57ee6680 [eric] settings: new agent chats spawn expanded by default (toggle off in Settings > Interface) 2026-06-08 13:15:48 -07:00
ciregenz 1480fddf51 [eric] browser: replay clicks scroll-and-retry when off-screen, long names resolve by stable prefix 2026-06-05 17:21:50 -07:00
ciregenz 0992e25bf2 [eric] browser: numbered index overlays on screenshots, vision and clicks share one index language 2026-06-05 11:03:20 -07:00
ciregenz 059185dd4b [eric] browser: kill the double-fill, textbox rows show live value, typing echoes verified read-back, expect demands literal page text 2026-06-05 10:29:12 -07:00
ciregenz c0ff256afd [eric] browser: ctx-tagged twin rows + stable indices across looks in list_interactives 2026-06-05 00:46:24 -07:00
ciregenz 01e3e2be53 [eric] browser: re-broadcast ws commands lost in dead-socket gaps, refetch layout on reconnect 2026-06-04 23:03:20 -07:00
ciregenz 05fa871b24 [eric] browser: occlusion filter + containment dedup + new-element markers, click flash, request-id dedupe 2026-06-04 23:03:20 -07:00
ciregenz b02aecbb58 [eric] browser: hit-test clicks before dispatch and verify typed text, honest fallbacks for both 2026-06-04 19:04:38 -07:00
ciregenz 3f388524fd [eric] browser: keep spawned cards alive for parent reuse, clean on parent finish not per sub-agent 2026-06-04 19:00:03 -07:00
ciregenz 53ffe92c14 [eric] browser: return navigate on dom-ready so heavy SPAs stop hanging the 20s cap 2026-06-04 18:40:06 -07:00
ciregenz f7ac55660a [eric] browser: bound AX perception and cap the tracker-iframe walk so a busy page fails clearly, not silently 2026-06-04 17:15:29 -07:00
ciregenz f03dde7e0c [eric] browser: focus text boxes by node and insert text directly, reaches compose iframes clicks miss 2026-06-04 16:38:56 -07:00
ciregenz f0144690af [eric] browser: end the wait on the target or DOM-settle, not network-idle, so it stops waiting blind 2026-06-04 14:57:38 -07:00
ciregenz 2640930380 [eric] browser: add BrowserGetConsole so a stuck agent can read the page's console errors 2026-06-04 13:20:39 -07:00
ciregenz 5dcdc88005 [eric] browser: abort a batch on the first failed sub-action, not just on navigation 2026-06-04 12:10:09 -07:00
ciregenz ad75228abe [eric] browser: guard capture-page on churning webviews to dodge the V8 crash 2026-06-04 11:26:50 -07:00
ciregenz e5ff670070 [eric] settings: sign-in becomes an optional dialog opened from the account card 2026-06-04 04:17:38 -07:00
ciregenz 27686e270b [eric] browser: settle-aware in-batch wait and a terminal read sub-action 2026-06-04 04:04:44 -07:00
ciregenz a562a5c3c3 [eric] browser: prune stale screenshots + capture downscaled JPEG to cut agent context cost 2026-06-03 22:17:05 -07:00
ciregenz f121fa442c [eric] browser: surface a redacted concrete route example so the agent can compose replay_route with {{value}} 2026-06-03 13:17:57 -07:00
ciregenz 50230c88c5 [eric] browser: also sample route count on evaluate (the agent's real read path), not just get_text 2026-06-03 02:11:11 -07:00
ciregenz 7175f4b27b [eric] browser: sample captured-route count on read, not navigate, so the network nudge actually fires 2026-06-03 02:05:11 -07:00
ciregenz 21b225ded4 [eric] browser: nudge the agent toward the fast captured-API tier once per host 2026-06-03 00:50:23 -07:00