 ciregenzandClaude Fable 5
|
6c14b2d65b
|
[eric] dictation: no cursor means your composer, not a new chat (ENG-378)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
|
2026-08-20 22:22:48 -07:00 |
|
ciregenz
|
10bca6ba17
|
Revert "[eric] browser: a card the renderer parked is slow, not dead; parallel agents no longer ghost"
This reverts commit 6ed6206c7b.
|
2026-08-20 16:13:50 -07:00 |
|
 ciregenzandClaude Opus 5
|
6ed6206c7b
|
[eric] browser: a card the renderer parked is slow, not dead; parallel agents no longer ghost
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014wtspwSFzZmjCx9UNPAorQ
|
2026-08-20 15:50:55 -07:00 |
|
 ciregenzandClaude Opus 5
|
58e376496e
|
[eric] agents: an outage parks the turn and resumes when the provider answers; OAuth connects survive a backend restart
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014wtspwSFzZmjCx9UNPAorQ
|
2026-08-20 08:39:41 -07:00 |
|
ciregenz
|
fd14cb3bdb
|
[eric] apps: a preview whose dev server never binds shows an honest failure card with retry instead of spinning Starting preview forever (Alex's report)
|
2026-08-19 14:07:30 -07:00 |
|
ciregenz
|
9327475c3a
|
[eric] models: shipped defaults are Sonnet 5 (Anthropic) and GPT-5.6 Terra (OpenAI); explicit user picks untouched
|
2026-08-18 20:57:32 -07:00 |
|
ciregenz
|
2a9f1a7024
|
[eric] canvas: two same-instant app creations can never fully cover each other; the clash pushes down the column (ENG-346)
|
2026-08-18 19:43:08 -07:00 |
|
ciregenz
|
88d6c536cd
|
[eric] dictation: app-scoped by default with a Dictate-anywhere opt-in, and the Input Monitoring prompt moves from install time to first dictation use (ENG-341)
|
2026-08-18 19:10:08 -07:00 |
|
ciregenz
|
201216d166
|
[eric] canvas: new app cards anchor on the nearest on-canvas ancestor and docked rects stop being invisible obstacles (ENG-346)
|
2026-08-18 19:04:56 -07:00 |
|
ciregenz
|
9df2c56e70
|
[eric] canvas: the collapse tuck keys on OWNERSHIP, not slot possession; a later dock stealing the slot no longer strands the first card full-size, and only a user drag-out frees a card for good
|
2026-08-18 13:26:52 -07:00 |
|
ciregenz
|
bec387a56b
|
[eric] streaming: the gesture stamp starts at -Infinity; zero read as mid-gesture for the app's first 350ms
|
2026-08-18 11:35:47 -07:00 |
|
ciregenz
|
a98a99cbab
|
[eric] streaming: mid-gesture deltas ride the 1Hz buffer with a 250ms hand-off flush, so token commits stop landing inside drags (ENG-301)
|
2026-08-18 11:34:28 -07:00 |
|
ciregenz
|
ce2989ea1b
|
[eric] agents: CanvasCommand lets an agent move, collapse, tile, tidy and close its own cards after spawn (ENG-334)
|
2026-08-17 16:04:21 -07:00 |
|
ciregenz
|
d45e2b3731
|
[eric] browser: a failed navigation now fails loudly; a reused card that cannot move is replaced instead of answering from the old page
|
2026-08-17 15:48:49 -07:00 |
|
ciregenz
|
4ac484bf3b
|
[eric] workflows: manual runs surface as the real agent card, never the monitor pane, and the pill answer becomes a calm card (ENG-336)
|
2026-08-17 14:47:23 -07:00 |
|
ciregenz
|
3943e4feb2
|
[eric] browser: native auth popups register under their card so agents can see and drive the sign-in window (ENG-279)
|
2026-08-17 11:50:52 -07:00 |
|
ciregenz
|
2db49cc0e8
|
[eric] canvas: webview park and wake gain eviction margins and 10s cooldowns, ending the zoom-out reboot storm (ENG-228)
|
2026-08-16 21:15:05 -07:00 |
|
ciregenz
|
ab4d7b2db7
|
[eric] streaming: stream frames stop riding the dashboard socket and the backgrounded chat batches to 1Hz (ENG-329)
|
2026-08-16 20:52:51 -07:00 |
|
ciregenz
|
3acfd972d6
|
[eric] backend: real /api/health answers the reachability prober, ending the 401 console spam on every probe tick
|
2026-08-16 20:07:37 -07:00 |
|
ciregenz
|
a15466ff54
|
[eric] workflows: run rows carry their workflow's name; the title join failed for every deleted workflow (ENG-307)
|
2026-08-16 01:53:28 -07:00 |
|
ciregenz
|
96bdd222c6
|
[eric] canvas: an unrelated spawn no longer despawns another agent's revealed subagents; reconcile learns keep-not-create ids (ENG-304)
|
2026-08-16 01:53:06 -07:00 |
|
ciregenz
|
5bf4fe0046
|
[eric] canvas: autofocus frames the rendered card, not its collapsed footprint, so an expanded chat lands fully on screen (ENG-318)
|
2026-08-16 01:52:55 -07:00 |
|
ciregenz
|
47ee5d72d5
|
[eric] settings: SettingsWrite gets a real switch, refused at the route so the toggle is a boundary not a label (ENG-284)
|
2026-08-14 23:13:12 -07:00 |
|
ciregenz
|
0b2e4a6d25
|
[eric] apps: a refused delete no longer reports success, so the card stops vanishing while the app survives (ENG-309)
|
2026-08-14 16:20:48 -07:00 |
|
ciregenz
|
b548f3ba07
|
[eric] canvas: un-minimizing keeps your spot when it is free and reflows when it is not
|
2026-08-13 20:07:37 -07:00 |
|
ciregenz
|
6b3c93278f
|
[eric] dictation: the mic warms on hover so the first press of a launch is not cold (ENG-300)
|
2026-08-13 19:47:59 -07:00 |
|
ciregenz
|
ebcc81ef9a
|
[eric] browser: the caret is handed back once when the agent stops, not once per command (ENG-252)
|
2026-08-13 04:41:48 -07:00 |
|
ciregenz
|
0052e6fdec
|
[eric] ws: a session id we never issue now names its own producer instead of silently 404ing (ENG-205)
|
2026-08-13 04:29:33 -07:00 |
|
ciregenz
|
e2602f96de
|
[eric] state: the last seven data.X thunks reject on non-2xx, closing the ENG-277 payload class
|
2026-08-12 19:47:27 -07:00 |
|
ciregenz
|
c58d9e1657
|
[eric] ui: the input readability fix touches colour only, not the geometry of 74 controls (ENG-281)
|
2026-08-12 19:09:18 -07:00 |
|
ciregenz
|
5cf1b2ddff
|
[eric] state: the last two array-spread reducers are guarded at both layers (ENG-277)
|
2026-08-12 19:03:16 -07:00 |
|
ciregenz
|
33b1d9d8e3
|
[eric] test: exhaustive invariant suite for the exp.1 fixes; it found a multi-slash proxy URL bug on first run
|
2026-08-12 18:48:05 -07:00 |
|
ciregenz
|
b5f010fbb8
|
[eric] ui: every input inherits readable colours from the theme, so no field can be black on black (ENG-281)
|
2026-08-12 18:25:03 -07:00 |
|
ciregenz
|
471c0a9dd5
|
[eric] state: list thunks reject on non-2xx, so a failed fetch never resolves undefined into a reducer (ENG-277)
|
2026-08-12 16:59:34 -07:00 |
|
ciregenz
|
17653af557
|
[eric] state: a wrong-shaped API answer changes nothing instead of throwing inside immer (ENG-277)
|
2026-08-12 16:05:49 -07:00 |
|
ciregenz
|
f4bb5f566b
|
[eric] signin: a not-ready install refuses locally instead of landing on the cloud's install_id error
|
2026-08-12 15:32:22 -07:00 |
|
ciregenz
|
9a1dffe811
|
[eric] notifications: six real controls instead of two, and workflow alerts stop obeying the agent toggle
|
2026-08-12 15:14:52 -07:00 |
|
ciregenz
|
eb85fe428b
|
[eric] browser: agent keystrokes can no longer land in the user's composer (ENG-252)
|
2026-08-12 14:39:57 -07:00 |
|
ciregenz
|
e7f7079f9e
|
[eric] canvas: stress the closed-position cap under flaky-backend and long-life pressure; 200 cards x 30 strip-restore cycles lose nothing and the map stays bounded at 3000 churned cards
|
2026-08-12 13:21:29 -07:00 |
|
ciregenz
|
13de02f91a
|
[eric] canvas: the closed-position cap clears a real board (a 60-card board lost 10 spots at 50), with a guard that pins both the bound and the restore
|
2026-08-12 13:11:00 -07:00 |
|
ciregenz
|
eb21e6eb9b
|
[eric] canvas: closed-card positions are capped at 50 instead of remembered forever; the reconnect pill confirms it healed instead of just vanishing
|
2026-08-12 13:01:18 -07:00 |
|
ciregenz
|
df32505aca
|
[eric] compounding-growth pass: zOrders is pruned on every card removal, a model switch persists so the notice heals once, orphaned app workspaces are listable and deletable, and two browsers opened in the same millisecond no longer collide into one
|
2026-08-12 11:17:46 -07:00 |
|
ciregenz
|
0431844621
|
[eric] ui: every Alert in the app inherits the design tokens from one theme override, so stock Material blue cannot leak through any of the ~15 call sites
|
2026-08-12 10:35:22 -07:00 |
|
ciregenz
|
0b0a5d78ca
|
[eric] agents: a garbled dashboard file can no longer wipe the board; the sessions list fails loud instead of answering empty, and an unscoped fetch loses its delete authority
|
2026-08-12 02:10:41 -07:00 |
|
ciregenz
|
9ece424d1f
|
[eric] workflows: a running workflow gets a real agent card, so its browsers dock inside it and are reaped with it; the card goes when the run stops (ENG-256)
|
2026-08-12 01:28:54 -07:00 |
|
ciregenz
|
00624f230c
|
[eric] canvas: a card tiled to fill the screen hides the floating chrome the same way fullscreen does, so tidy and zoom stop sitting on its composer (ENG-259)
|
2026-08-12 01:25:30 -07:00 |
|
ciregenz
|
3ac55520d6
|
[eric] browser: the upload tool also finds inputs inside shadow roots and embedded frames, and a refused path names the exact staging copy that unblocks it (ENG-47)
|
2026-08-11 20:22:10 -07:00 |
|
ciregenz
|
ba97d141ee
|
[eric] browser: agents can attach a file to an upload field without the OS picker; the path is allow-listed backend-side so a hostile page cannot turn it into exfiltration (ENG-47)
|
2026-08-11 20:10:36 -07:00 |
|
ciregenz
|
45b133d82a
|
[eric] voice: mark the dev-only inject test seam's promise as intentionally floating
|
2026-08-11 17:58:30 -07:00 |
|
ciregenz
|
f5b9a8ae50
|
[eric] revert the ENG-252 focus-restore attempt: webview focus fires zero host DOM events, so no renderer-side hook can detect the steal (proven live)
|
2026-08-11 16:55:53 -07:00 |
|