Commit Graph
39151 Commits
Author SHA1 Message Date
Smit Barmase 44fb295593 agent_ui: Fix panic when restoring an agent terminal in a remote project (#58533)
Closes FR-61

To reproduce:
- you should be on a remote project
- terminal’s working directory is set to home

Release Notes:

- Fixed a crash that could occur when restoring an agent terminal in a
remote project.
2026-06-04 12:11:17 +00:00
Zhiwei Liang af264433a9 Fix lost error messages when listing OpenRouter models (#58502)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [ ] 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

`list_models` reads the response body once up front, then the error
branch read it
*again* into a shadowing `body`. Since the stream was already drained,
the second read
returned `""`, so error parsing always failed and we surfaced an empty
message instead
of the real API error.

This removes the redundant second read so the error branch uses the body
we already have.

Release Notes:

- Fixed OpenRouter API errors showing empty messages when fetching the
model list

Signed-off-by: Zhiwei Liang <zhiwei.liang@zliang.me>
2026-06-04 11:18:14 +00:00
Finn Evers 53667331bd extension_api: Remove x86 support (#58259)
This PR drops the `Architecture::x86` variant within the extension API. 

Reason for this being that 
- Zed itself is not shipped for 32 bit and thus this variant is never
actually constructed
- we don't support a Node runtime in 32 bit environments
- basically all language and context servers do not ship 32 bit variants

Thus, this PR removes support for this variant, as currently, extension
authors always have to return an error for the missing 32 bit support of
their binaries. With this, this will no longer be needed.

Lastly, this removes one space of too much indentation I found whilst
doing these changes. Very visible in the GitHub UI luckily.

Release Notes:

- Removed support for extensions downloading language servers, debuggers
and MCP servers on 32-bit architecture. Extensions may still work if you
manually specify a path to an appropriate binary, but will not succeed
when attempting to download a binary based on the current systems 32-bit
architecture.
2026-06-04 11:01:48 +00:00
Oleksiy Syvokon 11a701f5b5 ep: Add an option to filter context by type when evaluating (#58523)
This allows us to collect all context once, and evaluate subsets of it
later.

Closes #ISSUE

Release Notes:

- N/A
2026-06-04 10:02:05 +00:00
Oleksiy Syvokon 2fdf3026b6 ep: Skip commits containing submodules / gitlinks (#58519)
We were not resolving them, so doing anything with such commit failed.


Release Notes:

- N/A
2026-06-04 09:05:19 +00:00
Albert BoguszandMrSubidubi 623c1719c6 Hide markdown code block scrollbar when wrapped (#58472)
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)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Follow up of #57312. Hides the scrollbar (which does not do anything)
when markdown code blocks are wrapped.

Release Notes:

- Fixed the scrollbar on wrapped code blocks in the agent chat.

(As far as I can see the wrap button only exists in the agent chat and
not regular markdown previews.)

---------

Co-authored-by: MrSubidubi <finn@zed.dev>
2026-06-04 08:01:09 +00:00
Finn Evers 20f784e189 Disable csharp-ls by default (#58507)
In preparation for https://github.com/zed-extensions/csharp/pull/77

Release Notes:

- N/A
2026-06-04 07:31:41 +00:00
saberoueslati ea7b4c75ee tab_switcher: Show full file names without truncation (#58483)
## Context

The tab switcher was truncating file names at the same 24-character
limit (`MAX_TAB_TITLE_LEN`) used by the narrow tab bar. This made files
that share a long common prefix, like `test_cpp_file_long_name.h` and
`test_cpp_file_long_name.cpp`, render identically, with both becoming
`test_cpp_file_long_name.…`.

The fix adds a `max_title_len: Option<usize>` field to
`TabContentParams`. When `None` (the default, used by the tab bar),
`Editor::tab_content` falls back to `MAX_TAB_TITLE_LEN` as before. The
tab switcher passes `Some(usize::MAX)`, which skips truncation entirely
and lets the UI container constrain the displayed text naturally.

Closes #58461

## How to Review

- **`crates/workspace/src/item.rs`** : Adds `max_title_len:
Option<usize>` to `TabContentParams`. Derives `Default` so `None` is the
zero-cost default; two existing struct literals in `pane.rs` that
couldn't use `..Default::default()` were updated to be explicit.
- **`crates/editor/src/items.rs`** : In `Editor::tab_content`, both the
title label and the description path now use
`params.max_title_len.unwrap_or(MAX_TAB_TITLE_LEN)` instead of the
hardcoded constant.
- **`crates/workspace/src/pane.rs`** : Two `TabContentParams` struct
literals updated to include `max_title_len: None`, preserving the
existing 24-char tab bar behaviour.
- **`crates/tab_switcher/src/tab_switcher.rs`** : Sets `max_title_len:
Some(usize::MAX)` in `render_match`, opting the tab switcher out of
truncation.

Video of the manual test below :
Used the same names of the files in the issue but also longer ones to
showcase the behavior in different file lengths :

[Screencast from 2026-06-04
00-08-02.webm](https://github.com/user-attachments/assets/5f388257-2f3d-494c-ab50-bf46496dbd38)

I'm obviously open to discussing this further specially the new
truncation behavior of the file with the longest name in the manual
test.

## 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
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Release Notes:

- Fixed tab switcher truncating long file names, making files with a
shared prefix indistinguishable
2026-06-04 05:21:56 +00:00
Floyd Wang 96165ec626 gpui: Fix cursor styles not applying to panel-backed windows (#58493)
`set_active_window_cursor_style` only matched `WINDOW_CLASS` (used by
`WindowKind::Normal`). Panel-backed windows
(`Floating`/`Dialog`/`PopUp`) use the sibling `PANEL_CLASS`, so the
check failed for them: a focused panel fell through to `mainWindow`,
applying the cursor to the wrong window and leaving `cursor_pointer()`
with no visible effect.

Add an `is_gpui_window` helper that accepts both classes (both carry
`WINDOW_STATE_IVAR`) and use it to resolve the active window.

### Before


https://github.com/user-attachments/assets/f1bf820e-7af8-44f2-bfcd-d51e60706454

### After


https://github.com/user-attachments/assets/d4fa319d-029d-4516-922e-70ed753fa90a

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
2026-06-04 03:37:52 +00:00
Mayank Verma b3bc83b57e gpui: Make tooltip show delay configurable (#58291)
Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [ ] 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

Release Notes:

- N/A

This adds a `tooltip_show_delay(Duration)` API so callers can override
the default 500ms delay.
2026-06-04 03:15:36 +00:00
Roméo Maignal 03d4536836 tab_switcher: Select first buffer in the list when a query is enabled (#58424)
…tered (#58420)

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 #58420

Release Notes:
- Reset `selected_index` to 0 whenever the query goes from empty to
non-empty, ensuring the first (best) fuzzy match is always highlighted
when the user starts typing.
- This is handled in `update_matches()` and `update_all_pane_matches()`
by checking whether the query is empty before applying the reset.
2026-06-04 03:05:21 +00:00
Danilo Leal f70edafd2f sidebar: Ensure plus icon button stays visible when menu is open (#58482)
Similar treatment to the ellipsis menu, where we keep the icon button
that triggers the menu visible, so we know where the menu is anchored
to. This was missing from a recent PR where we improved the drafts UX.

Release Notes:

- N/A
2026-06-03 23:23:01 +00:00
zed-zippy[bot] 971977a907 extension_ci: Bump extension CLI version to ca0fd8d (#58476)
This PR bumps the extension CLI version used in the extension workflows
to `ca0fd8d4e16e0e2687058552a9545625f00e0fb3`.

Release Notes:

- N/A

Co-authored-by: zed-zippy[bot] <234243425+zed-zippy[bot]@users.noreply.github.com>
2026-06-03 22:14:37 +00:00
Marshall Bowers 43ff9ec403 danger: Fix typo (#58475)
This PR fixes a small typo in the Danger message for modified database
schema files.

Release Notes:

- N/A
2026-06-03 22:10:12 +00:00
Danilo Leal 4ab04b3245 Use button component for Mermaid block controls (#58473)
Tiny one here, just to maintain Ui consistency as I noticed the custom
div-built buttons were not using theme tokens for coloring the different
states.

<img width="600" alt="Screenshot 2026-06-03 at 6  54@2x"
src="https://github.com/user-attachments/assets/678474f1-1807-4993-ac15-928a0033338d"
/>

Release Notes:

- N/A
2026-06-03 22:04:36 +00:00
Anthony EidandYara b76e0bc9dd Fix hang detection crash when foreground stats are missing (#58464)
Register the foreground thread with the GPUI profiler before starting
hang detection, so foreground task statistics are available when the
hang detection thread samples profiler data.

cc: @yara-blue I choose to leave the expect statements because it seems
like an invariant that we should uphold. Let me know if you would rather
have early returns and telemetry if they're hit

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 FR-58

Release Notes:

- Fixed a crash in hang detection when foreground thread statistics were
missing.

---------

Co-authored-by: Yara <git@yara.blue>
2026-06-03 21:58:23 +00:00
Sathwik Chirivelli ca0fd8d4e1 git_graph: Add tree view for commit changed files (#58198)
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

Summary:

- Added a toggleable tree view for changed files in the git graph commit
details panel
- Reused shared ListItem rows and file icon folder rendering for
changed-file entries
- Kept flat view available for status-sorted changed files

Tests:

- cargo check -p git_graph

Release Notes:

- Improved commit details changed-file lists with an optional tree view
2026-06-03 21:45:33 +00:00
Finn Evers d8278a56cb ci: Add merge queue trigger to danger workflow (#58467)
Release Notes:

- N/A
2026-06-03 21:33:06 +00:00
Marshall Bowers 7e42c0bb1a danger: Require attestation that database schema migrations have been applied (#58469)
This PR updates the Danger check for touching the Collab schema files to
require attestation that the database schema migrations have been
created and applied.

If there are changes to the schema files without the attestation, Danger
will fail the status check with an error:

<img width="959" height="635" alt="Screenshot 2026-06-03 at 4 58 56 PM"
src="https://github.com/user-attachments/assets/e0857137-b351-4212-a023-13a7d53f5934"
/>

When the attestation clause is present, Danger will report it as such:

<img width="901" height="333" alt="Screenshot 2026-06-03 at 4 59 45 PM"
src="https://github.com/user-attachments/assets/098b0ce4-f86e-4d41-b6af-765bc015fe6e"
/>

Release Notes:

- N/A
2026-06-03 21:19:31 +00:00
Marshall Bowers 21212496b5 collab: Add a warning about modifying database schema files (#58468)
This PR updates the test database schema files in Collab with a warning
about adding the corresponding database migration in Cloud before
merging any changes.

This should pair with the Danger warning to provide additional
signposting (and also for agents who may be modifying the files).

Includes the re-dumped schema for the addition of the `language_name`
column on the `language_servers` table.

Release Notes:

- N/A
2026-06-03 20:53:00 +00:00
Ben KunkleandNbarry b713cac496 ep: Add accepted and explicit reject fetching (#58434)
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 or Added/Fixed/Improved ...

Co-authored-by: Nbarry <nbarry@zed.dev>
2026-06-03 20:51:15 +00:00
Danilo Leal ddb4f987ad Improve markdown preview styles (#58465)
Closes https://github.com/zed-industries/zed/issues/58364

This PR adjusts heading and body text font size (mostly reducing them a
bit), as well as colors (making the body text slightly darker than
headings), and content separation, through adding a bottom border to
headings until H3.

| Before | After |
|--------|--------|
| <img width="2620" height="2044" alt="Screenshot 2026-06-03 at 5 
01@2x"
src="https://github.com/user-attachments/assets/d10c7916-e4cb-4999-8be1-08e26793fd35"
/> | <img width="2622" height="2044" alt="Screenshot 2026-06-03 at 5 
02@2x"
src="https://github.com/user-attachments/assets/13105982-283d-436b-973e-b6198cd2503b"
/> |

Release Notes:

- Improved markdown preview styles, making it more legible and easier to
parse.
2026-06-03 20:38:23 +00:00
MartinYe1234 6014f59451 Fix external tool call locations (#58367)
Summary:

- Allow agent tool-call locations outside visible worktrees to resolve
as local buffers.
- Fall back to opening absolute paths from the tool-call click handler.

Tests:

- cargo test -p acp_thread
test_tool_call_location_resolves_external_file
- cargo check -p agent_ui

Closes AI-362
Release Notes:

- Fixed opening agent-created files outside the current project, such as
global skill files.
2026-06-03 19:48:08 +00:00
Henrique FerreiroandDanilo Leal 131161c08f Add Gerrit icon for Chromium hosting provider (#57713)
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)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Improves [#44738](https://github.com/zed-industries/zed/pull/57500) by
including an icon for the Chromium code review remote. The Gerrit SVG
icon was created by Claude, using
https://commons.wikimedia.org/wiki/File:Gerrit_icon.svg#/media/File:Gerrit_icon.svg
as source.

<img width="167" height="66" alt="Screenshot 2026-05-26 at 11 48 46"
src="https://github.com/user-attachments/assets/d6a85751-3b86-4e30-a090-632f8b97d925"
/>

Release Notes:

- Added icon for the Chromium code review remote provider.

---------

Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
2026-06-03 19:29:26 +00:00
Marshall Bowers c4cb8aef59 collab: Only access github_user_id and github_login columns in tests (#58457)
This PR marks the `github_user_id` and `github_login` columns on the
`User` database model as only being accessible in tests.

Closes CLO-829.

Release Notes:

- N/A
2026-06-03 19:20:14 +00:00
morgankrey 0cd94e0def Document Billing Manager role (#58447)
- add Billing Manager to the organization roles docs with a capability
matrix
- update Business and billing docs to explain non-paid-seat billing
access
- update billing docs for self-serve tax ID updates

Release Notes:
- N/A
2026-06-03 18:17:18 +00:00
Lena 4819faaabc Only notify slack on confirmed and common P0/P1s (#58399)
Release Notes:

- N/A
2026-06-03 16:18:41 +00:00
Danilo Leal c6f051a5da Fix update version button stuck on "Downloading" step (#58435)
Very often, I'd wake up, to which point there's a new Nightly release
out, and the update button would be stuck in the "Downloading..." step.
It'd only immediately change its state to "Restart" once I quit the app
and re-open it again. Turns out we were just missing a cx.notify in the
callback to trigger a re-render.

Release Notes:

- Fixed a bug where the update version button would be stuck in the
"Downloading..." step.
2026-06-03 16:06:15 +00:00
Ben KunkleandOleksiy 9714536782 Fix jump capture (#58430)
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 or Added/Fixed/Improved ...

---------

Co-authored-by: Oleksiy <oleksiy@zed.dev>
2026-06-03 15:50:50 +00:00
Anthony Eid 19b7625a67 agent: Fix a UTF-8 boundary panic in the agent streaming parser (#58432)
The parser stores emitted byte offsets between partial tool-call parses.
Because partial JSON can be repaired differently as more bytes arrive, a
byte offset that was valid in an earlier string can land inside a
multibyte character in a later string. We now normalize those offsets
with `find_char_boundary` before slicing.

Added property tests covering boundary-sensitive write/edit streaming
sequences to prevent regressions.

Fixes Sentry ZED-8Y1 / 7523469866.

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:

- Fixed a crash that could occur while streaming agent edits containing
multibyte characters.
2026-06-03 15:49:01 +00:00
Bennet Bo FennerandRichard Feldman 0357c4a8d2 agent: Fix compaction limit (#58431)
Release Notes:

- N/A

Co-authored-by: Richard Feldman <oss@rtfeldman.com>
2026-06-03 15:39:50 +00:00
zed-zippy[bot] 8d5c02cb4b Bump Zed to v1.7.0 (#58427)
Release Notes:

- N/A

Co-authored-by: zed-zippy[bot] <234243425+zed-zippy[bot]@users.noreply.github.com>
2026-06-03 15:28:33 +00:00
Danilo Leal 6eee96f4f1 settings_ui: Make skills page UI more consistent with others (#58425)
Mainly around ensuring the section dividers are visible and placing the
link/share button in the same place as the other items in the
regular/main settings UI page.

<img width="600" alt="Screenshot 2026-06-03 at 11  57@2x"
src="https://github.com/user-attachments/assets/69233da6-e743-435b-911a-6dd70c079560"
/>

Release Notes:

- N/A
2026-06-03 15:08:29 +00:00
Lena 19b91c4a8c Stop stalebot from nagging on the same issues (#58418)
We've been doing it manually when the stalebot keeps coming back to
deep-sitting bugs that we'll pretty much never fix accidentally / in
passing, now we're automating it: the stalebot will lay off the bugs
that have already gone through the cycle of “reported — stalebot asks to
confirm — the users confirm” once.
This might need to be complemented with a yearly sweep of the `never
stale` issues as a sanity check, but first we just shed the manual work.

Release Notes:

- N/A
2026-06-03 14:18:29 +00:00
Cameron Mcloughlin a5f0dc322d mermaid: The other half of #57967 (#58419)
I was a silly goose didn't notice my `git push` failed, so merged #57967
without a critical commit, and some follow-ups.

This PR just cherry-picks those commits.

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-06-03 14:10:43 +00:00
Matei Opreaanddino 3f0d233058 theme_selector: Mark the active theme with a check icon (#58404)
While browsing themes in theme selector, the currently active theme will
always be marked with a check icon so you can always have a reference of
where you started from.

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)
- [ ] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Here's a preview: 
<img width="950" height="806" alt="Screenshot 2026-06-03 at 13 09 46"
src="https://github.com/user-attachments/assets/2081d9ec-b56d-4542-be58-e59e3569bc7a"
/>
<img width="958" height="818" alt="Screenshot 2026-06-03 at 13 09 52"
src="https://github.com/user-attachments/assets/134d933f-c9de-4b2c-80f5-ed5be4fb2844"
/>


Release Notes:

- Improved the theme and icon selectors to display a check next to the
active theme

---------

Co-authored-by: dino <dinojoaocosta@gmail.com>
2026-06-03 13:56:42 +00:00
26e69b9d9e sidebar: Add right-click menu to thread items (#58232)
Closes AI-286

This PR adds a right-click menu to thread items in the sidebar. A big
motivation for this addition was surfacing the "regenerate thread title"
action. And because this action and the "open thread as markdown" action
previously only worked on the already-loaded agent panel, there was a
load of plumbing needed to make that work even for threads in workspaces
that haven't been loaded, mostly using the thread metadata store. At the
end of the day, the title regeneration feature is only possible for the
Zed agent, so this is gated from external agents. But I believe it's now
in a slightly nicer spot due to some refactors to better expose the
state in which the title regeneration can fall into.

Release Notes:

- Agent: Added a right-click menu to thread items in the sidebar,
allowing to regenerate a thread title, rename a thread title, open the
thread as markdown, and archive it.

---------

Co-authored-by: zed-zippy[bot] <234243425+zed-zippy[bot]@users.noreply.github.com>
Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
2026-06-03 13:44:48 +00:00
Ben Brandt 5efd6f68c7 git_ui: Make git_ui call support optional (#58413)
Broke the headless builds for evals. Open to cleaner ways of doing
this...

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-06-03 13:18:45 +00:00
Latias94andcameron 6d72acdb99 markdown: Update merman renderer to 0.6 (#57967)
Following up on #57644 by @cameron1024, this PR updates `merman` to
v0.6.

With merman 0.6's new raster-safe SVG pipeline, Zed can move generic
`usvg`/`resvg` cleanup passes out of this crate and rely on merman for
them instead.

**What's moved to merman:**
- `foreignObject` fallback text generation
- Unsupported CSS cleanup
- Invalid SVG attribute cleanup

**What's kept in Zed:**
- Theme CSS injection and accent color assignment
- Zed-specific fallback overlay handling

**Integration note:**
In merman v0.6, fallback overlay groups are marked with
`data-merman-foreignobject="fallback"` and preserve source classes like
`node` or `section-*`, so host CSS can still style fallback text. This
PR updates Zed's accent tracker to check for this marker, ensuring
fallback overlays are not treated as real layout nodes.

I also added a render-stage test for the new contract: the SVG output
from `render_mermaid` is already raster-safe before Zed-specific
post-processing runs.

---

### 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:
- Improved rendering of Mermaid diagrams in Markdown previews.

### Tests:
- `cargo +1.95 fmt --check -p mermaid_render`
- `cargo +1.95 test -p mermaid_render`
- `cargo +1.95 clippy -p mermaid_render --all-targets -- -D warnings`
- `git diff --check HEAD~1..HEAD`

---------

Co-authored-by: cameron <cameron.studdstreet@gmail.com>
2026-06-03 13:10:54 +00:00
Oleksiy Syvokon 85d235b439 Clear LLM token and model list on sign out (#57724)
Closes #FR-20

Release Notes:

- Fixed Zed provider models remaining available after sign-out
2026-06-03 12:45:17 +00:00
Oleksiy Syvokon 9e4943200f ep: Back off Zeta requests after Cloud timeout (#58394)
Pause edit prediction requests for 10 seconds after receiving a 408
timeout response. This should help Cloud to recover from spikes.


Release Notes:

- N/A
2026-06-03 12:27:09 +00:00
Oleksiy Syvokon ed41a02df0 ep: Make retrieved context limit configurable (#58405)
The `--related-context-limit` param controls how many tokens can we
allocate for editable context. Useful for evaluation primarly.


Release Notes:

- N/A
2026-06-03 12:19:27 +00:00
176622acf9 agent: Improve compaction UI (#58409)
Reworked the UI so we can actually see the compaction output. Design
pass TBD


https://github.com/user-attachments/assets/89108398-476b-493f-a5eb-d20159fc6830



Release Notes:

- N/A

---------

Co-authored-by: Gaauwe Rombouts <mail@grombouts.nl>
Co-authored-by: Richard Feldman <oss@rtfeldman.com>
2026-06-03 12:18:28 +00:00
Lukas Wirth 08934fa550 Fix panic in uncommitted_diffs_for_events (#58410)
nightly only i believe so no rel notes
Release Notes:

- N/A or Added/Fixed/Improved ...
2026-06-03 12:14:44 +00:00
95dfe8ca6d vim: Fix increment/decrement for negative numbers without gaps (#58327)
Finally continuing from PR #35200:

I adapted the fix to the changed find_target() logic and added more
tests for version strings like `0.82.46`.
This is a different but similar fix compared to #47356 for helix mode -
not sure if this can and should be unified?

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)
(should not affect UI at all)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Closes #35193 

Release Notes:

- Fixed vim's increment (`ctrl-a`) and decrement (`ctrl-x`) commands
skipping the number under the cursor in dotted strings like version
numbers (e.g. `0.81.46`) and hyphened date strings (e.g. `2015-02-01`)

---------

Co-authored-by: Stefan Bethge <kjyv@users.noreply.github.com>
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: dino <dinojoaocosta@gmail.com>
2026-06-03 11:31:38 +00:00
Lukas Wirth 8ed0f5f05a agent_ui: Cache cross-channel thread import check off the render loop (#58402)
channels_with_threads opened a fresh SQLite connection per
release-channel database on every call, and the sidebar called it twice
per frame from its render path, blocking the render loop on disk I/O.

Run the per-channel checks on a background thread and cache the
resulting channel names once at sidebar construction, since the
per-channel databases cannot change while this process runs.

Release Notes:

- Fixed a cause of stutters in the agent panel sidebar rendering
2026-06-03 11:29:40 +00:00
Lena b1c1e3fc1d Add AI Policy to CONTRIBUTING.md (#58397)
Release Notes:

- N/A
2026-06-03 11:07:23 +00:00
Smit Barmase 3873589c02 go: Fix table test detection in large files (#57277)
Closes #46881

Depends on #57276.

Implements `GoRunnableResolver` to post-process table test matches. The
resolver picks the correct string field by comparing against the field
used in `t.Run(tc.<field>, ...)`.

Release Notes:

- Fixed Go table tests not showing run buttons in files with many test
cases.
2026-06-03 10:53:22 +00:00
Oleksiy SyvokonandEric Holk ade2b219f7 ep: Editable context collectors and metrics (#58400)
This change adds metrics for evaluating editable context collectors and
the collectors themselves:

- `cursor excerpt`: small area around the cursor.
- `current-file`: the full file that contains the cursor.
- `edit-history`: excerpts around edit history edits.
- `edit-history-file`: full files referenced by the edit history.
- `git-log`: files related to the cursor file according to recent git
co-change history.
- `oracle-file`: full files referenced by the expected patches. This is
an oracle/evaluation-only source because it uses the target patch.

Individual collectors can be enabled by passing a comma-separated list
like this: `ep context --type=edit-history,current-file`. There's also a
preset, `--type=editable`, which will enable all collectors except
oracle.

This change also adds the
`.prompt_input.related_files[0].excerpts[0].context_source` field.

Editable context is only accessible via ep-cli for now.

Release Notes:

- N/A

---------

Co-authored-by: Eric Holk <eric@zed.dev>
2026-06-03 10:10:34 +00:00
Tom Houlé 74180d86fe cloud_api_client: Add a few helpers for response handling (#58346)
This centralizes some repeated logic across `cloud_api_client`, to map
generic request failures (`ConnectionFailed`, 401s) to errors and read
response bodies, handling failures there too.

Closes CLO-759.

Release Notes:

- N/A
2026-06-03 09:18:14 +00:00