Commit Graph
4695 Commits
Author SHA1 Message Date
Jinjing d13b664be0 Extract GitLab project ref tests and update usage stats translations
- Move GitLab project ref parsing tests into a dedicated test file to
  keep modules focused and add tests for candidate parsing.
- Add missing translations for the usage sessions table and breakdown
  section across multiple locales.
2026-06-11 19:29:51 -07:00
Jinjing a9b86d8725 Support self-hosted GitLab instances for MR creation eligibility
* Extract and check the remote host against `glab auth status` to
  dynamically recognize and authenticate self-hosted GitLab instances
  without requiring them to be in a hardcoded list.
* Refactor stats usage panes by extracting reusable breakdown sections
  and sessions tables to eliminate duplication.
* Suggest Linear prompts only if the launcher can resolve the CLI.
2026-06-11 19:16:43 -07:00
Jinjing 4cffc3dde7 Refactor usage panes to extract shared formatters and tables
Extract duplicated formatting utilities to a shared helper module. Move
the large, inline recent sessions tables into dedicated sub-components to
reduce duplication and simplify the parent pane components.
2026-06-11 17:02:25 -07:00
Jinjing 1735fda8ad Extract sub-components and hooks from renderer components
To improve component focus and maintainability, extract large inline
sub-components, custom hooks, and logic helpers into dedicated files:

