Commit Graph
100 Commits
Author SHA1 Message Date
ciregenz 02cda4c47a [eric] security: mirror the executor sandbox gate into the public edge, with a drift test 2026-07-31 13:47:11 -07:00
ciregenz 44f9e48c2a [eric] security: close the Output executor sandbox escape via sys, dunders and module chains 2026-07-31 13:47:02 -07:00
ciregenz f3761f61eb [eric] security: contain workspace file paths with realpath and a whole-component boundary 2026-07-31 13:46:52 -07:00
ciregenz 98fa900dbf [eric] dock: shrink-to-fit down to a 14px floor, magnify to an absolute size, and pin the rail's ends like the macOS Dock 2026-07-31 02:02:56 -07:00
ciregenz 1fee20f425 [eric] dashboard: un-minimizing wakes a parked browser wherever the camera is, with a grace so the flight back can't re-park it 2026-07-31 01:32:25 -07:00
ciregenz b8a9793b65 [eric] distill: pin the touched file paths back onto a summary that paraphrased them away 2026-07-31 01:21:49 -07:00
ciregenz 8b72683a43 [eric] lint: drop the unused load_settings import in RunSupport 2026-07-31 01:17:14 -07:00
ciregenz e10bd2ed9d [eric] tool-results: middle-elide oversized spills so the tail (where the verdict lives) survives 2026-07-31 01:17:14 -07:00
ciregenz 71f480ecfd [eric] client-pool: stop hashing the compaction cutoff, it respawned the CLI every turn past 65% context 2026-07-31 01:17:14 -07:00
ciregenz 970144ce2b [eric] tools: ship the pruned built-in manifest by default, 4211 fewer prompt tokens per turn 2026-07-31 01:17:09 -07:00
ciregenz ee287534d0 [eric] dashboard: minimizing a browser card actually frees its renderer (it used to keep a live one) 2026-07-31 01:16:06 -07:00
ciregenz 2572f9ff45 [eric] voice: label the model catalog with the latencies actually measured, not guesses 2026-07-31 00:10:03 -07:00
ciregenz 0d826b5daa [eric] build: drop foreign-arch native prebuilds from the app, with a release gate to keep them out 2026-07-31 00:05:54 -07:00
ciregenz bce7e1f072 [eric] voice: Settings model picker with verified downloads; report fast whisper exits 2026-07-31 00:03:27 -07:00
ciregenz ddedbe4662 [eric] tiling: tiles stop beside the minimized rail instead of sliding under it 2026-07-31 00:00:54 -07:00
ciregenz eae4f067d9 [eric] tiling: a tiled chat is an open chat, so a collapsed one can't paint the white card 2026-07-31 00:00:51 -07:00
ciregenz b5e205160d [eric] settings: disconnect a subscription provider from the UI, verified against 9router not assumed 2026-07-31 00:00:43 -07:00
ciregenz acfc6eb8e7 [eric] palettes: portal Cmd+K and Cmd+F to a body top layer so cards stop painting over them 2026-07-30 22:07:26 -07:00
ciregenz 97ddc89aa9 [eric] voice: tap-to-dictate stops itself when you stop talking instead of taping silence 2026-07-30 22:00:53 -07:00
ciregenz 664608b4a8 [eric] voice: warm whisper at boot, unload when idle, and stop guessing the server port 2026-07-30 21:49:16 -07:00
ciregenz 0c201eb2a2 [eric] tiling: one writer owns a tiled card's rect, so a stale camera can't freeze or whiten it 2026-07-30 20:45:54 -07:00
ciregenz d9c2b728d5 [eric] tiling: one macOS rule set for every card type, Settings and Workflows windows included 2026-07-30 19:31:21 -07:00
ciregenz 42ef6be571 [eric] canvas: right-drag marquee-selects the empty canvas again; the menu waits for a click-only release 2026-07-30 19:31:13 -07:00
ciregenz 401120094e [eric] browser: a tab dragged out of an agent's card stays that agent's browser, so it isn't spawned twice 2026-07-30 18:49:03 -07:00
ciregenz 1e2022d1cb [eric] browser: show a collapsed agent's browser as a frozen shot, not a capture that never lands 2026-07-30 18:49:03 -07:00
ciregenz 96451de87e [eric] help: ground the help chat in real product knowledge instead of a hardcoded prompt 2026-07-30 18:29:15 -07:00
ciregenz 2385a348d5 [eric] shortcuts: drop the global Cmd+L that wiped a transcript with no confirm and collided with the composer shortcut 2026-07-30 18:19:18 -07:00
ciregenz c786a849bc [eric] canvas: keep guest pages owning their plain wheel while host content follows scroll focus 2026-07-30 18:08:06 -07:00
ciregenz 8d878db589 [eric] canvas: make cmd/ctrl+wheel always zoom, and stop cards owning the plain wheel forever 2026-07-30 17:35:32 -07:00
ciregenz ce7939b94d [eric] web: race the free search engines so a dead one costs the hedge delay once, not 8s on every launch 2026-07-30 17:20:41 -07:00
ciregenz 6c6fcd96c2 [eric] cards: collapse a draft chat to the glass pill like every other card, not the full white card 2026-07-30 17:18:43 -07:00
ciregenz b5a832a99c [eric] dock: shrink tiles to fit like the macOS Dock, scroll only past the 18px floor 2026-07-30 17:18:27 -07:00
ciregenz dfa5dbd636 [eric] web: send a bot wall to our own Chromium instead of handing the model a challenge screen 2026-07-30 16:52:27 -07:00
ciregenz d5ab082019 [eric] spaces: make the strip scrollable so off-screen spaces are reachable (wheel, drag, chevrons, keep-active-in-view) 2026-07-30 16:44:44 -07:00
ciregenz 108ef03451 [eric] web: let Startpage say 'nothing matched' and 'I refuse' differently so a closed engine stops costing its budget 2026-07-30 16:35:51 -07:00
ciregenz 37100e9b5c [eric] web: ask the archive for the raw snapshot so we stop returning its calendar toolbar as the article 2026-07-30 16:29:24 -07:00
ciregenz a78d6276c0 [eric] web: extract the article instead of the nav bar, and stop calling a dead domain a security refusal 2026-07-30 16:25:05 -07:00
ciregenz 119e4a916e [eric] web: stop paying a dead search engine its full tier budget on every query, and let a 403 still try the lite frontend 2026-07-30 16:24:58 -07:00
ciregenz 29f4c26a35 [eric] dock: swap the hard blue selection outline for the rail's accent ring 2026-07-30 16:16:50 -07:00
ciregenz 318957b39c [eric] dashboard: minimize Settings and the Workflows hub to the rail instead of closing them 2026-07-30 16:16:50 -07:00
ciregenz 77b3595264 [eric] context menus: portal the card menu to body, widen the row schema, cover every shell surface 2026-07-30 15:13:32 -07:00
ciregenz b8cfaff690 [eric] web: stop the fetch cascade on a body with no text layer instead of buying a paid summary of nothing 2026-07-30 14:55:56 -07:00
ciregenz 1172fb07c5 [eric] web: say bot challenge, not rate limit, since retrying the same query never clears it 2026-07-30 14:40:48 -07:00
ciregenz 65430e1234 [eric] web: fall back to the Wayback Machine when the live page is dead or walled 2026-07-30 14:40:48 -07:00
ciregenz 88abab0c1c [eric] web: extract PDF text and refuse other binaries instead of dumping raw bytes into the model 2026-07-30 14:40:48 -07:00
ciregenz f30677e255 [eric] web: move the search engines into tools/search so the folder stays under the item cap 2026-07-30 14:34:32 -07:00
ciregenz d84f2d5301 [eric] web: add Startpage as a second independent search engine so one bot challenge cannot close free search 2026-07-30 14:34:29 -07:00
ciregenz 356f7a4ea1 [eric] minimized: one glass rail for apps and browsers, real thumbnails, no live webview behind a parked card 2026-07-30 14:31:30 -07:00
ciregenz 629e58a59b [eric] window-controls: fan all three arc lights by data-light, green was stacked on red and ate the close click 2026-07-30 14:31:24 -07:00
ciregenz 559bbbe768 [eric] web: send the keyless search rungs through a Chrome-fingerprint client (measured 4/8 -> 8/8 on DuckDuckGo) 2026-07-30 14:28:49 -07:00
ciregenz 3ea74d67a5 [eric] web: bound the search/fetch cascade with one wall-clock deadline so the later tiers are reachable 2026-07-30 14:21:27 -07:00
ciregenz 600c04dd02 [eric] history: stop losing chats (merge live sessions, drop agent-spawned children, sort by last activity, never render a blank row) 2026-07-30 12:59:45 -07:00
ciregenz 7fb3b85a64 [eric] dock: show the favicon INSTEAD of the browser glyph (it used to sit behind it), glyph returns if the favicon fails 2026-07-30 12:03:29 -07:00
ciregenz 75bc138601 [eric] dashboard: dock Settings opens as a canvas window (shared card chrome), not a modal 2026-07-29 21:12:07 -07:00
ciregenz 162eacc543 [eric] notes: delete the sticky-note feature end to end 2026-07-29 20:32:24 -07:00
ciregenz c10db35ebc [eric] history: move chat history from the dock to the top island and make it global (was filtered to the current dashboard) 2026-07-29 20:17:17 -07:00
ciregenz fac02bfccc [eric] shell: uncrop the spawn-pill shadow, shortcut tooltip on the composer, always-visible glass title bubble (incl. fullscreen), and collapsed cards show a plain-text answer 2026-07-29 20:13:56 -07:00
ciregenz 5b9d0dcce6 [eric] dock: drop the New-chat tile (the always-present spawn pill already owns that action) 2026-07-29 19:59:27 -07:00
ciregenz 776f4068f3 [eric] dock: Applications lists YOUR OpenSwarm apps (was the machine's /Applications via a launcher whose click IPC never existed) 2026-07-29 19:58:02 -07:00
ciregenz e321a35894 [eric] voice: drop whisper --convert (demanded ffmpeg on PATH at boot; Finder apps have none = dictation dead in prod), writable cwd, drain stderr, 60s cold-load budget 2026-07-29 16:51:30 -07:00
ciregenz 04f66b2cd0 [eric] hygiene: gitignore haptics node-gyp build output (mirrors mouseclamp) 2026-07-29 16:38:32 -07:00
ciregenz 11ea778884 [eric] tests: update providerUsage tests to the landed 150-title cap + convo char budget (4 green) 2026-07-29 16:38:32 -07:00
ciregenz f0229bef50 [eric] tests: land the 3 stranded browser capacity-retry tests from the windows-churn batch (64 green) 2026-07-29 16:38:32 -07:00
ciregenz 2ee25f80fc [eric] dashboard: cap live app webviews (closest-to-center wins) to bound memory 2026-07-29 11:22:27 -07:00
ciregenz cc24f5adaf [eric] crash-safety: cap parallel CDP detach at 10 concurrent (unbounded could flood the debugger host at pathological card counts and leave one attached at unmount) 2026-07-29 01:05:33 -07:00
ciregenz 8fedff40c1 [eric] efficiency: preflight classifier stamps cooldown whenever it runs (was re-firing Haiku every turn on concrete prompts); remove warm_prompt_cache (billed N no-op requests/dashboard-mount, warmed nothing: wrong prefix, below cache floor, no cache_control) 2026-07-29 01:01:26 -07:00
ciregenz b1f0f5b74e [eric] perf: mass-delete parallel-detaches browsers too (removeBrowserCardsCleanly); flat latency, same crash-safe ordering 2026-07-29 00:53:52 -07:00
ciregenz 103a3af31a [eric] perf: parallelize browser CDP detach on dashboard switch (serial added ~72ms/browser = 1.4s lag on a 20-card switch); views stay serial for GPU-surface release 2026-07-29 00:51:43 -07:00
ciregenz cd7399b215 [eric] crash: orphan-prune serializes app-card teardown too (deleting several apps from the Views page ripped their webviews out in one pass = same GPU SIGSEGV) 2026-07-28 23:30:42 -07:00
ciregenz 028d9dcd62 [eric] crash: quiesce+detach outgoing webviews before dashboard-switch resetLayout (it unmounted every app/browser webview in one frame w/ CDP attached = GPU/browser SIGSEGV, the 'navigate away kills the app' self-quit) 2026-07-28 23:24:21 -07:00
ciregenz 4c483051b4 [eric] crash: serialize browser-card teardown on mass delete (was ripping all webviews out in one frame = GPU/browser-process SIGSEGV, the mass-delete self-quit); matches the already-safe view path 2026-07-28 23:11:53 -07:00
ciregenz df0e4a2393 [eric] merge eric/onboarding into eric/dev; version 1.6.0 2026-07-28 22:20:34 -07:00
ciregenz b1233da12c [eric] tiles: chats also exit the tile on edge-drag; tile-menu runway shrunk to the 8px gap (it was overlaying the green button and eating its clicks) 2026-07-28 21:21:55 -07:00
ciregenz 7a74443b07 [eric] tiles: dragging an edge of a tiled browser/app exits the tile and resizes from its exact spot (macOS-style) 2026-07-28 21:17:31 -07:00
ciregenz 96a3e51c83 [eric] voice: aurora rebuilt as six interleaved alternating-hue wisps + single-hue base glow (adjacent same-order lobes and the L-to-R strip were the segmentation) 2026-07-28 20:53:20 -07:00
ciregenz 0469cfe74b [eric] voice: aurora lobes overlap heavily in one tight hue family (wide-spread hues in separated lobes read as rainbow patches) 2026-07-28 20:49:56 -07:00
ciregenz ad8d9ca240 [eric] voice: mic tap stops an active recording (async start ate the tap's press-end); composer mic tooltip shows the real dictation combo, not F5 2026-07-28 20:46:31 -07:00
ciregenz ec9b576615 [eric] voice+onboarding: aurora hues widened/jittered/desaturated (three tight bands read segmented); prep prompt forbids fabricating specifics when evidence is empty 2026-07-28 20:44:41 -07:00
ciregenz 9ac91b94e4 [eric] ui: tile menu gets a hover runway + longer grace (vanished mid-approach); text size range widened to 0.8-1.35 (Tiny to Largest) 2026-07-28 19:04:41 -07:00
ciregenz 96c4639bdf [eric] composer: placeholder is 'Ask me to do anything...' (dropped the 'sir' bit) 2026-07-28 18:52:11 -07:00
ciregenz 5d0bbb553c [eric] design: Inter (bundled variable font) is the app-wide UI face; the serif-leaning stack read bookish, Inter is the Linear/Figma/GitHub-proven professional standard 2026-07-28 18:47:47 -07:00
ciregenz f5908610d6 [eric] design: settings surface uses system sans throughout (serif brand face read bookish in dense panes; this is the Linear/Claude settings feel) 2026-07-28 18:41:40 -07:00
ciregenz 62521419df [eric] design: settings de-vibe pass (usage $0.64 + continuous bars over pixel blocks, tools rows densified w/ one-line descriptions, skills form labels dropped, command chips unified neutral) 2026-07-28 18:37:24 -07:00
ciregenz 3b68101b42 [eric] shell: pre-React boot paint from persisted theme (reload flashed a flat white frame for ~400ms before the wash mounted) 2026-07-28 18:31:01 -07:00
ciregenz d05afa04e0 [eric] design: history palette gets date groups + icon tiles + rounded hover rows (Raycast grammar), settings toggles never wrap, workflows empty state explains itself 2026-07-28 18:21:09 -07:00
ciregenz 37f7a7a8db [eric] dashboard: docked APPS suppress their tether too; tiled geometry never transitions (occluded-window transitions pin at t=0 and freeze tiles); tiles + dock measures re-apply on window reveal 2026-07-28 18:16:01 -07:00
ciregenz 224dc04696 [eric] theme: stock wallpaper is a designed contrasting gradient (canvas + shell + onboarding stage), never flat white when no accent picked 2026-07-28 18:16:01 -07:00
ciregenz 70eb3cd846 [eric] dashboard: tiles start beside the dock rail (macOS model, covers half/quarter zones) + shell frame wears the accent wash always so the window edge is never white 2026-07-28 17:35:37 -07:00
ciregenz 35a281f4ad [eric] voice: bundle per-arch whisper-server into the mac build (pinned v1.7.6, static + non-system-dylib gate; model stays the proven first-run download) 2026-07-28 17:27:05 -07:00
ciregenz 37bd642a48 [eric] voice: rebindable dictation shortcut (Settings recorder chip, live rebind across all 3 hotkey tiers; F5 default dropped since macOS routes it to Siri; voice_hold_to_talk now actually persists) 2026-07-28 17:27:05 -07:00
ciregenz c8de032306 [eric] dock: dropping a browser/app on a collapsed chat pill expands the chat (used to park the card at -100000 = looked like the drop did nothing) 2026-07-28 17:12:04 -07:00
ciregenz ab102bb857 [eric] dashboard: expand-chat mount deferred past the click paint (INP 504ms -> ~5ms sync) 2026-07-28 15:55:40 -07:00
ciregenz 3239ff8a47 [eric] dashboard: no tether arrow from a minimized chat pill (its live-shot already shows the link) 2026-07-28 15:55:40 -07:00
ciregenz aeb2b3fb14 [eric] dashboard: fullscreen chat docks the real browser (slot in full view, posEl-aware tile applier w/ live camera tracking, dock re-measure on slot moves, no dupe embed) 2026-07-28 15:55:40 -07:00
ciregenz bf49c2c528 [eric] win: sign the bundled claude.exe (AV-quarantine class) + require-signed gate + post-sign smoke 2026-07-28 15:49:59 -07:00
ciregenz ac0f575d34 [eric] health: boot-time bundled-CLI integrity check rides the login-health pill with repair guidance 2026-07-28 15:49:59 -07:00
ciregenz 0d9e80d502 [eric] browser: capacity-retry the model call + classify the catch-all (free-pool 429 raw-card leak sealed) 2026-07-28 15:49:59 -07:00
ciregenz 2a42a1c460 [eric] agents: AV-repair card for missing CLI, stderr tail on masked exit-1 cards, group-unwrap in the fatal path 2026-07-28 15:49:59 -07:00
ciregenz e16255e06a [eric] agents: classify bundled-CLI-missing errors + unwrap exception groups to the real cause 2026-07-28 15:49:59 -07:00
ciregenz 8d98c8f24c [eric] dock: slot height off percentages (nested-wrapper resolution pushed it out of the card), sub-agent browser tether also suppressed while docked 2026-07-28 15:11:41 -07:00