Isaac Sanchez-Hawkins and Isaac Sanchez
da690b67a3
fix(electron): point issue links to current repo ( #1223 )
...
* fix(electron): point issue links to current repo
* fix(electron): point updater links to org repo
* fix(electron): align release publish owner
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:59:40 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
707ac6f408
fix(desktop): finish empty app scans ( #1222 )
...
* fix(desktop): finish empty app scans
* fix(desktop): keep app scan retries active after failures
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:58:16 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
0cfa37932e
fix(updates): compare prerelease versions correctly ( #1220 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:57:47 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
eb3f0e7f72
test(opencode): avoid duplicate WSL env assertion ( #1212 )
...
* test(opencode): avoid duplicate WSL env assertion
* test(opencode): assert WSL rejection directly
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:57:39 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
eb5b1de9b7
test(sync): shorten websocket fallback test ( #1211 )
...
* test(sync): shorten websocket fallback test
* test(sync): avoid duplicate fallback cleanup
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:57:27 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
614e9bbfbf
test(opencode): restore PATH after lifecycle tests ( #1210 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:57:14 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
f1317d7f71
fix(status): classify multiedit as editing ( #1209 )
...
* fix(status): classify multiedit as editing
* fix(status): preserve multiedit status phrase
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:57:04 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
291ff98f18
fix(files): match Windows prefixes case-insensitively ( #1208 )
...
* fix(files): match Windows prefixes case-insensitively
* fix(files): remove Windows paths case-insensitively
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:56:53 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
5e6207606c
fix(files): ignore tab paths outside root ( #1207 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:56:27 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
edd984c08f
fix(i18n): retry failed locale loads ( #1206 )
...
* fix(i18n): retry failed locale loads
* test(i18n): reset locale cache in retry test
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:56:17 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
733e1e2d21
fix(pwa): keep scoped shortcuts isolated ( #1205 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-12 10:55:31 +03:00
Bohdan Triapitsyn
c38727efc9
release v1.10.4
2026-05-09 01:18:33 +03:00
Bohdan Triapitsyn
3039645096
fix: improve Mini Chat session controls
...
Removed duplicate Mini Chat launch action from the closed-sidebar header
Enabled opening Mini Chat from draft sessions via the header PiP action
Added read-only context usage info to existing Mini Chat sessions
2026-05-08 23:58:02 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
15f2179274
fix(files): guard pending navigation ( #1172 )
...
* fix(files): guard pending navigation
* fix(files): avoid pending navigation re-entry
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:37:27 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
f524880c94
fix(terminal): track SSE opens per attempt ( #1171 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:34:03 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
c550d02dc8
fix(terminal): clean up idle websocket ( #1170 )
...
* fix(terminal): clean up idle websocket
* fix(terminal): simplify active reconnect state
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:27:27 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
26caa33319
fix(files): ignore stale text loads ( #1169 )
...
* fix(files): ignore stale text loads
* fix(files): clear loading on directory read error
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:18:15 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
d7f8045e82
fix(files): stop navigation when save fails ( #1168 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:16:18 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
9715b6c23c
fix(sync): preserve part update ordering ( #1167 )
...
* fix(sync): preserve part update ordering
* test(sync): wait for pipeline delivery
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:14:07 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
afe86a84b3
fix(git): dedupe status fetches by mode ( #1166 )
...
* fix(git): dedupe status fetches by mode
* test(git): assert reused status result
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:11:37 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
e4227c7f06
fix(settings): make nav resize keyboard accessible ( #1165 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 23:09:35 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
83ea6a70eb
fix(settings): mark active nav page ( #1164 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 19:52:13 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
1ef5917932
fix(ui): expose sidebar group collapse state ( #1163 )
...
* fix(ui): expose sidebar group collapse state
* fix(ui): keep sidebar group panel mounted
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 19:50:53 +03:00
Bohdan Triapitsyn
2459ce13ff
fix(chat): collapse model controls to icon-only on narrow widths
...
Bump @container/model-controls thresholds so labels disappear before
they would ellipsis-truncate. Hide order: agent (< 22rem), variant
(< 14rem), model (< 10rem). VS Code keeps its tighter thresholds.
2026-05-08 19:41:03 +03:00
Bohdan Triapitsyn
1a0f3bea8e
fix: allow PR worktrees from existing local branches
...
Use existing local PR branches instead of blocking worktree creation
Only block PR branches already checked out in another worktree
Clarify local branch validation messages across locales
2026-05-08 16:59:31 +03:00
Bohdan Triapitsyn
a591f63ed2
release v1.10.3
2026-05-08 16:26:07 +03:00
Wenqiang.Xu
3716deb16c
fix: use platform-aware UTF-8 locale fallback for PTY ( #1137 )
...
C.UTF-8 does not exist on macOS, causing the terminal to fall back
to ASCII encoding when LANG is unset. Use en_US.UTF-8 on macOS and
C.UTF-8 on Linux. Also set LC_CTYPE with the platform-appropriate
value (UTF-8 on macOS, C.UTF-8 on Linux) for additional safety.
2026-05-08 16:19:24 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
4b6fec774d
fix(skills): ignore stale repo scans ( #1158 )
...
* fix(skills): ignore stale repo scans
* fix(skills): clear stale repo identity
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 16:11:26 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
088237c606
fix(skills): ignore stale catalog scans ( #1157 )
...
* fix(skills): ignore stale catalog scans
* fix(skills): clear stale catalog identities
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 16:09:05 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
8f1e5c0085
fix(chat): make linked reference removal focusable ( #1156 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 16:05:22 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
817fafbe29
fix(chat): guard skill autocomplete tab ( #1155 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 16:01:33 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
98ef2e87a1
fix(chat): clear text selection timer ( #1154 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 16:01:13 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
28f7a52ec8
fix(git): forward status mode to runtimes ( #1153 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:57:25 +03:00
14c0bfe0bc
fix(sync): skip duplicate status events ( #1152 )
...
* fix(sync): skip duplicate status events
* test(sync): cover duplicate idle statuses
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com >
2026-05-08 15:56:18 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
c1c21fe340
fix(sync): track only trailing assistant streaming ( #1151 )
...
* fix(sync): track only trailing assistant streaming
* test(sync): cover streaming completion paths
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:47:56 +03:00
811aa50312
fix(input): ignore stale attachment reads ( #1150 )
...
* fix(input): ignore stale attachment reads
* fix(input): centralize attachment replacement
* fix(input): route queued attachment restores through store action
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com >
2026-05-08 15:47:46 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
01c19706f4
fix(queue): auto-send attachment-only messages ( #1149 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:41:36 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
da2145ae25
fix(files): ignore stale directory refreshes ( #1148 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:41:23 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
1d800366a0
fix(chat): refresh memoized action handlers ( #1147 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:36:35 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
006e84dbc4
fix(chat): make queued message removal focusable ( #1146 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:36:18 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
429ed0842e
fix(multirun): disable adding models at limit ( #1145 )
...
* fix(multirun): disable adding models at limit
* fix(multirun): remove redundant add guards
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:32:05 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
4ac5d7699a
fix(ui): allow escape to close mobile settings ( #1144 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:26:36 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
71e902fec6
fix(ui): ignore stale file search results ( #1143 )
...
* fix(ui): ignore stale file search results
* fix(ui): skip stale file search notifications
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:18:48 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
4a79af3fb7
fix(event-stream): cancel unavailable upstream bodies ( #1142 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:14:39 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
47fc6a4606
fix(sync): compare retry status metadata ( #1141 )
...
* fix(sync): compare retry status metadata
* fix(sync): compare status fields directly
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:12:08 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
4b65a16b12
fix(git): load sandbox db dependency in esm ( #1140 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:09:52 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
a3a82166f1
fix(sync): update request arrays immutably ( #1139 )
...
* fix(sync): update request arrays immutably
* test(sync): cover rejected question updates
---------
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:07:40 +03:00
Isaac Sanchez-Hawkins and Isaac Sanchez
9fb3e5d764
fix(electron): preserve desktop hosts when saving SSH instances ( #1138 )
...
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com >
2026-05-08 15:03:37 +03:00
Bohdan Triapitsyn
c827d6b8df
fix: restore messages after redo
...
Refetches session messages before applying redo
Aligns undo/redo navigation with OpenCode behavior
Keeps restored messages visible after unrevert
2026-05-08 14:53:48 +03:00
Bohdan Triapitsyn
d659929685
fix(chat): tighten auto-follow release thresholds
...
Bottom-zone threshold now scales with the scroll container's clientHeight
rather than window.innerHeight. The threshold is meant to mirror the empty
spacer at the end of the chat, but what users perceive as "the empty tail"
is relative to the visible chat area, not the whole viewport — on desktop
the chat is shorter than the window because of the input row below it.
This keeps the scroll-to-bottom button hidden until the user has actually
scrolled past the spacer they see, regardless of viewport size.
Wheel and touch release detection no longer treats every nested
[data-scrollable] as a blocker. The old check returned true for any
nested scrollable ancestor, so wheel-up over a code block already at its
own scrollTop=0 produced no effect — the inner element could not consume
the gesture and the outer chat refused to release auto-follow. The new
check returns true only when the nested element can actually scroll up
(scrollTop > 0); otherwise the gesture bubbles to the chat and releases
auto-follow as expected.
2026-05-08 14:31:16 +03:00