Commit Graph
963 Commits
Author SHA1 Message Date
c1948fe691 Adds an option to transcribe server STT audio when stopping voice input. (#1219)
* feat(voice): add transcribe-on-stop recognition option

* fix(voice): tighten transcribe-on-stop cleanup

* fix(voice): address transcribe-on-stop review feedback

* fix(voice): scope transcribe-on-stop to server STT

---------

Co-authored-by: Konstantin Zolin <kzolin@alfabank.ru>
Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
2026-05-13 15:30:25 +03:00
chutasticandBohdan Triapitsyn 9347f97a98 fix(ui): persist selection-store state across reloads (#1229)
* fix(ui): persist selection-store state across reloads

* fix(ui): resolve selection store persistence build

---------

Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
2026-05-13 15:06:20 +03:00
11e5ab93a9 fix(quota): guard remaining usage percent (#1242)
* fix(quota): guard remaining usage percent

* test(quota): cover non-finite usage percents

* fix(ui): clean up virtual scroll frame

---------

Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
2026-05-13 14:51:46 +03:00
Bohdan Triapitsyn eb8b9ed715 perf(ui): cache turn window model and fix virtualized scroll-to-bottom
- Cache turnWindowModel per sessionId to skip rebuild on re-visit
- Compensate scroll position after virtualizer measurement settles
  (RAF-based) so large uncached sessions open at bottom, not top
- Add MessageListHandle.scrollToBottom via virtualizer API
2026-05-13 14:28:29 +03:00
Bohdan Triapitsyn 14357257ae perf(ui): migrate icons to SVG sprite system
Replace @remixicon/react with a shared Icon component that renders
via <use href> references to a single hidden SVG sprite. This reduces
DOM node count by replacing inline SVGs with lightweight references.

- Create Icon component with sprite injection (packages/ui/src/components/icon/)
- Migrate all 164 files from @remixicon/react to Icon component
- Auto-generate sprite data from remixicon bundle (scripts/generate-icon-sprite.mjs)
- Add bun run icons:generate to package.json
- Move @remixicon/react to devDependencies
- Add icon usage instructions to theme-system skill
2026-05-13 13:26:35 +03:00
Jake b4cbd7f0d6 Fix: archived session bulk delete for VS Code extension (#1256)
* fix/archived sessiongroup bulk delete

* Remove in line comment

Signed-off-by: Jake <101855602+jjdubski@users.noreply.github.com>

* small fix for lint

* indentation fix, restore to original

---------

Signed-off-by: Jake <101855602+jjdubski@users.noreply.github.com>
2026-05-13 11:12:30 +03:00
lyxxxandBohdan Triapitsyn 462cebdf95 Fix(queue): auto-send queued messages FIFO (#1254)
* fix(queue): auto-send queued messages FIFO

* test(queue): cover FIFO queued auto-send payload

* test(queue): stub config store in auto-send tests

* fix(test): complete Agent type in queued auto-send test

---------

Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
2026-05-13 10:56:55 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 58c6a22036 fix(ui): default Button type to button (#1252)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-13 10:36:49 +03:00
kjhqandartac f059bc8dd6 fix: remove GitHub hardcoding and generalize for non-GitHub git providers (#1216)
* fix: remove GitHub hardcoding and generalize for non-GitHub git providers

* fix: guard SSH path extraction against missing colon separator

---------

Co-authored-by: artac <artac@artacs-MacBook-Pro.local>
2026-05-13 10:19:31 +03:00
kostazolandKonstantin Zolin 51c4ec693b Fix (#1218)
Co-authored-by: Konstantin Zolin <kzolin@alfabank.ru>
2026-05-12 14:49:15 +03:00
Bohdan Triapitsyn d587ed7542 perf(ui): enable session timeline virtualization and defer heavy tool content
Virtualize message timeline at 5+ turns. Stabilize virtualizer keys,
add prepend-aware scroll compensation for "Load older", and defer
expanded tool bodies by one animation frame. Tighten initial turn
window to 7 turns for faster session open.
2026-05-12 14:44:53 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 2b514e4cb9 test(input): restore FileReader mock (#1200)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:11:34 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 12160a101d fix(git): label stash icon buttons (#1199)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:11:12 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez f7c5144c62 fix(sync): settle failed attachment reads (#1193)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:09:31 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez f4ec7d6c1b fix(ui): prevent duplicate long press timers (#1192)
* fix(ui): prevent duplicate long press timers

* fix(ui): clear long press on touch cancel

---------

Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:07:40 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez b94afbc6ef fix(opencode): unref provider tracker interval (#1191)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:07:24 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez de72811cf1 fix(ui): support legacy PWA media listeners (#1190)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:07:04 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 7e1801e97a fix(push): mark visibility hidden on pagehide (#1189)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:06:51 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez bb5a6fb83b fix(sessions): update changed share URLs (#1184)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:05:54 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez e50a484633 fix(sync): drop orphan session parts (#1183)
* fix(sync): drop orphan session parts

* fix(sync): guard missing part cache

---------

Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:05:37 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 7506b736dd fix(git): label branch rename buttons (#1239)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:03:26 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez ebf87f64dc fix(ui): label session rename buttons (#1238)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:02:53 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 109aecf3de fix(sync): advance sidebar recency after streams (#1232)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:01:20 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 65c54411de fix(sync): fetch sessions in active directory (#1231)
Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:01:10 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 416a11dcce fix(ui): recover from corrupt chunk reload markers (#1230)
* fix(ui): recover from corrupt chunk reload markers

* test(ui): clarify chunk recovery assertions

---------

Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:00:58 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez 75ad1d31b5 fix(tasks): avoid weekday checkbox double toggle (#1225)
* fix(tasks): avoid weekday checkbox double toggle

* fix(tasks): preserve weekday hover affordance

* fix(tasks): remove redundant weekday hover class

---------

Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:00:21 +03:00
Isaac Sanchez-HawkinsandIsaac Sanchez e0ef318751 fix(ui): clamp text loop index (#1221)
* fix(ui): clamp text loop index

* fix(ui): report clamped text loop index

---------

Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
2026-05-12 11:00:02 +03:00
Isaac Sanchez-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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
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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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-HawkinsandIsaac 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
Isaac Sanchez-HawkinsandIsaac 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-HawkinsandIsaac 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