Commit Graph
36820 Commits
Author SHA1 Message Date
Danilo Leal 367f4f77cf docs: Update mentions to "assistant panel" (#53514)
We don't use this terminology anymore; now it's "agent panel".

Release Notes:

- N/A
2026-04-09 10:42:21 -03:00
Danilo Leal 40c8c97781 sidebar: Add setting to control side in the settings UI (#53516)
Release Notes:

- N/A
2026-04-09 10:42:09 -03:00
Lukas Wirth 42f22b54ab Remove storybook and story crates (#53511)
Remove the standalone storybook binary and the story crate, as component
previews are now handled by the component_preview crate.

Also removes the stories features from the ui and title_bar crates.

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-09 12:32:27 +00:00
Lukas Wirth 48a1205387 gpui: Throttle framerate to 30 for unfocused windows (#52970)
This should reduce energy consumption when having agents running in
background windows, as the spinner that is being animated won't refresh
at the display framerate anymore.

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-09 11:28:43 +00:00
Oleksiy Syvokon f6664e164b ep: Make .prompt.expected_output optional (#53505)
Release Notes:

- N/A
2026-04-09 10:48:04 +00:00
Sean HagstromandDmitry Soluyanov 74a2a34147 editor: Add Ctrl+scroll wheel zoom for buffer font size (#53452)
Closes https://github.com/zed-industries/zed/pull/53452

Release Notes:

- Add event handling on editor to increase/decrease font-size when using
the scroll-wheel and holding the secondary modifier (Ctrl on
Linux/Windows, and Cmd on macOS)

Screen Capture:


https://github.com/user-attachments/assets/bf298be4-e2c9-470c-afef-b7e79c2d3ae6

---------

Co-authored-by: Dmitry Soluyanov <dimitri.soluyanov@yandex.ru>
2026-04-09 12:10:39 +03:00
Luca Zani de56a8fd82 git_ui: Strip ANSI escape codes from git command output (#53444)
When git commands (push, pull, hooks...) produce output containing ANSI
escape sequences for colors or formatting, Zed was displaying them as
raw escape codes in the output buffer, making the output hard to read.
This simply escapes ANSI from the git output

### Before and After

  <table>
    <tr>
      <th align="center">Before</th>
<th align="center">After</th>
    </tr>
    <tr>
  <td>
<img width="882" height="862" alt="Screenshot 2026-04-08 at 21 13 07"
src="https://github.com/user-attachments/assets/58731e80-d864-47ca-8983-d0e86e924843"
/>
</td>
      <td>
<img width="882" height="862" alt="Screenshot 2026-04-08 at 21 15 14"
src="https://github.com/user-attachments/assets/7649200a-2d82-4442-88da-e231304911a8"
/>
</td>
    </tr>         
  </table>        

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Related to #43817. This PR only addresses the escaping of the ANSI
codes; colors and other stuff are not handled

Release Notes:

- Fixed ANSI escape codes being displayed as raw text in git command
output
2026-04-09 07:21:54 +00:00
9b2d9fe537 sidebar: Better handling for threads in remote workspaces (#53451)
This PR greatly improves our handling of remote threads in the sidebar.

One primary issue was that many parts of the sidebar were only looking
at a thread's path list and not its remote connection information. The
fix here is to use `ProjectGroupKey` more consistently throughout the
sidebar which also includes remote connection information.

The second major change is to extend the MultiWorkspace with the ability
to initiate the creation of remote workspaces when needed. This involved
refactoring a lot of our remote workspace creation paths to share a
single code path for better consistency.

Release Notes:

- (Preview only) Fixed remote project threads appearing as a separate
local project in the sidebar

---------

Co-authored-by: Anthony Eid <anthony@zed.dev>
Co-authored-by: Anthony Eid <hello@anthonyeid.me>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
2026-04-09 06:56:28 +00:00
Finn Evers 8df02db4e1 compliance: Use tag instead of branch name by default (#53422)
Applies the changes from
https://github.com/zed-industries/zed/pull/53409 to the main branch

Release Notes:

- N/A
2026-04-09 08:27:49 +02:00
Finn Evers aac50b9fb9 compliance: Fix file report upload (#53425)
Applies https://github.com/zed-industries/zed/pull/53424 to the main
branch

Release Notes:

- N/A
2026-04-09 08:27:30 +02:00
koh-shandConrad Irwin 91b0ea270d Fix duplicate window when opening from CLI on macOS (#48146)
Closes #47140
Closes #44691

When launching Zed from the CLI (`zed .`), macOS delivers the path as a
`kAEGetURL` Apple Event via Launch Services. Zed relied on the
`application:openURLs:` delegate method to receive this, but its timing
relative to `applicationDidFinishLaunching:` is not guaranteed by macOS.
In release builds, the app reaches `didFinishLaunching` before the URL
is delivered, causing it to be missed and a duplicate window to be
opened. This does not reproduce in debug builds due to slower
initialization, which is why the issue was hard to reproduce from
source.

This replaces `application:openURLs:` with a custom `kAEGetURL` Apple
Event handler registered in `applicationWillFinishLaunching:`. Apple
Events are guaranteed to be delivered synchronously between
`willFinishLaunching` and `didFinishLaunching`, ensuring the URL is
always available before startup logic runs.

 Release Notes:

- Fixed duplicate window creation when opening files/directories from
the CLI on macOS.

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
2026-04-08 23:14:54 -06:00
Richard Feldman 113f0a22ec Remove unused delete_history_entry method (#53436)
Remove the unused `ConversationView::delete_history_entry` method and
its now-unused `ThreadMetadataStore` import. The method had zero callers
— the same functionality is covered by
`ThreadHistoryView::remove_thread` and
`ThreadsArchiveView::delete_thread`.

Release Notes:

- N/A
2026-04-09 01:49:33 +00:00
Richard FeldmanandAnthony Eid 02176edd16 Use detached commits when archiving worktrees (#53458)
Don't move the branch when making WIP commits during archiving; instead
make detached commits via `write-tree` + `commit-tree`.

(No release notes because this isn't stable yet.)

Release Notes:

- N/A

---------

Co-authored-by: Anthony Eid <anthony@zed.dev>
2026-04-09 00:25:25 +00:00
Danilo LealandMikayla Maki 58fcabd6ba sidebar: Improve new thread button behavior/design (#53429)
This PR removes the labeled "new thread" button when the project group
is empty, making it so, effectively, we only show it when you're in an
empty/draft thread in the active workspace. The "Untitled Thread" label
has also been renamed back to "New Thread". Then, we fixed an issue
where clicking on the new thread icon button would default to creating a
new thread in the main worktree as opposed to the one currently active;
this fix makes the button's behavior match with `cmd-n` from the agent
panel. Lastly, we fixed the "new thread" labeled button not opening the
agent panel when that's closed and organized the data structures a bit
by merging `DraftThread` and `NewThread` all into `DraftThread`.

Release Notes:

- Thread Sidebar: Fixed the new thread icon button not creating a thread
in the current active worktree.
- Thread Sidebar: Fixed click on the new thread button not opening the
agent panel when closed.

---------

Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
2026-04-08 20:54:55 -03:00
Danilo Leal 4b699dfc4b Add some adjustments to the parallel onboarding elements (#53449)
- Hopefully, making the "Try Now" button within the announcement toast
effectively get the layout switched to agent
- Don't dismiss the announcement toast when clicking on "Learn More"
- Add a Learn More button in the agent panel, too
- Hide the "Collab with Agents" card in the launchpad page

Release Notes:

- N/A
2026-04-08 20:39:02 -03:00
Ben Kunkle 5e573242d4 Track additional metrics in settled (#52938)
Stacked on https://github.com/zed-industries/zed/pull/50566.

Begin collecting kept chars rate, as well as the count of tree-sitter
errors in the code before and after applying the prediction.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-08 18:39:17 -04:00
Finn Evers bde48d0341 ci: Move building visual tests binary to separate step (#53440)
https://github.com/zed-industries/zed/pull/53408 did not solve the root
issue of the cache issues we were seeing with building the visual tests
binary.

Thus, moving this to a separate step here to test how fast it is and
removing it from the other test runs - it should not be there anyway and
especially not for the tests on release builds.

Release Notes:

- N/A
2026-04-09 00:23:58 +02:00
Piotr Osiewicz 3c17a3d748 ci: Clean workspace members more eagerly (#53427)
This relies on 1.94s --workspace option we've added to cargo

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- N/A
2026-04-09 00:21:02 +02:00
Richard FeldmanandAnthony Eid 2261fbbec6 Wire up worktree archival on thread archive and restoration on unarchive (#53215)
Connect the git API and archived worktree data model to the sidebar's
archive/unarchive flow:

- Add `thread_worktree_archive` module: orchestrates the full archive
cycle (WIP commits, DB records, git refs, worktree deletion) and restore
cycle (detached worktree creation, reset to recover staged/unstaged
state, branch restoration)
- Integrate into sidebar: `archive_thread` now persists worktree state
before cleanup; `activate_archived_thread` restores worktrees via git
with targeted path replacement for multi-root threads
- Add pending worktree restore UI state with spinner and cancel button
- Show toast on restore failure instead of silent log
- Switch to surviving workspace when archiving active thread whose
workspace will be deleted
- Deserialize persisted `project_group_keys` on window restore
- Guard `cleanup_empty_workspaces` against dropped entities
- Await rollback DB operations instead of fire-and-forget

Part 3 of 3 in the persist-worktree stack. Stacked on #53214. This wires
up parts 1 and 2.

Release Notes:

- Added worktree state preservation when archiving agent threads,
automatically restoring staged and unstaged changes when the thread is
unarchived

---------

Co-authored-by: Anthony Eid <anthony@zed.dev>
2026-04-08 17:04:52 -04:00
Finn Evers cf4984bc70 compliance: Also check for approval pattern in pull request reviews (#53431)
Release Notes:

- N/A
2026-04-08 22:11:08 +02:00
Richard Feldman 8a3effce0f Gracefully handle when linked worktree .git path is outside worktree root (#53443)
In `update_git_repositories`, a `.git` path outside the worktree root
can occur legitimately when `.git` is a gitfile (as in linked worktrees
and submodules) pointing to a directory in the parent repo. Previously
this triggered a `debug_panic!`, crashing debug builds.

Now we skip the path with a `debug_assert!` that it is indeed a file
(not a directory), so a genuine `.git` directory outside the worktree
root would still be caught in debug builds.

(No release notes because this is extremely hard to encounter until
https://github.com/zed-industries/zed/pull/53215 lands)

Release Notes:

- N/A
2026-04-08 15:51:05 -04:00
ozacodandozacod 267ab24cfb editor: Add action to toggle block comments (#48752)
Closes #4751

## Testing
- Manually tested by comparing the behaviors with vscode.
- Those requirements are added to unit tests.

Release Notes:

- Added action to toggle block comments

---------

Co-authored-by: ozacod <ozacod@users.noreply.github.com>
2026-04-08 22:29:16 +03:00
Finn Evers 5de175ddca ci: Only link to PRs needing review if there are any (#53437)
This further reduces the noise of the compliance checks.

Release Notes:

- N/A
2026-04-08 21:16:43 +02:00
Nathan SoboandBen Brandt 6d5cdbc5f4 Persist fast mode across new threads (#53356)
When toggling fast mode, the setting is now written to `settings.json`
under `agent.default_model.speed`, so new threads start with the same
speed. This follows the same pattern as `enable_thinking` and `effort`.

The `speed` field uses the existing `Speed` enum (`"fast"` /
`"standard"`) rather than a boolean, to leave room for future speed
tiers.

Example settings:
```json
{
  "agent": {
    "default_model": {
      "provider": "zed.dev",
      "model": "claude-sonnet-4",
      "speed": "fast"
    }
  }
}
```

cc @benbrandt

Release Notes:

- N/A

---------

Co-authored-by: Ben Brandt <benjamin.j.brandt@gmail.com>
2026-04-08 18:59:33 +00:00
Om Chillure ae03716742 Fix repeated prompts in opencode acp (#53216)
### Summary
Fixes duplicated Prompts/context in ACP threads after sending a message,
as reported in #53201.

### Root Cause
The thread already inserts the user prompt optimistically at send time.
If an ACP server also echoes UserMessageChunk updates for the same
prompt, the same content is appended again, which can duplicate rendered
context sections.

### Fix
Ignore echoed UserMessageChunk updates while a turn is actively running,
so user prompt content is not appended twice.

### Validation
- Reproduced with OpenCode ACP flow from the issue.
- Confirmed duplication appears after send (not in the input box).
- Confirmed duplicate Prompts/context no longer appears with the fix.

### Video 

[Screencast from 2026-04-06
08-21-32.webm](https://github.com/user-attachments/assets/33075312-9af7-4dd5-a2a3-5e1169b80243)


### Self-Review Checklist
- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #53201

## Release Notes
- Fixed duplicated Prompts/context in ACP conversations when servers
echo user message chunks after send.
2026-04-08 18:48:25 +00:00
Bennet Bo Fenner 844dcfda0f sidebar: Surface subagent permission requests (#53428)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- (preview only) sidebar: Fixed issue where tool confirmation indicator
would not show up when subagent asks for permissions
2026-04-08 19:39:06 +01:00
Finn Evers 77cfe1be5d ci: Continue on error if non-blocking compliance step fails (#53398)
This will make rerunning failing jobs easier, as this here is just a
pager, not anything we need to rerun - there exists a second check that
is blocking and should be rerun, this job however does not need to be.

Release Notes:

- N/A
2026-04-08 20:35:36 +02:00
Finn Evers b6ac2472f0 ci: Fix artifact naming conflict (#53433)
This fixes the issue we saw in
https://github.com/zed-industries/zed/actions/runs/24147949240

Release Notes:

- N/A
2026-04-08 20:34:13 +02:00
Finn Evers 89b3d83ad6 ci: Remove noisy compliance webhook print (#53432)
This is very noisy and does not provide much, the artifact link to the
report is sufficient for now.

Release Notes:

- N/A
2026-04-08 18:31:35 +00:00
Ben BrandtandBennet Bo Fenner d1dcd80209 acp: Better handling of terminal auth on remote connections (#53396)
We were incorrectly wrapping new terminal auth methods in double ssh
calls.

Only affected ACP beta users, but important for testing and stabilizing
the feature.

We moved the ssh wrapping to be only added in the acp process creation
where it was needed.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
2026-04-08 18:21:02 +00:00
Nitin K. M.andClaude Opus 4.6 d7e1dd408a Removal of mold/wild scripts and mentions in docs (#53078)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [ ] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable


Release Notes:

- N/A

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 21:20:02 +03:00
Dino cc975c2a23 Bump Zed to v0.233 (#53404)
Release Notes:

- N/A
2026-04-08 17:54:51 +00:00
Danilo Leal 1970df5bdf Update parallel agents onboarding copy (#53423)
Release Notes:

- N/A
2026-04-08 14:34:34 -03:00
Danilo Leal 7300f92785 Fix empty path being shown as an item in the recent projects picker (#53400)
A couple of restore project group/workspaces functions weren't filtering
out project groups with empty paths, leading to an empty being shown in
the recent projects picker. This is the problem this PR solves:

<img width="400" height="1042" alt="Screenshot 2026-04-08 at 11  06@2x"
src="https://github.com/user-attachments/assets/4d96cc53-5b03-445c-968b-8a8edec559da"
/>

Release Notes:

- N/A
2026-04-08 14:33:54 -03:00
Danilo Leal a57b47c1b8 sidebar: Fix focus movement to protect zoomed in panels (#53386)
Follow up to https://github.com/zed-industries/zed/pull/53283. That PR
replaced _where_ focus goes — from "always the center pane" to "the
saved element." But it didn't fix _when_ focus moves — it still moves
every time the sidebar closes, unconditionally. The problem is the saved
focus can be wrong... it's saved when the sidebar opens, but then it can
go to somewhere else after. An example:

1. Open sidebar → save focus (center pane), focus sidebar
2. Open agent panel from sidebar → focus moves to agent panel
3. Close sidebar → restore saved focus → **focuses center pane** (that's
what was saved in step 1, not the agent panel)

Effectively, this would still cause the agent panel to auto-dismiss.
This PR fixes it by no moving focus at all if the sidebar doesn't have
it. If the user already moved focus to the agent panel, there's nothing
to "restore".

Release Notes:

- N/A
2026-04-08 16:29:40 +00:00
Om ChillureandSmit Barmase 9b0cc25bb0 project_panel: Fix duplicating a file only selects the copy suffix (#53146)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #53116

Video 

[Screencast from 2026-04-04
19-14-55.webm](https://github.com/user-attachments/assets/d17945d6-b17c-435d-8155-648cd7ba574b)


Release Notes:

- Fixed: File duplication rename now selects the entire filename stem
instead of just the " copy" suffix, allowing users to type a new name
without manually clearing text

---------

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
2026-04-08 21:53:43 +05:30
Pratik KarkiandSmit Barmase a2d14a1c85 gpui: Prevent underline and strikethrough artifacts on final glyph in text runs (#50934)
Closes #50587 

Before you mark this PR as ready for review, make sure that you have:
- [x] Added a solid test coverage and/or screenshots from doing manual
testing
- [x] Done a self-review taking into account security and performance
aspects
- [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)

Release Notes:
- Fixed issue that showed underline and strikethrough when markdown
preview screen was scaled to a smaller size


Previously:

<img width="741" height="457" alt="image"
src="https://github.com/user-attachments/assets/f127cf44-c679-4140-b246-e0756c9fca32"
/>



Now:

<img width="742" height="592" alt="image"
src="https://github.com/user-attachments/assets/a29fdc24-cac0-438f-8538-4e85c4df995a"
/>

---------

Signed-off-by: Pratik Karki <pratik@prertik.com>
Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
2026-04-08 21:53:00 +05:30
Lukas Wirth 2113b12fff Compile tree-sitter with opt-level 3 in dev profile (#53385)
tree-sitter query compilation (used to set up language grammars) is a
significant bottleneck in test setup. Profiling showed rust_lang()
creation taking ~270ms per test in dev builds, with nearly all time
spent in tree-sitter's query compiler.

With opt-level = 3, this drops to ~63ms locally — a 4x speedup on that
step. Across hundreds of tests that create language grammars (vim,
editor, collab, etc.), this ought to save substantial CI time.



Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-08 16:16:55 +00:00
Richard Feldman 5d2d2360ff Disable flaky test_sidebar_invariants property test (#53410)
The `test_sidebar_invariants` property test has been flaking recently.
Marking it as `#[ignore]` to unblock CI while the root cause is
investigated.

Release Notes:

- N/A
2026-04-08 15:50:36 +00:00
Richard Feldman 2a1ca675cf Disable visual tests in CI (#53408)
Gate the `visual_tests` module behind the `visual-tests` feature flag
instead of `test`/`test-support`, so CI never compiles or runs visual
tests.

To run them locally:

```
cargo test -p zed --features visual-tests visual_tests -- --ignored --test-threads=1
```

Release Notes:

- N/A
2026-04-08 15:25:30 +00:00
Danilo Leal 8891938634 agent_panel: Prevent content from overlapping with buttons in message editor (#53384)
Follow up to https://github.com/zed-industries/zed/pull/53349 as I was
still seeing cases where content would overlap with buttons.

<img width="500" height="266" alt="Screenshot 2026-04-08 at 6  53@2x"
src="https://github.com/user-attachments/assets/e58742d4-a736-4509-9a29-35c135ddb980"
/>

I believe this PR makes the whole message editor more solid against
these cases because we're relying on `flex_basis` now to set the
max-width, which runs before we do any editor mode calculations. Tested
this a bunch and it seems to be pretty stable.

Release Notes:

- N/A
2026-04-08 10:43:22 -03:00
Bennet Bo Fenner 259cbbe219 agent: Show notifications when thread is not the active one (#53149)
We now always show a notification for a thread if it is not the active
one (even if the sidebar is open).
Also made clicking on the notification actually open the corresponding
thread (previously we would just changed the workspace)

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A
2026-04-08 14:39:12 +01:00
Dionys SteffenandSmit Barmase 9745bb9f64 project_panel: Add sort_order settings (#50221)
_(Feature Requests #24962)_

_"Before you mark this PR as ready for review, make sure that you
have:"_

* [x] Added a solid test coverage and/or screenshots from doing manual
testing
* [x] Done a self-review taking into account security and performance
aspects
* [x] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)

Release Notes:

- Added a `sort_order` to `project_panel` settings which dictates how
files and directories are sorted relative to each other in a
`sort_mode`.

---------

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
2026-04-08 18:33:00 +05:30
Lukas Wirth d4b59ed84c gpui: Lazy-init font DB in SvgRenderer to avoid per-test overhead (#53381)
Commit abb3a9dc76 changed SvgRenderer::new() to eagerly deep-clone the
system font database and enrich it with bundled fonts at construction
time. Since every #[gpui::test] creates a TestAppContext →
App::new_app() → SvgRenderer::new(), and nextest runs each test in its
own process, this added ~2-3s of overhead to every GPUI-based test (~132
minutes total across the full suite).

Move the expensive work (deep-clone + load_bundled_fonts +
fix_generic_font_families) into a OnceLock inside the font resolver
closure, so it only executes on the first actual SVG render. Tests that
never render SVGs thus do not need to load the fonts which in itself can
be fairly expensive.

This also bumps the opt-level for crane lift and some other wasmtime
crates, as only wasmtime isn't really sufficient

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-08 13:06:32 +02:00
Danilo Leal 2d6acde2a1 title_bar: Improve display of sign in state (#53255)
Closes https://github.com/zed-industries/zed/issues/52488

Release Notes:

- Improved the display of the sign in state in the title bar, by namely
showing "Signing in" when in an active process of signing in.
2026-04-08 07:58:50 -03:00
Amaan f5f57712e4 ai: Preserve draft_prompt when creating a new agent threads (#53250)
- added a shared helper `take_active_draft_initial_content` to resolve
initial content
- `draft_prompt` is copied over to a new thread and is persisted in old
thread with this behavior


Self-Review Checklist:
- [x] I've reviewed my own diff for quality, security, and reliability
- [x] no Unsafe blocks 
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [ ] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable

Closes #38028 

Release Notes:

- persist draft messages in ai thread when a new thread is created so we
dont use any messages or draft prompts mistakenly

Question: 
need some guidance on how to persist a thread when the `draft_prompt` is
present but the message is unsent because currently having a draft
prompt in the agent input box and thenmaking a new agent thread copies
the prompt over to the new thread(changes from this pr) but on going
back to the old thread new thread is destroyed
2026-04-08 11:48:05 +01:00
Finn Evers c038ad4e4f compliance: Check repository status for actor (#53343)
Also includes two other minor fixes for stdout info prints

Release Notes:

- N/A
2026-04-08 11:41:22 +02:00
Mikayla Maki 0fb9e8c27d Fix workspace removal, and chase down all the ramifications (#53366)
This PR adjusts how project group removal works in the sidebar to be
project group aware. Removal is now a batched operation, and supports a
contextually appropriate fallback active workspace fallback. In the
process of removing this, I had to chase down and fix other broken code:
- Removes the "move to new window" actions
- Changed the sidebar to store things in "most recently added" order
- The recent project UI was still using workspaces, instead of project
groups
- Adjusted the archive command to use the new APIs to remove the
workspace associated with that worktree (cc: @rtfeldman)
- The property tests where still using indexes and workspaces instead of
project groups

Self-Review Checklist:

- [ ] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #ISSUE

Release Notes:

- N/A
2026-04-08 09:21:39 +00:00
Danilo Leal a2f26445ef agent_panel: Allow dismissing the worktree error callout (#53375)
This error callout here wasn't dismissible before:

<img width="600" height="2154" alt="Screenshot 2026-04-08 at 5  49@2x"
src="https://github.com/user-attachments/assets/4e9df452-9970-4145-a13d-75d5e0adee8b"
/>

Release Notes:

- N/A
2026-04-08 06:03:01 -03:00
Anthony Eid 9a146a0d6c agent: Reset panel thread picker after git worktree creation (#53372)
After a user creates successfully creates a new git worktree we reset
the agent thread picker state to avoid accidentally creating a new
worktree for a thread.

This also fixes some bugs where a past agent thread picker state was
invalid because it became out of sync after a new worktree was created,
or when a mutating git operation occurred.

Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-04-08 07:24:57 +00:00