Commit Graph
286 Commits
Author SHA1 Message Date
Eric c44bd07fe7 [eric] frontend: extend the store-on-window gate so an init-script flag also exposes it on production builds, letting e2e subscribe to redux diffs against the packaged app 2026-05-28 00:41:21 -07:00
Eric 2ec69427d0 [eric] revert: drop the five windows ablations now that electron 42 (chromium 146) erases the chromium-144 crashes they were working around 2026-05-27 20:51:14 -07:00
Eric bea60d7e3f [eric] fix: ablate richprompteditor to textarea on windows-electron too since the modes editor uses the same contenteditable that segfaults 2026-05-27 20:19:23 -07:00
Eric aeaa79d291 [eric] fix: ablate codemirror to a textarea on windows-electron since editorview mounts the same contenteditable that segfaults the renderer 2026-05-27 20:13:29 -07:00
Eric c3d514bf1c [eric] fix: complete the windows ablation by rendering textarea in editorsurface and skipping the onboarding video element entirely 2026-05-27 20:06:08 -07:00
Eric 5b7c852bb7 [eric] fix: stop the onboarding renderer segfault on windows by not preloading the video metadata that triggers it 2026-05-27 19:53:46 -07:00
Eric dd9d5a367c [eric] fix: stop the windows renderer segfault on view previews by falling back to iframe like browser cards already do 2026-05-27 19:34:30 -07:00
Eric 2a4cb96ac0 [eric] docs: record the one-line-comment rule in the precedence list 2026-05-27 19:11:12 -07:00
Eric bd09778e1a [eric] build: commit the lockfiles npm ci needs + ignore the build-info stamp 2026-05-27 10:19:54 -07:00
Eric 46c7059802 [eric] ui: show the build commit in settings about so a screenshot says what shipped 2026-05-27 10:19:54 -07:00
Eric 0d561fa49d [eric] perf: stopwatch the boot + headcount every file we ship 2026-05-27 10:19:53 -07:00
Eric 8c5b3bdf64 [eric] ui: fix the windows guide cursor jumping instead of gliding (it was being rebuilt from scratch every frame) and remove the new chat / history pills above the composer; bump 1.1.69 2026-05-26 15:41:13 -07:00
Eric 40b7c19b75 [eric] onboarding cursor: restore writePos-after-spring order so mac stays byte-identical (windows still eases via no-op controls + css transition); bump 1.1.65 2026-05-26 11:17:01 -07:00
Eric 3509c08057 [eric] workflows: remove scheduled-tasks end-to-end (frontend pages+slice, backend app+routes, electron poller), keep dock chat; bump 1.1.64 2026-05-26 11:12:29 -07:00
Eric 9605454ebf [eric] windows: onboarding cursor eases via cursorStore-driven css transition (snaps while tracking, eases on moveTo) to match the mac spring 2026-05-26 04:16:57 -07:00
Eric 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
2026-05-26 02:42:56 -07:00
Eric da61377d8c [eric] windows 1.1.62: cursor and popups follow target on windows via store-driven style.transform 2026-05-26 02:10:56 -07:00
Eric 31a90502c7 [eric] windows 1.1.61: restore AgenticCursor render on Windows now that the framer-motion shim makes motion.div safe 2026-05-26 01:42:05 -07:00
Eric bb2de72f6f [eric] windows 1.1.59: production webpack and framer-motion shim 2026-05-26 00:29:17 -07:00
Eric 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 2026-05-25 23:47:14 -07:00
Eric 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 2026-05-25 23:22:06 -07:00
Eric 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 2026-05-25 23:16:14 -07:00
Eric 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 2026-05-25 22:29:17 -07:00
Eric 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 2026-05-25 21:59:19 -07:00
Eric 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 2026-05-25 21:53:04 -07:00
Eric 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 2026-05-25 21:27:14 -07:00
Eric 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 2026-05-25 21:04:46 -07:00
Eric 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 2026-05-25 20:04:37 -07:00
Eric 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 2026-05-25 19:47:55 -07:00
Eric 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 2026-05-25 19:26:40 -07:00
Eric 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 2026-05-25 19:20:16 -07:00
Eric 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 2026-05-25 19:16:44 -07:00
Eric 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 2026-05-25 17:29:40 -07:00
Eric 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 2026-05-25 16:49:01 -07:00
Eric 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) 2026-05-25 16:27:39 -07:00
Eric 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 2026-05-25 16:06:58 -07:00
ciregenz bcabcca407 [eric] workflows: scheduling is a chat view (bounded height, composer docked) so it stops collapsing tiny 2026-05-25 12:51:47 -07:00
ciregenz c5d2fe512f [eric] workflows+dashboard: card width matches chat, Cmd/Ctrl+A select-all, compact scheduling + consistent cancel/title 2026-05-25 12:45:59 -07:00
ciregenz 846ee3bb01 [eric] workflows: auto-fit card height, drop stray step bands, fix active-poll 401 + view dead-ends 2026-05-25 12:22:25 -07:00
ciregenz 85646bc556 [eric] workflows: ignore saves card, scheduling chat typeable + default model, accent color, drop step box 2026-05-25 11:50:12 -07:00
ciregenz a137eba7c0 [eric] workflows: preview header divider, HITL-gold schedule button, model/mode/secs subtitle, slicker calendar 2026-05-25 11:16:30 -07:00
ciregenz db4b944b0c [eric] workflows: compact expandable steps in preview so schedule prompt + buttons stay visible 2026-05-25 10:32:12 -07:00
ciregenz 083d70def5 [eric] workflows: merge scheduled-tasks onto dev, re-home dashboard + fix backend imports 2026-05-24 23:41:53 -07:00
ciregenz 6cf2606666 [eric] merge: fold eric/cleanup abstraction refactor into dev (resolve 9, re-home edits) 2026-05-24 16:24:59 -07:00
ciregenz 5fb4d02648 [eric] ui: docked tour collapses to a minimal right-edge tab; restore serif font 2026-05-24 12:33:22 -07:00
ciregenz edec6e0f9c [eric] ui: onboarding skip-to-sidebar + global count; sans fallback; memoize hot selectors 2026-05-24 11:03:30 -07:00
ciregenz cd694ce6f1 [eric] usage: accurate tool calls + run time, drop empty-draft skew, quirky savings line 2026-05-24 02:15:19 -07:00
ciregenz 45fdfff3b7 [eric] actions: sort MCPs by connected+on, then on, then off (stable, no more jumping) 2026-05-24 01:55:50 -07:00
ciregenz c58708e3fd [eric] agents: unlock chat input when a send/edit fails (clear stuck 'running') 2026-05-24 01:50:27 -07:00
ciregenz 0bc2e1524e [eric] agentchat: plain-language memory/tools meter, hidden until it matters 2026-05-24 01:48:26 -07:00