Commit Graph
39151 Commits
Author SHA1 Message Date
Marshall Bowers 94b9628d42 Revert "Sign out upon receiving an Unauthorized response when acquiring an LLM token (#49661) (#49669)
This PR reverts #49661, as the Collab tests are failing (but were not
caught in CI).

This reverts commit 2f9350bb6b.

Release Notes:

- N/A
2026-02-19 23:54:03 +00:00
Marshall Bowers 2f9350bb6b Sign out upon receiving an Unauthorized response when acquiring an LLM token (#49661)
This PR makes it so the user gets signed out upon receiving an
Unauthorized response when acquiring an LLM token.

Closes CLO-324.

Release Notes:

- N/A
2026-02-19 22:23:40 +00:00
Eric Holk 41c007f9ee Fix subagent card buttons getting clipped by long titles (#49648)
When a subagent title is long, the header buttons (expand/collapse,
maximize, stop) were pushed out of view because the title area grew
unconstrained.

## Fix

- Add `min_w_0()` and `overflow_hidden()` to the title container so it
can shrink below its content width
- Add `truncate()` to the title label so it shows an ellipsis when
clipped
- Add `flex_shrink_0()` to the buttons container so it never gets
squeezed out
- Add a tooltip on the title area showing the full text on hover

Release Notes:

- N/A
2026-02-19 13:49:31 -08:00
claire 90d8c26796 Fix visual test screenshot functionality (#49649)
After #49277 was merged, all visual tests failed to run with the error
"FAILED - render_to_image not implemented for this platform".

Release Notes:

- N/A
2026-02-19 22:48:33 +01:00
Finn Evers be26e1a27f editor: Fix relative line numbering with deleted blocks present (#49656)
This tackles another issue where we would incorrectly show two absolute
line numbers with relative line numbering enabled when it really should
only have been the current active line number.

Sadly, no tests rn for this as we would need a better test infra for
that to properly catch/test this bug. But with the refactored logic, I
think this is easier to understand at glance, so at least theres that

Release Notes:

- Fixed an issue with relative line numbers where some rows would be
missing their relative line number with deleted hunks showing.
2026-02-19 22:34:14 +01:00
Piotr Osiewicz 6a9d259fec gpui_linux: Fix headless build (#49652)
Closes #ISSUE

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

Release Notes:

- N/A
2026-02-19 20:38:40 +00:00
62af5b8105 Allow using Zeta through an arbitrary OpenAI-compatible self-hosted API (#49554)
Release Notes:

- Added the ability to use a self-hosted OpenAI-compatible server for
edit predictions.

---------

Co-authored-by: Ben Kunkle <ben@zed.dev>
Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com>
2026-02-19 20:18:36 +00:00
Cole Miller e07d0ba2e4 Add telemetry for stack trace view (#49642)
Release Notes:

- N/A
2026-02-19 19:17:11 +00:00
morgankrey 04bdd17de2 Fix JS syntax error in docs_suggestions cherry-pick job (#49643)
## Summary

Fixes the `SyntaxError: Unexpected identifier 'gemini'` error in the
cherry-pick documentation suggestions workflow.

## Problem

The 'Post suggestions as PR comment' step was directly interpolating
markdown content into a JavaScript template literal:

```javascript
const suggestions = `${{ steps.analyze.outputs.suggestions }}`;
```

When the suggestions contained backticks, `${}` sequences, or other
special characters (like the `gemini-3.1-pro-preview` model name in
markdown code blocks), it broke the JavaScript syntax.

## Solution

Write suggestions to a file in `$RUNNER_TEMP` and read it using
`fs.readFileSync()` in the script step. This avoids all GitHub Actions
template interpolation and JavaScript string parsing issues.

## Testing

This should fix the failed run:
https://github.com/zed-industries/zed/actions/runs/22194396124/job/64190762087

Release Notes:

- N/A
2026-02-19 13:10:25 -06:00
Eric Holk 1e847c1eb4 Fix panic involving growing and shrinking selections while buffer size changes (#48898)
Repro steps:

1. Make a Rust file and check it in to git
2. Delete a lot of the file
3. Expand all the diffs (cmd+")
4. Select larger syntax node (ctrl+cmd+right)
5. Collapse all the diffs
6. Select smaller syntax node (ctrl+cmd+left)
7. Panic!

The problem was we were using byte offsets instead of anchors so after
we shrank the buffer by collapsing diffs we'd be pointing past the end
of it.

Release notes:
- N/A
2026-02-19 19:04:54 +00:00
morgankrey 32f05acf9f Add Gemini 3.1 Pro to model documentation (#49640)
## Summary

- Added Gemini 3.1 Pro to the pricing table, context windows table, and
page metadata in `docs/src/ai/models.md`
- Listed alongside existing Gemini 3 Pro (both remain available)

Release Notes:

- N/A
2026-02-19 12:56:50 -06:00
Richard Feldman 17abde72b0 Add gemini-3.1-pro-preview model (#49622)
Closes AI-48

Release Notes:

- Added support for Gemini 3.1 Pro
2026-02-19 13:19:14 -05:00
Ben BrandtandJakub Konka 85c23d0d0b agent: Improve the subagent task structure (#49629)
Removes tool filtering since this was throwing off certain models, and
also allows for more generic task prompts that don't always require
summaries. Since the models usually provide a wrap-up message, we don't
have to wait for another turn.

This also sets us up to allow the agent to re-interact with an existing
subagent thread.

Release Notes:

- N/A

---------

Co-authored-by: Jakub Konka <kubkon@jakubkonka.com>
2026-02-19 17:58:59 +00:00
Piotr OsiewiczandEric Holk bc31ad4a8c gpui: Extract gpui_platform out of gpui (#49277)
#2874 on steroids

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

Release Notes:

- N/A

---------

Co-authored-by: Eric Holk <eric@zed.dev>
2026-02-19 18:57:49 +01:00
DinoandZed Zippy da7b8f2939 Fix font weight in multiple elements (#49539)
* Update the font weight used in the Agent Panel's editor to respect the
`buffer_font_weight` setting.
* Update the font weight used in the Command Palette to use the
`ui_font_weight` setting value, seeing as the command palette is using
the `ui_font` settings for the font family and features
* Update the font weight used in the popovers to match the
`buffer_font_weight`, as it's also using the buffer font family and
features
* Update the `LabelLike.buffer_font` method in order to correctly set
the font weight, which fixes the font weight used in the file header
when displaying a multibuffer editor

Release Notes:

- Fixed incorrect font weight in the Command Pallete input
- Fixed missing font weight the Agent Panel's buffer
- Fixed missing font weight the Hover Popover
- Fixed missing font weight in Markdown's code block and inline code

---------

Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com>
2026-02-19 17:49:59 +00:00
Lukas Wirth 037add06e4 editor: Fix bracket colorization discoloring pure deletion diff hunks (#49618)
Release Notes:

- N/A *or* Added/Fixed/Improved ...

Co-authored by: Cole Miller <cole@zed.dev>
2026-02-19 17:34:26 +00:00
John D. Swanson 3bd1b0f759 Temporarily disabling codeowners to resolve noisy routing (#49623)
Just a procedural change to codeowners, no other items affected.

Release Notes:

- N/A
2026-02-19 12:09:20 -05:00
Kirill Bulatov e8d453721c Revert "Enable type on search by default for the project search (#49374)" (#49619)
This reverts commit 1d66bbe06f.

Needs 2 more fixes:

* enter does not move to the first excerpt anymore
* there could be situations when a narrowed search does not decrease the
excerpt enough to see the result onscreen

Release Notes:

- N/A
2026-02-19 16:24:54 +00:00
Kunall Banerjeeanddino 8815573101 buffer_search: Don’t hide UI icons if search query is too large (#49493)
Remove tracking of editor width in buffer search, removing the behavior
where the UI icons used in the search bar would be hidden if the search
query need to fill the whole element's width.

Closes #49446.

Release Notes:

- Don’t hide UI icons in buffer search if search query is too large

Co-authored-by: dino <dinojoaocosta@gmail.com>
2026-02-19 15:57:50 +00:00
Tomas Virgl 712914a1f7 go: split definition and call highlights for functions, methods, and types (#49120)
This allows definitions to use a different highlight than function
calls.

Release Notes:

- go: Add definition highlights for functions, methods, and types
2026-02-19 15:53:33 +00:00
Oleksiy Syvokon 3a1c3757dc ep: Fix pull examples query (#49610)
Release Notes:

- N/A
2026-02-19 15:09:03 +00:00
Kirill Bulatov d8b3f476a5 Fix the panic when trying to interact with editor-like not-editors (#49608)
For example, LSP log view is not a real editor but can pretend to be
one.

Release Notes:

- Fixed dev highlights view panicking when interacting with editor-like
not-editors
2026-02-19 15:04:28 +00:00
Finn Evers 4efd07bb03 zlog: Broaden filter for usvg parser warnings (#49607)
Noticed this while looking into #49595

Release Notes:

- N/A
2026-02-19 14:59:50 +00:00
Ben KunkleandZed Zippy 2a0a304249 Seperate throttles for jump and edit based predictions (#49499)
Closes #ISSUE

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

Release Notes:

- N/A *or* Added/Fixed/Improved ...

---------

Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com>
2026-02-19 09:56:10 -05:00
Danilo Leal aaa87a230a auto_update_ui: Add announcement toast component (#49543)
This PR adds the `AnnouncementToast` component that we can use whenever
a new version introduces a new and special feature that's worthy of a
flashier announcement. We can pick the specific version we want to
target, and instead of showing the regular "View Release Notes" toast,
we'd show this new one instead.

For now, everything is turned off as we're not sure yet which version we
will be targeting for an upcoming release.

<img width="550" height="1964" alt="Screenshot 2026-02-18 at 9  06@2x"
src="https://github.com/user-attachments/assets/19930b15-261b-416f-992e-6e28447beb27"
/>

Release Notes:

- N/A
2026-02-19 10:41:16 -03:00
Bennet Bo Fenner 24a81d4e85 git_ui: Remove dependency on agent crates (#49599)
Before you mark this PR as ready for review, make sure that you have:
- [ ] Added a solid test coverage and/or screenshots from doing manual
testing
- [ ] Done a self-review taking into account security and performance
aspects
- [ ] Aligned any UI changes with the [UI
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)

Release Notes:

- N/A
2026-02-19 14:03:41 +01:00
Oleksiy Syvokon 3129d7e6b5 ep: Parse "user accepted prediction" markers in evals (#49598)
Also:
- Add two evals
- Remove duplicated Example 6 from the teacher prompt 

Release Notes:

- N/A
2026-02-19 13:01:07 +00:00
morgankrey b6cd147b9f Add retry logic to docs_suggestions workflow for transient Factory API failures (#49594)
Add exponential backoff retry logic (3 attempts with 5s/10s/15s delays)
to the Droid CLI installation and
docs-suggest script execution steps in both the batch-suggestions and
cherry-pick-suggestions jobs.

This handles intermittent Factory API authentication issues that can
cause workflow failures when the API is temporarily unavailable or
rate-limited.

Release Notes:

- N/A
2026-02-19 07:00:18 -06:00
Patrik Levákanddino bad3df6e53 vim: Apply linked edits for delete/change/substitute (#48458)
Ensure that editing one tag in a linked pair correctly mirrors the change 
to the other tag for Vim delete/change/substitute commands, visual 
mode operations, and the standard editor delete action.

Extract a `LinkedEdits` struct to deduplicate linked edit collection and
application across `handle_input`, `replace_selections`, `do_completion`,
`backspace`, and `delete`. Introduce `linked_edits_for_selections` as a
shared helper for building linked edits from the current selections.

Closes #35941

Release Notes:
- Fixed linked edits for delete/change/substitute commands so tag pairs
stay in sync.

---------

Co-authored-by: dino <dinojoaocosta@gmail.com>
2026-02-19 12:54:41 +00:00
Marco Mihai Condrache 9d779879f2 editor: Remove duplicate method (#49592)
`highlight_background` and `highlight_background_key` currently have the
same implementation

Release Notes:

- N/A
2026-02-19 12:29:20 +00:00
Bennet Bo Fenner 6652c5f4b2 agent: Remove MAX_PARALLEL_SUBAGENTS (#49593)
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)

Requests will be rate-limited by our internal logic, but it will "just"
work.

Release Notes:

- N/A
2026-02-19 12:27:49 +00:00
Lukas Wirth d6c0d3c8bd project: Block less in Respository::paths_changed (#49584)
Release Notes:

- N/A *or* Added/Fixed/Improved ...
2026-02-19 11:25:36 +00:00
Jakub Konka 9a26eabf0b buffer_diff: Reduce number of entity clones in base_text_buffer (#49573)
Release Notes:

- Improved split performance by reducing number of entity clones for
very large pre-loaded multibuffers.
2026-02-19 11:57:43 +01:00
John Tur 1ad5ec6db2 Support profiling remote server in the miniprofiler (#49582)
Release Notes:

- The `zed: open performance profiler` action can now display profiling
data from the remote server.
2026-02-19 10:52:53 +00:00
Lukas Wirth fc79a6fbe7 gpui: Remove some unnecessay heap allocations in entity handling (#49579)
Release Notes:

- N/A *or* Added/Fixed/Improved ...
2026-02-19 10:10:32 +00:00
Lukas Wirth 2786d36786 editor: Yield less frequently in WrapSnapshot::update (#49497)
Every yield will cause the background task to get rescheduled causing
additional thread/context switching, so doing so for every wrapped row
is a bit excessive

Release Notes:

- N/A *or* Added/Fixed/Improved ...
2026-02-19 09:52:33 +00:00
Xiaobo LiuandKirill Bulatov dace3ab152 project: Log errors when notifying JSON language server (#49480)
Release Notes:

- N/A

---------

Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
2026-02-19 09:00:55 +00:00
Lukas Wirth 37d54d8482 multi_buffer: Bring update_path_excerpts ordering workaround back (#49563)
cc https://github.com/zed-industries/zed/pull/49290

Release Notes:

- N/A *or* Added/Fixed/Improved ...
2026-02-19 08:39:20 +00:00
Shardul VaidyaandOna 03416097a8 bedrock: Add Claude Sonnet 4.6 (#49439)
Release Notes:

- Added support for Anthropic Claude Sonnet 4.6

Co-authored-by: Ona <no-reply@ona.com>
2026-02-19 07:23:27 +01:00
morgankrey 2132c54abc Fix gh auth conflict when GH_TOKEN is already set (#49556)
Fixes the workflow failure where `gh auth login --with-token` fails
because `GH_TOKEN` is already set in the environment.

The error was:
```
The value of the GH_TOKEN environment variable is being used for authentication.
To have GitHub CLI store credentials instead, first clear the value from the environment.
```

The fix uses a subshell to unset `GH_TOKEN` before calling `gh auth
login`:
```bash
echo "$GH_TOKEN" | (unset GH_TOKEN && gh auth login --with-token)
```

Release Notes:

- N/A
2026-02-18 20:58:25 -06:00
Zed Botandswannysec 09cd340b6a Update CODEOWNERS (includes suggested entries) (#49552)
This PR updates the CODEOWNERS file based on the current
team-membership-rules.yml in the codeowner-coordinator repo.

**Coverage:** 100% - all paths have an owner.

## ⚠️ Suggested Entries - Review Required

The following paths were assigned based on git blame analysis of team
members.
**Please verify these assignments are correct before merging.**

| Path | Suggested Team | Based On | Commits |
|------|---------------|----------|---------|
| `crates/git_graph` | developer-tools-team | Anthony Eid | 4 |
| `crates/open_path_prompt` | zed-dev-team | Joseph T. Lyons | 1 |
| `crates/platform_title_bar` | platform-team | Finn Evers | 1 |
| `crates/remote_connection` | ecosystem-team | Piotr Osiewicz | 1 |
| `crates/shell_command_parser` | ai-team | Richard Feldman | 2 |
| `crates/sidebar` | platform-team | Finn Evers | 2 |

These entries are marked with `# SUGGESTED` comments in the CODEOWNERS
file.
If incorrect, update `team-membership-rules.yml` in the
codeowner-coordinator repo.

Release Notes:

- N/A

---
_This PR was auto-generated by the
[codeowner-coordinator](https://github.com/zed-industries/codeowner-coordinator)
workflow._

Co-authored-by: swannysec <11968319+swannysec@users.noreply.github.com>
2026-02-18 21:21:39 -05:00
Austin CummingsandKirill Bulatov 157a02e7d9 Fix OpenFiles action not respecting use_system_path_prompts setting (#47027)
The OpenFiles action was always using the system file picker dialog,
ignoring the use_system_path_prompts setting. This adds a
workspace-level handler that calls prompt_for_open_path, which respects
the setting, instead of falling through to the global handler.

Closes #46386

Release Notes:

- Fixed "workspace: open files" not respecting "use_system_path_prompts"
setting

---------

Co-authored-by: Kirill Bulatov <kirill@zed.dev>
2026-02-19 04:02:29 +02:00
Cole Miller d5d69369a3 git: Mitigate panic in split diff (#49546)
Release Notes:

- N/A
2026-02-18 20:16:04 -05:00
Eric Holk 9b076586f1 Fix crash: vim paste panics on editor-copied entire-line selections (#49134)
When clipboard data was produced by the editor's copy/cut with multiple
entire-line selections, vim's paste would panic with `byte index N is
out of bounds`.

The editor's `do_copy` and `cut_common` skip the `\n` separator between
clipboard selections when the previous selection was an entire-line
selection (because the text already ends with `\n`). However, vim's
paste code unconditionally did `start_offset = end_offset + 1`, always
assuming a `\n` separator exists between every pair of selections. This
caused the accumulated offset to exceed the text length, resulting in a
string slicing panic.

The fix checks `clipboard_selection.is_entire_line` to decide whether to
skip the separator, matching the behavior of the editor's own `do_paste`
method. The same fix is applied to both the vim and helix paste
implementations.

Release Notes:

- Fixed a crash when using vim paste on clipboard data copied with the
editor's copy command containing multiple entire-line selections.
2026-02-18 15:55:38 -08:00
Marshall Bowers 4491c2cac8 collab: Remove unused AccessToken model (#49542)
This PR removes the `AccessToken` database model and its related
queries, as they are no longer used.

Closes CLO-306.

Release Notes:

- N/A
2026-02-18 23:47:11 +00:00
Marshall Bowers f07cec59de collab: Validate access tokens through Cloud (#49535)
This PR updates Collab to make it validate access tokens through Cloud
instead of doing it in-house.

We're reusing the `GET /client/users/me` endpoint—which is what we also
call on the client—to validate the user's access token.

We only need to do this when establishing a WebSocket connection, so the
increased latency of a network hop shouldn't be a problem.

Closes CLO-308.

Release Notes:

- N/A
2026-02-18 18:20:52 -05:00
morgankrey af050fc565 Fix git auth conflict in background_agent_mvp workflow (#49537)
Fix git auth conflict in background_agent_mvp workflow

The workflow was manually configuring git authentication with:
```bash
git config --local http.https://github.com/.extraheader "AUTHORIZATION: bearer ..."
```

This conflicted with the authentication already set up by
`actions/checkout@v4`, which uses `AUTHORIZATION: basic ...`.

The conflict caused all crash pipeline runs to fail with:
```
fatal: could not read Username for 'https://github.com'
```

This morning's run (22147984206) failed for all 15 crash candidates
(ZED-4VS, ZED-202, etc.) with this error.

Remove the redundant git config since actions/checkout already handles
authentication properly.

Release Notes:

- N/A
2026-02-18 17:19:31 -06:00
Kirill Bulatov d3fe7d9cfc Revert the gutter width limitation for multi buffers (#49536)
Follow-up of https://github.com/zed-industries/zed/pull/49374

This looks really bad when Zed zooms in and then out.

- N/A
2026-02-18 23:18:20 +00:00
morgankrey 045b740090 Fix shell quoting and gh auth in docs suggestions workflow (#49518)
Fixes two issues in the documentation suggestions workflow:

1. **Shell quoting bug**: PR titles containing quotes (e.g., `agent_ui:
Add the ability to undo "reject all"`) were breaking the shell script
because the title was substituted directly into the script. Moved
`PR_TITLE`, `PR_NUM`, and `OUTPUT_FILE` to environment variables where
special characters are handled safely.

2. **GH CLI auth issue**: The `gh` CLI sometimes fails to auto-detect
`GH_TOKEN` in the environment, causing `gh pr view` and `gh pr diff` to
fail with "Bad credentials". Added explicit `gh auth login --with-token`
in both the batch-suggestions and cherry-pick-suggestions jobs.

Release Notes:

- N/A
2026-02-18 16:26:15 -06:00
Richard Feldman 5b0a3de01c Add agent worktree directory setting + worktree info persistence (#49139)
Add `agent_worktree_directory` to `GitSettings` for configuring where
agent worktrees are stored (default: Zed data dir). Remove `Copy` derive
from `GitSettings`/`GitContentSettings` (incompatible with String field)
and fix downstream `.as_ref().unwrap()` call sites.

Define `AgentGitWorktreeInfo` (branch, worktree_path, base_ref) and add
it to `DbThread` + `DbThreadMetadata` for persistence and session list
display.

Closes AI-33

Release Notes:

- N/A
2026-02-18 22:20:31 +00:00