Commit Graph
16002 Commits
Author SHA1 Message Date
Jinwoo Hong c6ff9751fa Hide Codex worker sessions from history (#6062) 2026-06-22 05:22:06 -04:00
Jinwoo HongandOrca a99be09ada Remove mobile settings enable toggle (#6070)
Co-authored-by: Orca <help@stably.ai>
2026-06-22 01:19:23 -07:00
Jinwoo HongandOrca 24000561b4 Classify Claude CLI usage shell failures (#6065)
Co-authored-by: Orca <help@stably.ai>
2026-06-22 00:58:32 -07:00
Jinjing b7a2488b8a Prevent truncation of long workspace and branch names in sidebar (#6058)
Long branch names and workspace titles were getting truncated, hiding
important identity context from developers.

* Add a dynamic `TruncatedSidebarLabel` component that measures text
  overflow and renders a tooltip only when the text is actually truncated.
* Use the new label for branch names in `WorktreeCard`, disabling its
  nested tooltip when parent hover details are active to prevent conflict.
* Update `WorktreeCardDetailsHover` to use `break-words` instead of
  truncating, ensuring full branch and workspace identities wrap and remain
  fully readable in the details panel.
2026-06-22 00:44:06 -07:00
Jinjing e2b87dd864 Fix hold-to-talk dictation release matching on keyup (#6056)
Track the specific key and modifier identities from the initial keydown
to construct a robust release matcher. This ensures hold dictation stops
reliably on keyup, even if modifier state flags have already dropped
or if keys are released in a different order.
2026-06-22 00:31:51 -07:00
JinjingandOrca bed2c00df8 fix(i18n): translate new worktree branch deletion messages for v1.4.91 (#6061)
Co-authored-by: Orca <help@stably.ai>
2026-06-22 00:31:29 -07:00
Lesley Murfin a24c91de0d fix(terminal): don't apply native-Windows ConPTY cursor stripping to remote serve PTYs
Closes #6008
2026-06-22 00:00:44 -07:00
Jinjing c139c704af Add visible PR comment queue action (#6057) 2026-06-21 23:59:29 -07:00
Jinjing bbfaee424b Rank Settings search results by relevance (#6050)
* Rank settings search results by relevance

* Keep Settings search content matching ranked entries

* rm design doc
2026-06-21 23:54:06 -07:00
c6d11efbf2 Make PR comments sidebar easier to triage and read (#5996)
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: brennanb2025 <brennankbenson@gmail.com>
2026-06-21 23:49:43 -07:00
Jinwoo Hong a2e0bbc5f6 Fix early PTY startup output races (#6015) 2026-06-22 02:48:45 -04:00
Jinwoo Hong 52f45b3559 Handle literal Codex hook trust keys (#5872) 2026-06-21 23:33:57 -07:00
bfb778570a feat(tabs): redesign tab splits and terminal pane discoverability (#5927)
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: brennanb2025 <brennankbenson@gmail.com>
2026-06-21 23:09:01 -07:00
Jinjing 0aedaf2d69 Fix agent hooks CLI runtime client test
Exercise the agent hooks CLI test through main() with a mocked RuntimeClient class so typecheck no longer relies on a partial object cast.
2026-06-21 22:51:44 -07:00
Brennan BensonandOrca 88da1808f7 Prevent stale sleeping agents from resuming (#6018)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 22:39:09 -07:00
Jinjing fc254deef5 Default new worktree card style on for fresh profiles (#6047)
Enable `experimentalNewWorktreeCardStyle` by default on new profiles where
onboarding is open, or when creating a brand-new config file.

- Avoids visual disruption for existing users who already completed
  onboarding by keeping the old style active for them.
- Preserves explicit user opt-outs during migrations and CLI updates.
- Ensures the offline CLI handler mirrors this logic when creating the
  initial configuration file before the desktop client loads.
2026-06-21 22:35:48 -07:00
OrcaWinandNeil c1e071870b Dispose worktree change refresh queues (#6040)
Co-authored-by: Neil <neil@stably.ai>
2026-06-21 21:58:15 -07:00
Maplumeandbrennanb2025 2e03b14cc3 fix(i18n): correct Chinese MT errors and translate Settings panel strings (#5915)
Co-authored-by: brennanb2025 <brennankbenson@gmail.com>
2026-06-21 21:23:36 -07:00
Brennan BensonandOrca 6c93d311cf Keep workspace board above the status bar (#6035)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 21:22:22 -07:00
Jinwoo Hong a8feafe92a Fix mobile file tab close sync
Close mobile session file tabs through the underlying editor file so desktop stops republishing closed docs/files.
2026-06-21 19:41:48 -07:00
Jinwoo Hong d9b2d89406 Fix Windows NeoVim open-in launcher (#6026) 2026-06-21 21:57:33 -04:00
Brennan BensonandOrca 36bdd06aa8 Prevent duplicate startup command echoes (#6023)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 18:51:44 -07:00
Brennan BensonandOrca 8228155e4d Improve preserved branch cleanup after squash merges (#6014)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 18:48:59 -07:00
OrcaWinandNeil 2ed4346c2d Coalesce renderer worktree change refreshes (#6020)
Co-authored-by: Neil <neil@stably.ai>
2026-06-21 18:41:12 -07:00
Brennan BensonandOrca 1b5c4738d2 Prevent duplicate agent resume tabs after wake (#5882)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 18:38:41 -07:00
Brennan BensonandOrca 8c2a34c39d Align folder workspace sidebar indentation (#6019)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 18:34:48 -07:00
Jinwoo Hong 551b370085 Fix WSL agent session history (#6010) 2026-06-21 17:23:42 -07:00
Trevin Chowandbrennanb2025 4afcc24819 Tighten sidebar card vertical padding for denser layout (#4762)
Reduce WorktreeCard top padding 6px→5px and bottom 8px→6px so more
cards fit on screen. Uses Tailwind v4 dynamic spacing (pt-1.25).

Co-authored-by: brennanb2025 <brennankbenson@gmail.com>
2026-06-21 17:03:09 -07:00
Brennan BensonandOrca fe8fe16c83 Preserve agent settings when sleeping sessions resume (#5916)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 16:44:58 -07:00
Brennan BensonandOrca a856c7d6b6 Rename Orca Linear agent skill (#5855)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 16:16:37 -07:00
Brennan BensonandOrca d517bb7250 Restore agent history after worktree renames (#6000)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 15:48:33 -07:00
Jinwoo HongandOrca 32e6ab7655 Fix mobile workspace list parity (#6001)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 15:11:55 -07:00
Jinwoo HongandOrca 56688d8e20 fix: stop hold dictation on shortcut release (#6003)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 14:51:05 -07:00
Jinwoo HongandOrca 67fe4bd780 Fix manual project ordering for identity headers (#5933)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 13:23:21 -07:00
Jinwoo HongandOrca c01c0462ae Refresh workspace PR badges after external PR creation (#5997)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 13:19:24 -07:00
Jinwoo HongandOrca 530f98d945 Improve Claude usage refresh fallback behavior (#5995)
* Match CodexBar Claude usage fallback behavior

Co-authored-by: Orca <help@stably.ai>

* Remove external tracker references from Claude usage changes

Co-authored-by: Orca <help@stably.ai>

* Allow CLI fallback when Claude Keychain is unavailable

Co-authored-by: Orca <help@stably.ai>

* Stabilize updater prerelease promotion test

Co-authored-by: Orca <help@stably.ai>

---------

Co-authored-by: Orca <help@stably.ai>
2026-06-21 13:10:25 -07:00
Brennan BensonandOrca 2157a8ea5b Remove duplicate automation worktree badge (#5993)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 12:23:02 -07:00
Brennan BensonandOrca 10056fa21e Make worktree hovercards easier to read (#5871)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 12:13:14 -07:00
Brennan BensonandOrca 47b8bf7562 Keep compact agent rows steady for screenshot links (#5863)
Co-authored-by: Orca <help@stably.ai>
2026-06-21 12:05:20 -07:00
Jinjing 6a29f29adb Fix folder workspace file connection resolution (#5973) 2026-06-21 02:52:51 -07:00
Jinjing f75f52591f Resolve path-specific connection IDs in mixed folder workspaces (#5971)
Determine the correct SSH connection ID for a file by matching its path
against the child repositories inside a folder workspace. This allows
reading files in mixed local and SSH folder workspaces, where a single
global connection ID cannot be resolved.
2026-06-21 02:44:59 -07:00
Jinwoo HongandOrca 62f1394b44 fix: refit terminals after bulk mobile restore (#5962)
Co-authored-by: Orca <help@stably.ai>
2026-06-20 23:35:37 -07:00
Jinjing 7a04b1e26f Add unread badge overlay to status glyphs in new card style (#5953)
* Add overlay unread badge to status glyphs in new card style

Overlay an amber dot badge on status indicators, branch icons, and
review status glyphs when the new card style and unread state are active.
This avoids widening the status lane or relying on a separate bell icon,
keeping the design compact and preserving title row alignment.

* Remove duplicate shrink-0 class in WorktreeCard

The outer container already applies 'shrink-0', making the duplicate
class inside the conditional branch redundant.
2026-06-20 21:01:24 -07:00
Jinjing 954fa0a65e Prevent auto-reloading diff views when status area shifts (#5951)
* Avoid auto-reloading single-file diff tabs if their status row has
  moved to a different area (e.g. from unstaged to staged).
* Prevent auto-reloading combined uncommitted diffs when they are
  backed by an uncommitted entries snapshot.
* This preserves the open tab's original diff context as staging and
  commit status changes, preventing useful context from being lost.
2026-06-20 18:52:04 -07:00
Jinjing 308da355bc Unify pull request draft title resolution (#5943)
Extract title resolution into a dedicated helper to ensure both inline
and dialog pull request creation flows consistently fall back to
a normalized and humanized branch slug when no eligibility title is
available.

- Normalize remote refs before humanizing branch slugs
- Pre-populate dialog titles when eligibility title is missing
- Update E2E tests to expect pre-populated draft titles
2026-06-20 18:47:39 -07:00
Jinjing 26493072c1 Persist AI PR generation state across worktree switches (#5952)
Connect the ChecksPanel PR draft generation to the global generation
slice, aligning its behavior with SourceControl. This allows detail
generation to continue in the background when navigating away or
switching worktrees, and guarantees that generated fields, terminal seeds,
and branch-preparation push requirements are restored on remount.
2026-06-20 18:16:50 -07:00
Jinjing 89eb4b3f55 fix: show merged PR for current branch head (#5877) 2026-06-20 17:56:38 -07:00
Jinjing 14eb4091fd Move workspace options to the top of worktree context menu (#5948)
Move the "Update" and "Move to Status" options under a new "Workspace"
section header at the very top of the worktree context menu. This
improves usability and groups workspace-management actions together.
2026-06-20 17:51:03 -07:00
Jinjing 16347ab799 Handle clean local merges when hosting provider reports conflicts (#5942)
When the hosting provider (GitHub) reports conflicts but a local merge
simulation is clean, we now mark the conflict summary as locally clean.

This state is surfaced in both the desktop and mobile sidebars with a
clear explanation and a copyable set of commands to trigger a remote
mergeability recalculation via an empty commit and push.
2026-06-20 17:08:58 -07:00
Jinjing fe7cf01c51 Track update check attempts and handle stalls (#5904)
* Track update check attempts to prevent stale races and handle stalls

- Sequence each update check with an attempt ID to prevent stale event handlers (like async changelog fetches) from overwriting newer check states.
- Introduce a 45-second timeout to gracefully fail or retry hung update checks that stall before reaching updater events.
- Settle checks with a brief grace period when the updater promise resolves without firing a terminal event.

* Ignore update-available events when no active check attempt exists

Prevents processing stale events from the auto-updater after a silent
background check has already settled, which could otherwise overwrite
more recent check states or trigger unexpected status transitions.

* Ignore stale electron-updater events from previous check attempts

Introduce attempt tracking to bind emitted updater events to the active
update check. This prevents stale events (such as checking, available,
not available, or errors) from previous checks or preflight stages
from triggering false state transitions or duplicate status updates.

- Track the launched and active attempt IDs during update preflight
- Ignore events if their attempt ID does not match the active check
- Allow error events to propagate during active download/install phases
- Clear pending nudge campaigns on silent follow-up checks settling to not-available
2026-06-20 16:39:42 -07:00