Commit Graph

  • 9605454ebf [eric] windows: onboarding cursor eases via cursorStore-driven css transition (snaps while tracking, eases on moveTo) to match the mac spring Eric 2026-05-26 04:16:57 -07:00
  • 529d350cae [eric] windows 1.1.63: drop the textarea + file-input squirrel-era ablations, restore contentEditable @-mention UI and the attach paperclip on windows, plus a cubic-bezier cursor transition v1.1.63 Eric 2026-05-26 02:42:56 -07:00
  • da61377d8c [eric] windows 1.1.62: cursor and popups follow target on windows via store-driven style.transform v1.1.62 Eric 2026-05-26 02:10:56 -07:00
  • 31a90502c7 [eric] windows 1.1.61: restore AgenticCursor render on Windows now that the framer-motion shim makes motion.div safe v1.1.61 Eric 2026-05-26 01:42:05 -07:00
  • fc8c35e5e0 [eric] windows 1.1.60: revert installer to nsis to test if squirrel was the renderer-crash trigger v1.1.60 Eric 2026-05-26 01:20:20 -07:00
  • bb2de72f6f [eric] windows 1.1.59: production webpack and framer-motion shim v1.1.59 Eric 2026-05-26 00:29:17 -07:00
  • 7407e6cb37 [eric] windows 1.1.58: three fixes — (a) revert file-input restore: <input type="file"> is ALSO a Windows commit-phase crasher just like the contentEditable was, both must stay ablated, drag-and-drop still works; (b) nuclear-disable OnboardingRoot on Windows since the AgenticCursor visual ablation alone was insufficient (Onboarding panel/director/popups have additional Framer Motion + portal subtrees that segfault on commit) — user loses the guided tour on Windows but the rest of the app works; (c) remove iframe sandbox from BrowserCard so sites that need full-document access can render (Google specifically still appears grey because they run JavaScript anti-iframe detection that blanks document.body when window.top !== window.self, which header stripping cannot defeat; most non-Google sites should render fine now); Mac path untouched v1.1.58 Eric 2026-05-25 23:44:31 -07:00
  • aff9ccf98a [eric] windows 1.1.57: four fixes — (a) textarea Enter-to-send now actually clears the input (missed editor.innerHTML='' at ChatInput.tsx:181 in the post-send path); (b) textarea draft restore (useDraftLoad) routes through .value instead of innerHTML on Windows so a saved draft repopulates the input on remount; (c) restore the <input type="file"> + attach button on Windows since the original 1.1.54 crash root cause was the contentEditable TSF init not the file input — replacing contentEditable with textarea was the actual fix, file input was over-ablated; (d) relax CSP frame-src to allow http:/https: so BrowserCard iframe can render external sites; (e) gate AgenticCursor's portaled Framer Motion infinite-loop animation on Windows so onboarding panel commit no longer 0xC0000005 segfaults; Mac path untouched v1.1.57 Eric 2026-05-25 23:22:06 -07:00
  • 3903766e96 [eric] windows 1.1.57: (a) relax CSP frame-src to allow http: and https: so BrowserCard iframe can render external sites (our own app-level CSP was the second-layer blocker after the upstream XFO/CSP frame-ancestors we already strip in main.js — together they let the iframe load Google et al); (b) gate AgenticCursor's portaled Framer Motion infinite-loop scale + drop-shadow node on Windows so the onboarding panel commit phase no longer segfaults from that subtree (visual cursor disabled on Windows, imperative handle still works for AC runtime); Mac path untouched Eric 2026-05-25 23:16:14 -07:00
  • 0076909145 [eric] windows 1.1.56 hotfix: webRequest.onHeadersReceived filter uses 'subFrame' (Electron camelCase) not 'sub_frame' (Chrome extension snake_case) — wrong name threw "Invalid type sub_frame" synchronously during app.whenReady, became an unhandledRejection, prevented the app from booting on 1.1.55 v1.1.56 Eric 2026-05-25 22:51:34 -07:00
  • b73f508755 [eric] windows 1.1.55: (a) textarea-aware editor read/write/clear helpers so Enter-to-send works on Windows where EditorSurface uses textarea instead of contentEditable (handleSend was reading .textContent which is empty on textarea); (b) gate BrowserCard webview behind !Windows so dashboard hydration no longer segfaults from webview tag commit (iframe fallback is now usable for most sites since we also strip X-Frame-Options and CSP frame-ancestors on sub_frame loads via session.webRequest.onHeadersReceived, scoped to http/https types:sub_frame so OAuth popups and deep links keep their security headers); (c) gate onboarding video autoPlay on Windows so panel mount does not trigger the autoplay+animation crash; Mac path untouched everywhere v1.1.55 Eric 2026-05-25 22:29:17 -07:00
  • 518d0574dd [eric] windows 1.1.54 ablate (fix): correctly platform-gate the file-input/attach-button ablation (1.1.53 mistakenly disabled them on both Mac and Windows because the file was already wrapped in {false && ...} from a prior diagnostic — Mac now renders the full attach UI again, Windows still skips it); textarea-instead-of-contentEditable already correctly platform-gated since 1.1.53 v1.1.54 Eric 2026-05-25 21:59:19 -07:00
  • d85d9c2c10 [eric] windows 1.1.52 ablate: swap contentEditable div for textarea + hide <input type="file"> on Windows so the commit-phase 0xC0000005 (Chromium 144 + Electron 40 native crashers) cannot mount; Mac path untouched so @-mention rich-UI and full attach button stay working there; UA-gated at module load via navigator.userAgent.includes('Windows') so zero runtime branch cost; if Windows chat opens without crash one of these was the trigger and we narrow in v1.1.53 by re-enabling each v1.1.53 Eric 2026-05-25 21:53:04 -07:00
  • e2ea5e03cf [eric] windows 1.1.51 diag: render logs on every ChatInputToolbar child (ModeControl, ModelPickerMenu, ThinkingLevelControl, ToolbarActions) so the next 0xC0000005 crash narrows from "ChatInputToolbar last" to the exact toolbar child that commits before the segfault v1.1.51 Eric 2026-05-25 21:27:14 -07:00
  • 06e7c54f57 [eric] windows 1.1.50 diag: render logs on every ChatInputView child (ChatInputToolbar, AttachmentChips, ChatInputOverlays, SendBlockBanner) so the next 0xC0000005 crash trace shows which sibling commits after EditorSurface — spellCheck=false on the contentEditable did not stop the crash so the trigger is either later in ChatInputView's child render order or in the JSX after EditorSurface's render log; bump for Squirrel fresh-fetch v1.1.50 Eric 2026-05-25 21:04:46 -07:00
  • 664faa1033 [eric] windows 1.1.49: spellCheck={false} on contentEditable div + ChatInputView and EditorSurface render logs + version bump so Squirrel actually fetches a fresh signed binary (force-retagging v1.1.44 was reusing the cached install on every iteration); tag v1.1.49 v1.1.49 Eric 2026-05-25 20:04:37 -07:00
  • 83a042d662 [eric] windows: drop invalid autoCorrect + autoCapitalize attrs from contentEditable div in EditorSurface — diag logs pinpointed ChatInput as the last child rendered before every 0xC0000005 segfault, and these attributes are spec-defined for input/textarea only so React forwarded them onto a div where Chromium 144 + Windows IME / spellchecker engages a native code path that segfaults during commit; spellCheck stays for spelling underlines; retag v1.1.44 v1.1.44 Eric 2026-05-25 19:47:55 -07:00
  • 294d1a91ed [eric] diag: add targeted logs for each top crash-suspect (boot env snapshot for React-prod-mode + tree-shaking checks, wrapped lazy() loader with requested/loaded/failed logs for chunk-split race, [diag][ErrorBoundary] prefix on componentDidCatch so in-tree throws surface in stderr alongside window.onerror); retag v1.1.44 Eric 2026-05-25 19:26:40 -07:00
  • 1ec3d473f3 [eric] diag: webpack --mode=development for packaged frontend + render logs on every AgentChat child (ContextDrawer / MessageBubble / StreamingBubble / CompactionMarker / ToolCallBubble / ToolGroupBubble / ApprovalBar / ChatInput / MessageActionBar / ErrorSlime) so the next 0xC0000005 crash trace shows the exact last component that committed before the segfault since http origin already disproved file://; retag v1.1.44 Eric 2026-05-25 19:20:16 -07:00
  • 0c2cf3fc20 [eric] diag: build packaged frontend with webpack --mode=development since http://127.0.0.1 origin did not stop the 0xC0000005 crash (file:// theory disproved), and the only remaining variable between crash-free dev mode and crash-on-every-chat packaged mode is the production-vs-development webpack bundle (minification, terser, React prod mode, removed dev safety checks); larger bundle for one release to confirm minification/prod-bundle is the trigger, will revert and engineer a surgical webpack config once isolated; retag v1.1.44 Eric 2026-05-25 19:16:44 -07:00
  • 0bec1ea268 [eric] windows: serve packaged frontend via embedded http://127.0.0.1 server instead of file:// since dev mode (http origin) never crashed while packaged (file://) consistently 0xC0000005 segfaulted on chat/dashboard mount, confirming file:// origin is the actual native-crash trigger on Electron 40 CastLabs Chromium 144; revert disableHardwareAcceleration to keep GPU perf since the fault was never GPU-side; retag v1.1.44 Eric 2026-05-25 18:40:06 -07:00
  • 9a6956477f [eric] windows: app.disableHardwareAcceleration() since dropping the gpu-blocklist override alone did not stop 0xC0000005 renderer crashes on chat/dashboard mount, so the native segfault is in the GPU process itself not just blocklist-bypass paths; software rasterization is slower but neutralizes the entire GPU-side native-crash class; win32 only, mac is unaffected; retag v1.1.44 Eric 2026-05-25 18:15:03 -07:00
  • bfe59e52b0 [eric] windows: drop ignore-gpu-blocklist + enable-gpu-rasterization + enable-zero-copy since Crashpad confirms every renderer crash is STATUS_ACCESS_VIOLATION 0xC0000005 with no JS cause, classic blocklisted-driver segfault pattern on Electron 40 CastLabs Chromium 144; respecting the blocklist lets Chromium fall back to software rasterization on affected GPUs; retag v1.1.44 Eric 2026-05-25 17:49:12 -07:00
  • 099a0c69e7 [eric] diag: max-coverage logs (crashReporter for native minidumps, main-process uncaughtException + unhandledRejection + child-process-gone + preload-error, full render-process-gone details, safe sendToRenderer, every ipcMain.handle entry, BrowserCard / WorkflowCard render, AgentChat before-jsx) so the next renderer crash leaves a complete trace; retag v1.1.44 Eric 2026-05-25 17:29:40 -07:00
  • aa644d2d2a [eric] fix: WebSocketManager.connect diag log read this.options.sessionId on a class that stores the field as this.sessionId directly, so every WS connect threw TypeError and triggered the Windows native renderer crash on every chat / dashboard hydration; retag as v1.1.44 since the chat-spawn root cause was already closed by the v1.1.44 preload race fix and my v1.1.45 instrumentation regressed it Eric 2026-05-25 16:49:01 -07:00
  • be3808fa5c [eric] diag: add global window.onerror + unhandledrejection handlers in Main.tsx so packaged-build stderr captures the stack trace of the "Cannot read properties of undefined (reading 'sessionId')" throw firing inside AgentChat's render path (bundle.js:2 alone is uninformative without source maps) Eric 2026-05-25 16:27:39 -07:00
  • d27f289cea [eric] windows: fix UA-spoof leak onto recreated main window + add diag logs across preload, createWindow, recreateMainWindow, resumeSession, launchAndSendFirstMessage, AgentChat, WebSocketManager so packaged-build stderr captures the chat-spawn crash trail Eric 2026-05-25 16:06:58 -07:00
  • e7a09c9568 [eric] windows: fix preload race that crashed renderer on chat spawn Eric 2026-05-25 15:45:37 -07:00
  • 6777d45d1c windows: stop killing app on renderer crash; recreate window instead of reload v1.1.43 Eric 2026-05-25 15:14:29 -07:00
  • e9a2aac1ef [eric] win: alias step now finds installer in squirrel-windows subdir (-Recurse) ciregenz 2026-05-25 14:24:31 -07:00
  • e4396d65dc [eric] release: bump version to 1.1.43 ciregenz 2026-05-25 14:10:01 -07:00
  • 20ff15e6a0 [eric] win: upload stable-named OpenSwarm-Setup-x64.exe alias so site link stops 404ing ciregenz 2026-05-25 14:01:01 -07:00
  • 43d0a50c1d [eric] win: create app shortcut on Squirrel install (was only Setup.exe visible) ciregenz 2026-05-25 14:01:01 -07:00
  • bcabcca407 [eric] workflows: scheduling is a chat view (bounded height, composer docked) so it stops collapsing tiny ciregenz 2026-05-25 12:51:47 -07:00
  • c5d2fe512f [eric] workflows+dashboard: card width matches chat, Cmd/Ctrl+A select-all, compact scheduling + consistent cancel/title ciregenz 2026-05-25 12:45:59 -07:00
  • 846ee3bb01 [eric] workflows: auto-fit card height, drop stray step bands, fix active-poll 401 + view dead-ends ciregenz 2026-05-25 12:22:25 -07:00
  • 85646bc556 [eric] workflows: ignore saves card, scheduling chat typeable + default model, accent color, drop step box ciregenz 2026-05-25 11:50:12 -07:00
  • a137eba7c0 [eric] workflows: preview header divider, HITL-gold schedule button, model/mode/secs subtitle, slicker calendar ciregenz 2026-05-25 11:16:30 -07:00
  • db4b944b0c [eric] workflows: compact expandable steps in preview so schedule prompt + buttons stay visible ciregenz 2026-05-25 10:32:12 -07:00
  • 083d70def5 [eric] workflows: merge scheduled-tasks onto dev, re-home dashboard + fix backend imports ciregenz 2026-05-24 23:41:53 -07:00
  • 8ee037d770 [eric] release: bump version to 1.1.42 v1.1.42 ciregenz 2026-05-24 16:35:38 -07:00
  • 6cf2606666 [eric] merge: fold eric/cleanup abstraction refactor into dev (resolve 9, re-home edits) ciregenz 2026-05-24 16:24:59 -07:00
  • 5fb4d02648 [eric] ui: docked tour collapses to a minimal right-edge tab; restore serif font ciregenz 2026-05-24 12:33:22 -07:00
  • edec6e0f9c [eric] ui: onboarding skip-to-sidebar + global count; sans fallback; memoize hot selectors ciregenz 2026-05-24 11:03:30 -07:00
  • 6e2d4e94aa [eric] actions: scope MCP service rules per integration; fixes mislabeled @ commands ciregenz 2026-05-24 02:40:35 -07:00
  • cd694ce6f1 [eric] usage: accurate tool calls + run time, drop empty-draft skew, quirky savings line ciregenz 2026-05-24 02:15:19 -07:00
  • 45fdfff3b7 [eric] actions: sort MCPs by connected+on, then on, then off (stable, no more jumping) ciregenz 2026-05-24 01:55:50 -07:00
  • c58708e3fd [eric] agents: unlock chat input when a send/edit fails (clear stuck 'running') ciregenz 2026-05-24 01:50:27 -07:00
  • 0bc2e1524e [eric] agentchat: plain-language memory/tools meter, hidden until it matters ciregenz 2026-05-24 01:48:26 -07:00
  • 1818375967 [eric] models: label Anthropic (API key) + subscription variants, fix billing bucket ciregenz 2026-05-24 01:48:26 -07:00
  • 9a93b81a1c [eric] picker: drop Fits/Tight/Too small badges, show only context length ciregenz 2026-05-24 01:48:26 -07:00
  • 4a30a1318b [eric] previews: real app+dashboard screenshots + order by last shot, not every save ciregenz 2026-05-24 01:48:26 -07:00
  • 91425334b1 [eric] data: corrupt JSON can't brick boot; skip bad files + atomic writes ciregenz 2026-05-23 22:59:32 -07:00
  • b129998489 [eric] lint: relax max-folder-items to >7 (7 ok), prune exact-7 exceptions, convert scripts/electron/linter-checks ciregenz 2026-05-23 20:02:40 -07:00
  • 6b7f66af3f [eric] lint: extend max-folder-items governance to frontend (documented exceptions, drop blanket ignore) ciregenz 2026-05-23 19:53:56 -07:00
  • 56dbd6d633 [eric] lint: add runtime import-cycle check (alias-aware, skips type-only and dynamic imports) ciregenz 2026-05-23 19:20:47 -07:00
  • 4c5457c751 [eric] onboarding: crash can't blank app; isolate boundary + dismiss + renderer reload ciregenz 2026-05-23 19:16:04 -07:00
  • 07f61c8547 [eric] lint: scope max-folder-items to documented backend registries, drop blanket ignore ciregenz 2026-05-23 18:56:02 -07:00
  • 9b20e1f7b0 [eric] lint: repoint grandfather globs to restructured file paths ciregenz 2026-05-23 14:00:16 -07:00
  • 4e9f5ceb07 [eric] tree: group agent_manager helpers under agents/manager session and prompt ciregenz 2026-05-23 13:08:01 -07:00
  • 782811daac [eric] tree: group browser sub-agent modules under agents/browser ciregenz 2026-05-23 13:06:55 -07:00
  • efa240126f [eric] tree: group anthropic proxy modules under agents/proxy ciregenz 2026-05-23 13:05:53 -07:00
  • fa57be6bbb [eric] tree: group foundational agent modules under agents/core ciregenz 2026-05-23 13:05:15 -07:00
  • a978ba30ca [eric] tree: group app/components HUD/search/gates/pickers into overlays/ ciregenz 2026-05-23 12:56:52 -07:00
  • 7e3e37e2eb [eric] tree: group app/components rich-input + element-selection into editor/ ciregenz 2026-05-23 12:55:54 -07:00
  • 7420f81051 [eric] tree: group app/components loading/error/fx into feedback/ ciregenz 2026-05-23 12:55:02 -07:00
  • 9d244da011 [eric] tree: group Settings sections into subscription/general/models/usage ciregenz 2026-05-23 12:49:52 -07:00
  • f5e8650df7 [eric] tree: group Tools into cards/dialogs/hooks ciregenz 2026-05-23 12:48:32 -07:00
  • 4f1ef0bae6 [eric] tree: group ChatInput into hooks/model-picker/view/toolbar ciregenz 2026-05-23 12:41:54 -07:00
  • 320052c71e [eric] tree: group AgentChat into bubbles/tool-bubbles/mcp-cards/parsing/shell ciregenz 2026-05-23 12:38:42 -07:00
  • 17532658bd [eric] tree: group Dashboard hooks into hooks/{state,interaction,lifecycle} ciregenz 2026-05-23 12:28:31 -07:00
  • 1a70d05566 [eric] tree: group Dashboard canvas surface into canvas/ ciregenz 2026-05-23 12:25:26 -07:00
  • b7bcbc8532 [eric] tree: group Dashboard canvas controls into controls/ ciregenz 2026-05-23 12:24:27 -07:00
  • 67629ec7a0 [eric] tree: group Dashboard cards into cards/ ciregenz 2026-05-23 12:23:49 -07:00
  • f3206f3606 [eric] tree: group Dashboard geometry helpers into geometry/ ciregenz 2026-05-23 12:23:01 -07:00
  • d2d6816d8a [eric] deadcode: remove unused DISCOVERY_SCAFFOLDING ciregenz 2026-05-23 10:28:13 -07:00
  • dd3efa866d [eric] deadcode: remove unused _is_9router_available ciregenz 2026-05-23 10:27:36 -07:00
  • b9ce323c5f [eric] deadcode: remove unused _summarize_message_block ciregenz 2026-05-23 10:26:42 -07:00
  • 8b646b0223 [eric] deadcode: remove unused _approx_tokens ciregenz 2026-05-23 10:25:47 -07:00
  • c45972b2df [eric] imports: extract schema getDefault into shared ciregenz 2026-05-23 07:21:57 -07:00
  • 37d1b067bf [eric] imports: move mcp-tool-name helpers into shared ciregenz 2026-05-23 07:20:37 -07:00
  • 4732edba42 [eric] imports: relocate onboarding-progress slice into shared/state ciregenz 2026-05-23 07:19:24 -07:00
  • e9c9671149 [eric] imports: move CardType down into the layout slice ciregenz 2026-05-23 07:18:00 -07:00
  • 33aa485a12 [eric] cycles: extract settings persistence into store leaf ciregenz 2026-05-23 07:12:19 -07:00
  • 3b97c23592 [eric] cycles: point outputs/dashboards at aux_llm for resp-text ciregenz 2026-05-23 07:07:31 -07:00
  • 8d76f39c67 [eric] cycles: pull APP_VERSION into its own leaf ciregenz 2026-05-23 07:06:42 -07:00
  • 26b9239c8a [eric] cycles: move OAuth flow state into a leaf module ciregenz 2026-05-23 07:05:25 -07:00
  • 7916babdcc [eric] lint: drop Dashboard grandfather entry ciregenz 2026-05-23 06:58:49 -07:00
  • 244249dade [eric] split: extract dashboard lifecycle, interactions, card actions, JSX layers ciregenz 2026-05-23 06:57:54 -07:00
  • 1e1c7635cb [eric] split: extract dashboard drag + sub-agent lifecycle + shortcuts + clipboard hooks ciregenz 2026-05-23 06:37:54 -07:00
  • 8b682d20d7 [eric] split: extract dashboard tethers + arrow-nav ciregenz 2026-05-23 06:33:45 -07:00
  • 04ba8aef98 [eric] lint: drop Settings grandfather entry ciregenz 2026-05-23 06:26:48 -07:00
  • 7d5481f64a [eric] split: extract Settings general + models tabs, thin parent shell ciregenz 2026-05-23 06:26:42 -07:00
  • 693f9e4fad [eric] split: extract Settings custom-providers + api-key cards + styles ciregenz 2026-05-23 06:26:35 -07:00
  • 5c3e91cfd2 [eric] split: extract Settings subscription + account + usage cards ciregenz 2026-05-23 06:26:30 -07:00
  • b5b755b8e8 [eric] lint: drop ChatInput grandfather entry ciregenz 2026-05-23 06:08:50 -07:00
  • 317bf1e99e [eric] split: reduce ChatInput.tsx to composition root ciregenz 2026-05-23 06:08:15 -07:00
  • 2428985588 [eric] split: pull ChatInput menus, chips + view into components ciregenz 2026-05-23 06:08:10 -07:00
  • e72239ac41 [eric] split: extract ChatInput attachments, editor handlers + send helpers ciregenz 2026-05-23 06:08:02 -07:00
  • 6002c06cb1 [eric] split: extract ChatInput model picker hook + helpers ciregenz 2026-05-23 06:07:53 -07:00