- Extract `HeroPaired` from `MobileHero` to `MobileHeroPairedDevices`.
- Move `ChromePreview` from `ThemeStep` to `theme-chrome-preview`.
- Refactor `HostedReviewActions` to use `useHostedReviewActions` hook.
- Move MCP config loading from `McpConfigSection` to helper file.
2026-06-11 10:53:42 -07:00
JinjingandOrca df37730de0 fix: handle null base ref in hosted review creation and add tests
Co-authored-by: Orca <help@stably.ai>
2026-06-11 10:53:42 -07:00
Jinjing 9fd1e6276d feat: support GitLab MR unlinking and AI generation in ChecksPanel
Integrate GitLab merge request actions alongside GitHub pull requests in
the sidebar checks panel. This includes unlinking GitLab MRs, enabling
AI-driven title and body generation for GitLab, and dynamically adapting
menu labels (e.g. "More MR actions" vs "More PR actions") depending on
the active provider.
2026-06-11 10:53:42 -07:00
github-actions[bot] 3607180bff release: v1.4.61-rc.2 v1.4.61-rc.2 2026-06-11 09:34:59 +00:00
Brennan BensonandOrca 91e354ccb1 Add multi-repo folder workspaces (v1) (#5172)
Co-authored-by: Orca <help@stably.ai>
2026-06-11 02:34:01 -07:00
github-actions[bot] 7fbb3003f2 release: v1.4.61-rc.1 v1.4.61-rc.1 2026-06-11 09:14:12 +00:00
Jinjing ba0d2fec16 Combine file search and file explorer right sidebar tabs (#5182)
Unifies file discovery and tree navigation under a single Explorer domain, simplifying the right sidebar activity bar and reducing tab clutter.

* Replaces the standalone 'search' activity bar tab with a nested 'search' subview inside the File Explorer tab
* Introduces 'rightSidebarExplorerView' ('files' | 'search') state to manage the active subview inside the Explorer
* Adds a search button to the File Explorer toolbar and a back button to the search subview for seamless transition
* Exposes 'showRightSidebarFiles' and 'showRightSidebarSearch' store actions to route and seed search queries/include patterns
* Adapts file explorer keybindings, git status polling, and external workspace watchers to respect the active subview
* Maps legacy persisted search tab state to the new explorer search view for backward compatibility
2026-06-11 02:13:16 -07:00
Jinjing 5621f7686b Embed hosted review creation composer directly in Checks panel (#5140)
* Embed hosted review creation composer directly in the Checks panel

- Replaces the modal pull request/merge request creation dialog with an
  inline composer embedded in the empty state of the Checks sidebar.
- Extracts and moves pull request generation state to a dedicated store
  slice so AI-generated details are persisted across sidebar unmounts.

* Fix hosted review composer feedback
2026-06-11 02:11:43 -07:00
Jinjing 903adcc2e0 Update Chinese and Japanese translations for worktrees and fixes (#5187)
- Correct awkward Chinese translation of "fix" ("使固定") to "修复" and "基本的" to "主工作树" (main worktree).
- Improve Japanese translation of "fix" from physical repair ("修理") to software correction ("修正").
2026-06-11 02:06:13 -07:00
Neil 260d2263d0 fix: remove unsupported agent launch defaults (#5185) 2026-06-11 01:50:18 -07:00
Jinjing a6e7b32e39 Improve source control action dialog layout and recipe saving UX (#5153)
* Improve source control agent action dialog layout and recipe UX

- Constrain dialog and scroll area heights to prevent viewport overflow.
- Add variable chips to easily insert the base prompt with tooltip previews.
- Keep the recipe save controls visible when a recipe is already saved, showing informational status text instead of hiding them.
- Update localized copy across multiple languages and reduce textarea rows.
- Add unit tests for the variable chip preview and save target visibility.

* Fix recipe-saved check in source control action dialog

* Evaluate only the selected save target instead of checking all available targets, as the action only writes to the selected target.
* Update daemon PTY adapter test fake PID to prevent collision with real host OS processes during runtime directory lookups.
2026-06-11 01:46:41 -07:00
Jinjing e64b27f46e Allow resolving selected review comments with AI (#5184)
* Allow resolving selected PR/MR review comments with AI

Users can now select specific unresolved review comments or threads in
the Checks panel sidebar, queue them, and trigger an AI agent to address
them, marking resolved threads on the host upon agent launch.

- Adds checkboxes and action/send buttons to select and queue comments.
- Builds a structured, robust prompt with sanitized comment metadata.
- Optimistically marks threads resolved on launch with rollback on error.
- Supports both GitHub PRs and GitLab MRs.

* Consolidate PR comment selection state and eliminate effects

Combine independent selection states and context-tracking into a single
state object. Derive active selection data and prune ineligible comments
during render using useMemo instead of relying on asynchronous
useEffect synchronization hooks.
2026-06-11 01:45:11 -07:00
Jinjing 7c05fa5216 fix: address review findings (#5177) 2026-06-11 01:44:27 -07:00
Brennan BensonandOrca 1ae8ebdc3f Fix Claude agents management status detection (#5179)
Co-authored-by: Orca <help@stably.ai>
2026-06-11 01:43:38 -07:00
Jinjing c47e0d1848 Prevent stale PR refreshes from restoring unlinked review state (#5180)
- Pass `worktreeId` to `fetchPRForBranch` to track active worktree context
- Ignore inflight or queued PR fetches if the worktree has been unlinked
- Include linked PR/MR metadata in the checks panel snapshot key to trigger updates immediately on link/unlink events
2026-06-11 01:14:45 -07:00
Jinjing ac216d5727 Route task PR queries by upstream source (#5176)
* Route task PR queries by upstream source

Implements the routing described in docs/tasks-pr-upstream-source.md so task PR and issue queries stay scoped to the selected source.

* rm design doc
2026-06-11 00:58:26 -07:00
Jinjing 569f7cbef7 Keep freshly split terminal pane mounted if newborn PTY exits early (#5171)
Prevent a newly split pane from collapsing immediately if its PTY exits
during initial setup before any output is received or input is sent.
This ensures a failed startup session remains visible to the user.
2026-06-11 00:55:30 -07:00
Jinjing 9d6d05e6ce Fix detached HEAD publish actions (#5173) 2026-06-11 00:30:01 -07:00
Neil bf8a985812 Hide internal context from AI Vault titles (#5175) 2026-06-11 00:28:34 -07:00
Jinjingandorca-bug-scan-bot 845ea2c68c Refresh Jira and Linear status after credential errors (#5169)
* fix: address pr-bug-scan validated finding from #4683

Isolated CredentialDecryptionError per-item in Linear getClients (client.ts:518) and Jira getClients (client.ts:373) on the 'all' selection so one bad credential no longer collapses healthy workspaces

* Refresh Jira and Linear status to clear stale credential errors

Ensure stale credential decryption errors are cleared from the store
status once a successful API read completes. By updating the check in
shouldRefreshStatusAfterRead to trigger when a credentialError is
currently set, successful issue or list fetches will trigger a status
check and remove stale error flags.

---------

Co-authored-by: orca-bug-scan-bot <orca-bug-scan-bot@stably.ai>
2026-06-11 00:11:22 -07:00
Jinjing fcc0afa8cd fix: enable claude agent teams by default (#5168) 2026-06-11 00:08:43 -07:00
buf0-bot[bot]andorca-bug-scan-bot 146da04af2 fix: address pr-bug-scan validated finding from #4683 (#5151)
Isolated CredentialDecryptionError per-item in Linear getClients (client.ts:518) and Jira getClients (client.ts:373) on the 'all' selection so one bad credential no longer collapses healthy workspaces

Co-authored-by: orca-bug-scan-bot <orca-bug-scan-bot@stably.ai>
2026-06-10 23:56:17 -07:00
Neil 847b2109a8 Autofocus feedback textarea when Send Feedback dialog opens (#5164) 2026-06-10 23:24:26 -07:00
Trevin Chow 3184d0e475 Fix floating workspace needing two clicks after app switch (macOS) (#5128) 2026-06-10 23:05:41 -07:00
Jinjing 5391d1015c improve chinese localization (#5162) 2026-06-10 22:46:08 -07:00
Brennan BensonandOrca dc17c47dc6 Refine add project selection styling (#5160)
Co-authored-by: Orca <help@stably.ai>
2026-06-10 22:44:26 -07:00
Neil 2a8f5f4186 Fix additional i18n spacing regressions from #4995 (#5159) 2026-06-10 22:22:25 -07:00
Parker Rex c2b68cac74 Fix Ctrl+Tab switcher selection on release (#5116) 2026-06-10 22:11:17 -07:00
Neil a428d60dac Fix missing spaces in cross-repo switch dialog (#5158) 2026-06-10 22:09:51 -07:00
Brennan BensonandOrca 10411fd39c Rebuild contextual tour positioning on floating-ui; fix hosted dialog placement and arrow seam (#5154)
Co-authored-by: Orca <help@stably.ai>
2026-06-10 21:55:49 -07:00
Brennan BensonandOrca a4a1b12d80 Move workspace board to sidebar bottom toolbar (#5146)
Co-authored-by: Orca <help@stably.ai>
2026-06-10 21:51:58 -07:00
Brennan BensonandOrca 3d7d9a15cf Fix Claude usage refresh error copy (#5155)
Co-authored-by: Orca <help@stably.ai>
2026-06-10 21:40:24 -07:00
Neil 9ceabb43b6 Default agent launches to yolo permissions mode (#5145)
* Default agent launches to yolo mode

* test: update launch default validations
2026-06-10 21:14:53 -07:00
Neil 1f5d31a2b5 Add AI Vault session history
## Summary
- add AI Vault session scanning and resume command construction
- add the Agents sidebar panel with filtering, grouping, copy/open actions, and local resume launch
- support dragging saved sessions onto terminal split panes

## Validation
- pnpm run lint
- pnpm run typecheck
- pnpm exec vitest run --config config/vitest.config.ts src/main/ipc/register-core-handlers.test.ts src/main/ai-vault/session-scanner.test.ts src/renderer/src/components/right-sidebar/ai-vault-session-filters.test.ts src/renderer/src/lib/ai-vault-session-drag.test.ts src/renderer/src/lib/launch-ai-vault-session.test.ts
2026-06-10 21:10:10 -07:00
Brennan BensonandOrca cdc0ca5e53 Add read-only orca linear CLI with trusted launch-prompt pointer (V1) (#5126)
Co-authored-by: Orca <help@stably.ai>
2026-06-10 20:20:50 -07:00
Jinjing 519cc5d1c3 fix: remove checks panel response badge (#5147) 2026-06-10 20:15:32 -07:00
Brennan BensonandOrca bfda940e56 Add option to remove child projects when deleting repo groups (#4702)
Co-authored-by: Orca <help@stably.ai>
2026-06-10 20:15:10 -07:00
Jinwoo Hong 1ef273c018 fix: make windows ssh relay deploy survive session teardown (#5136) 2026-06-10 23:12:26 -04:00
Neil b0108c4a8d Fix missed star UI translations (#5148) 2026-06-10 20:10:32 -07:00
Neil 1a22e2d05c UX/copy tweaks (#5142)
* UX/copy tweaks

* UX/copy tweaks
2026-06-10 19:53:03 -07:00
Neil 05bf2bdd8e UX (#5143) 2026-06-10 19:28:23 -07:00
Jinjing d4bee7db5c Preserve core workflow terms in English and apply CJK spacing (#5141)
* Preserve core workflow and product terms in English across locales

Update translation policy to prevent localization of key terms such as
"Agent", "Commit", "Markdown", and "Terminal". This ensures consistent
jargon and product branding.

Introduce CJK-Latin term spacing to keep these Latin terms legible
when combined with CJK text, while adjusting Korean particle spacing.
Also add overrides to prevent network proxy settings from being
mistranslated as "Agent".

* Preserve repo terminology in English and localize source control labels

Treat "repo" and "repos" (and their capitalized forms) as brand terms
that should remain in English/Latin across CJK and Spanish locales.
Update translation files and policies to replace translated words like
"repositorio" or "リポジトリ" with "repo"/"repos", and fix an issue where
latin brand terms could be incorrectly matched as substrings in larger
words during cleanup.

Additionally, externalize and localize the "Staged Changes", "Changes",
and "Untracked Files" section labels in the source control sidebar.
2026-06-10 19:24:16 -07:00
github-actions[bot] d66027c433 release: v1.4.60 v1.4.60 2026-06-11 02:16:03 +00:00
github-actions[bot] 47fb9df898 release: v1.4.60-rc.0 v1.4.60-rc.0 2026-06-11 01:33:41 +00:00
Jinwoo Hong 4daf409776 perf(windows): avoid blocking daemon pid checks (#5137) 2026-06-10 21:32:41 -04:00
Jinjing 0f774610cc fix: address review findings (#5139) 2026-06-10 17:54:33 -07:00
JinjingandOrca 26aa473bca File search match counts (#5085)
* Add matchCount to SearchFileResult for accurate per-file hit counts

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

* Add file search match count design

* rm design doc

---------

Co-authored-by: Orca <help@stably.ai>
2026-06-10 17:42:49 -07:00