96035d1
ep: Repair predictions with too many edits (#49342)
Click to expand commit body
Also fixes batches upload Release Notes: - N/A
Oleksiy Syvokon created
96035d1
ep: Repair predictions with too many edits (#49342)
Also fixes batches upload Release Notes: - N/A
Oleksiy Syvokon created
92c0de0
acp: Claude Code -> Claude Agent (#49345)
Update based on https://platform.claude.com/docs/en/agent-sdk/overview#branding-guidelines ACP package will be updated shortly. Release Notes: - acp: Claude Code is now referred to as Claude Agent, per Anthropic branding guidelines.
Ben Brandt created
af4ecae
acp_thread: Log token usage when receiving `StopReason::MaxTokens` (#49343)
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 - [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: - N/A
Bennet Bo Fenner created
6f80235
bedrock: Model streamlining and cleanup (#49287)
Release Notes: - Improved Bedrock error messages: region-locked models ask the user to try a different region, rate limits and access errors are reported cleanly instead of as raw API responses - Streamlined Bedrock model list to 39 curated models - Fixed API errors when using non-tool models in agent threads --------- Co-authored-by: Ona <no-reply@ona.com>
Shardul Vaidya and Ona created
891f432
ep: Rework `ep repair` to use original teacher prompt (#49335)
It now creates multi-turn conversation, where first two messages are the original teacher prompt and output. This way, we'll have changes in teacher prompt automatically applied to repair without having to explicitly sync them. Release Notes: - N/A
Oleksiy Syvokon created
4344681
ep: Rely on editable_region tags when parsing teacher output (#49334)
Release Notes: - N/A
Oleksiy Syvokon created
fb66035
ep: Fix edit predictions not showing in new buffer (#49102)
Closes #49081 Release Notes: - N/A
Oleksiy Syvokon created
ae293de
ep: Add metrics for inserted/deleted tokens (#49330)
Other changes: - Changed tokenization to more code-aware tokenization from split-commit - Fixed word-diff implementation which was inefficient and sometimes incorrect Release Notes: - N/A
Oleksiy Syvokon created
806e944
Fix EP CLI issues found when generating new teacher predictions (#49327)
Release Notes: - N/A
Max Brunsfeld created
deb26f8
Update our notify crate to fix free after use panic (#49311)
Closes #49067 See https://github.com/zed-industries/notify/pull/2 for more details Note: notify already fixed this upstream, and I'm planning on using their crate as our dependency once their v9 is officially released. Release Notes: - Fix panic that could occur when navigating external code
Anthony Eid created
2df11f7
background-agent: Scaffold week-one crash MVP pipeline (#49299)
## Summary - add a new crash issue-linking subagent prompt (`.factory/prompts/crash/link-issues.md`) - add a scheduled/manual GitHub workflow for week-one background-agent runs (`.github/workflows/background_agent_mvp.yml`) - add Sentry candidate selection script to rank top crashes by solvability × population (`script/select-sentry-crash-candidates`) - add a local dry-run runner for end-to-end MVP execution without push/PR actions (`script/run-background-agent-mvp-local`) ## Guardrails in this MVP - draft PRs only (no auto-merge) - reviewer routing defaults to: `eholk,morgankrey,osiewicz,bennetbo` - pipeline order is: investigate -> link-issues -> fix ## Validation - `python3 -m py_compile script/select-sentry-crash-candidates script/run-background-agent-mvp-local` - `python3 script/select-sentry-crash-candidates --help` - `python3 script/run-background-agent-mvp-local --help` --------- Co-authored-by: John D. Swanson <swannysec@users.noreply.github.com>
morgankrey and John D. Swanson created
452696d
client: Add organizations to `UserStore` (#49320)
This PR adds the list of the user's organizations to the `UserStore`. Closes CLO-292. Release Notes: - N/A
Marshall Bowers created
fefb81c
git: Fix panic in split diff when edits cause excerpts to merge (#49122)
Our strategy for keeping excerpts in sync between the two sides of the split diff is generally - mutate the excerpts on the RHS - pull out the new excerpts for the affected path from the RHS - translate those ranges to the LHS - update the LHS excerpts with those ranges But this can break down when the translated ranges overlap on the LHS despite the original ranges not overlapping on the RHS. This can happen, for example, when a large deletion in a file crosses several excerpt boundaries. It's rare because normally excerpt boundaries in the project diff and branch diff are adjusted to keep entire diff hunks in view, but we defer this for dirty files, so it's not hard to trigger it when using the agent or editing an individual file while the diff is open in another tab. Release Notes: - Fixed a panic that could occur when editing files while the project diff or branch diff was open. --------- Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com>
Cole Miller and Zed Zippy created
a1b181f
agent: Fix duplicate word in agent system prompt template (#49309)
Release Notes: - N/A
Austin Cummings created
ed47f10
gpui: Fix content size scaling regression on X11 (#49174)
Closes #49172 - Fixes a regression on X11 where content size was divided by the scale factor twice after the wgpu migration, causing half-sized rendering on HiDPI screens. - Aligns X11 [content_size()] behavior with Wayland by returning logical pixel bounds directly. Video : [Screencast from 2026-02-14 18-58-36.webm](https://github.com/user-attachments/assets/cf4edf3b-7b93-4ded-bf46-e900be44b22b) Release Notes: - N/A
Om Chillure created
8c45f0c
docs: Remove Supermaven (#49317)
Closes #ISSUE 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: - N/A *or* Added/Fixed/Improved ... --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Katie Geer and Claude Opus 4.6 created
6cbeb84
Tune edit prediction teacher to leave fewer blank spots in predictions (#49315)
Release Notes: - N/A
Max Brunsfeld created
6b553e4
collab: Remove leftover impersonation code (#49314)
This PR removes some code left over from how we used to do impersonation for local development. The local development impersonation path is separate now, so we don't need all of this plumbing in Collab. Release Notes: - N/A
Marshall Bowers created
e269569
collab: Remove `GET /rpc_server_snapshot` endpoint (#49312)
This PR removes the `GET /rpc_server_snapshot` endpoint from Collab, as it is not being used (and also didn't seem to be functional). Release Notes: - N/A
Marshall Bowers created
2839506
collab: Remove `POST /users/:id/access_tokens` endpoint (#49297)
This PR removes the `POST /users/:id/access_tokens` endpoint from Collab, as it is no longer used. Closes CLO-290. Release Notes: - N/A
Marshall Bowers created
d168301
Reuse existing remote workspaces when opening files from the CLI (#49307)
Re-lands https://github.com/zed-industries/zed/pull/48891, which was reverted due to conflicts with multi-workspace. 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 Release Notes: - N/A
John Tur created
da2d4ca
ci: Install Linux dependencies for Collab deployment workflow (#49308)
This PR makes it so we install the necessary Linux dependencies for the Collab deployment workflow. Release Notes: - N/A
Marshall Bowers created
958798d
ci: Generate the Collab deployment workflow (#49306)
This PR updates the Collab deployment workflow to be generated with `cargo xtask workflows`. Release Notes: - N/A
Marshall Bowers created
0594076
xtask: Fix naming of `WorkflowType::ExtensionCi` variant (#49302)
This PR fixes the naming of the `WorkflowType::ExtensionCi` variant to match Rust naming conventions. Release Notes: - N/A
Marshall Bowers created
613f73b
ci: Move all Collab deployment steps to Namespace runners (#49300)
This PR removes the two remaining steps in the Collab deployment workflow to Namespace runners. The previous `runs-on` labels were no longer functional. Release Notes: - N/A
Marshall Bowers created
671c3e7
git_ui: Add button for the `branch diff` action (#49298)
This PR adds a button in the Git Panel to open the `git: branch diff` view. The button only shows if the staging area is clean/no changes and if the branch is not main/master. I've been using this action so much these days and we should expose it on the UI so it's more discoverable. <img width="500" height="1736" alt="Screenshot 2026-02-16 at 6 30@2x" src="https://github.com/user-attachments/assets/0b037811-2167-419f-b63f-9bdb12e4352e" /> Release Notes: - N/A
Danilo Leal created
f21d51c
editor: Fix sticky headers not accounting for deleted diff hunks (#49296)
Release Notes: - Fixed sticky headers sometimes disappearing when dealing with expanded deleted diff hunks
Lukas Wirth created
e9a8ef1
workspace: Fix read-only button tooltip for non-toggleable buffers (#48998)
Release Notes: - Fixed an incorrect hover label for read-only file lock buttons
Lukas Wirth created
248a3c6
multi_buffer: Fix `update_path_excerpts` inserting excerpts out of order (#49290)
Second attempt at fixing https://github.com/zed-industries/zed/pull/49047, this also removes some of the sorting hacks as they should ideally not be necessary anymore after this fix Release Notes: - N/A *or* Added/Fixed/Improved ...
Lukas Wirth created
9c889c1
editor: Batch calls to fold_buffer in ProjectDiff::refresh (#49278)
This change improves performance of project diff in that: * scrolling in split view for very large diffs (think chromium repo with `git reset HEAD~1000`) is now very smooth on macOS and fairly smooth on Linux * switching from split to unified is very smooth on macOS, and fairly smooth on Linux There still remains the case of (severe) hangs when switching from unified to split however, but it will be addressed in a follow-up PR. Anyhow, here's the screenshot of the Instruments.app capture of opening chromium repo in Zed in split view, scrolling a little, moving to unified, scrolling some more, and moving back to split. Prior to this change, split -> unified would cause a severe hang, whereas now it's a hang and thus feels much smoother already (without Instruments profiling is barely visible). Unified -> split severe hangs are still there but don't last as long. <img width="2301" height="374" alt="Screenshot 2026-02-16 at 5 46 23 PM" src="https://github.com/user-attachments/assets/f687f8d4-cffd-47f1-ada1-f6c4d3ac3cd4" /> Release Notes: - Improved project diff performance when opening very large diffs/repositories.
Jakub Konka created
3335a9b
languages: Fix C++ indentation for multi-line declarations and assignments (#47447)
Before: <img width="726" height="86" alt="indentation-problem" src="https://github.com/user-attachments/assets/50330c66-26ac-4cb0-9f26-8ee73ec6c64d" /> After: <img width="811" height="102" alt="after" src="https://github.com/user-attachments/assets/8704bd83-b626-4b6d-8ff9-50edd6f065db" /> Release Notes: - Fixed indentation problem with multi-line declarations and assignments in C++ --------- Co-authored-by: ozacod <ozacod@users.noreply.github.com>
ozacod and ozacod created
dcc69c0
docs: Fix theme publishing link in themes guide (#49276)
Fix broken links in themes docs Release Notes: - N/A
morgankrey created
6e33d83
copilot: Display cost multiplier for Github Copilot models (#44800)
### Description Related Discussions: #44499, #35742, #31851 Display cost multiplier for GitHub Copilot models in the model selectors (Both in Chat Panel and Inline Assistant) <img width="436" height="800" alt="image" src="https://github.com/user-attachments/assets/c9ebd8fa-4d55-4be8-b3e1-f46dbf1f0145" /> ### Some technical notes Although this PR's primary intent is to show the cost multiplier for GitHub Copilot models alone, I have included some necessary plumbing to allow specifying costs for other providers in future. I have introduced an enum called `LanguageModelCostInfo` for showing cost in different ways for different models. Now, this enum is used in `LanguageModel` trait to get the cost info. For now to begin with, in `LanguageModelCostInfo`, I have specified two ways of pricing: Request-based (1 Agent request - GitHub Copilot uses this) and Token-based (1M Input tokens / 1M Output tokens). I had initially thought about adding a `Free` type, especially for Ollama but didn't do it after realizing that Ollama has paid plans. Right now, only the Request-based pricing is implemented and used for Copilot models. Feel free to suggest changes on how to improve this design better. Release Notes: - Show cost multiplier for GitHub Copilot models --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Sathiyaraman M and Danilo Leal created
0e7d633
agent_ui: Ship thinking effort selection for Zed provider (#49274)
This PR removes the `cloud-thinking-effort` feature flag to ship the thinking effort UI for the Zed provider. Release Notes: - Added support for controlling thinking effort levels with supported models using the Zed provider.
Marshall Bowers created
c5bfa93
acp: Allow permissions on existing terminal tool calls (#49270)
It is possible, when the agent is streaming the tool call, that we will get a permission request on an existing terminal and we need to render that. When Zed controls the terminal this won't happen, but when we are just rendering the output, it can happen and we need to show it. Release Notes: - agent: Fix permission options not rendering on terminal commands
Ben Brandt created
323b579
bedrock: Add placeholder tool when summarising threads with tool history (#48863)
Bedrock Converse API requires toolConfig whenever messages have tool use or result blocks. PR #33174 handled the case where tools are defined but tool_choice is None. This change addresses another case: the tools array is empty (e.g. thread summarisation) but messages still have tool blocks from conversation history. A placeholder tool satisfies the requirement. Testing: Tested manually by: 1. Starting a conversation with Bedrock that uses tools 2. Triggering thread summarisation 3. Confirming summarisation now succeeds instead of failing with an API error Release Notes: - Fixed Bedrock thread summarization failing when conversation had tools
David Turnbull created
cf09993
Enable 'Add to Agent Thread' in worktree-less windows (#49084)
Fixes #49062 Updates `crates/agent_ui/src/inline_assistant.rs` to ensure the TerminalPanel correctly syncs the assistant_enabled state on initialization. This fixes the issue where "Add to Agent Thread" was missing in worktree-less windows. ## Video: [Screencast from 2026-02-13 10-31-43.webm](https://github.com/user-attachments/assets/bee0df67-0ecf-460c-8123-a72c4790c719) ## Release Notes - Fixed an issue where "Add to Agent Thread" was missing from the terminal context menu in windows without open folders.
Om Chillure created
cbf03f5
acp_thread: Await Tree-sitter parsing before building agent panel diffs (#49101)
## Summary Fixes https://github.com/zed-industries/zed/issues/48684 - Await `parsing_idle()` after `set_language()` in both `Diff::finalized()` and `PendingDiff::finalize()` so that tree-sitter parsing completes before buffer snapshots are taken for excerpts - Without this, the 1ms sync parse timeout almost always expires for non-trivial files, causing excerpts to be created with empty syntax trees and missing syntax highlighting ## Root Cause When the agent panel creates or finalizes a diff, it creates a new `Buffer`, calls `set_language()` (which triggers async tree-sitter parsing), then immediately proceeds to take buffer snapshots and create excerpts **without waiting for parsing to complete**. The sync parse timeout is only 1ms in production (`buffer.rs:1138`), so large files almost always fail the sync parse and fall back to async parsing — but no one awaits the async parse before building the diff. ## Fix Add `buffer.update(cx, |buffer, _| buffer.parsing_idle()).await` after `set_language()` in both code paths (`Diff::finalized()` and `PendingDiff::finalize()`). This is the same pattern already used in `buffer_diff.rs:1728-1731`. ## Test plan - [x] `cargo test -p acp_thread` — all relevant tests pass - [x] `./script/clippy` — no warnings - [x] Manual test: open agent panel, ask it to generate a Python file with multiline strings (`"""`), verify syntax highlighting is correct after diff is finalized Release Notes: - Fixed missing syntax highlighting for multiline strings in agent panel diffs
chenwuji2000-cyber created
93ead96
cloud_llm_client: Add StreamEnded and Unknown variants to CompletionRequestStatus (#49121)
Add StreamEnded variant so the client can distinguish between a stream that the cloud ran to completion versus one that was interrupted (see CLO-258). **That logic is to be added in a follow up PR**. Add an Unknown fallback with #[serde(other)] for forward-compatible deserialization of future variants. The client advertises support via a new x-zed-client-supports-stream-ended-request-completion-status header. The server will only send the new variant if that header is passed. Both StreamEnded and Unknown are silently ignored at the event mapping layer (from_completion_request_status returns Ok(None)). Part of CLO-264 and CLO-266; cloud-side changes to follow. Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Tom Houlé and Marshall Bowers created
52a9b6c
ollama: Remove backwards compatibility for Ollama tool call IDs (#49246)
Release Notes: - N/A Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Xiaobo Liu created
b725beb
acp: Refresh history less often (#49263)
Changes the AcpThreadHistory behavior to only load the full paginated list if we are in the history view, and only reloads the first page otherwise. And it also updates the first page in way fewer cases to reduce load on the agents. Release Notes: - N/A
Ben Brandt created
2c5a3c0
Tone down color for invisible characters in One themes (#46247)
Related: https://github.com/zed-industries/zed/issues/5592 Coming from vscode, the first thing I noticed (after the amazing speed that zed started) was the boldness of the whitespace characters. This mutes the whitespace "invisible" character color in the one theme so that they are less aggressive. This more closely (but not perfectly) aligns with the one theme for vscode. In order to avoid adding a new color to the theme, I reused the `editor.line_number` value in both cases which worked well. # Dark ## original: <img width="858" height="506" alt="before_dark" src="https://github.com/user-attachments/assets/fe5f1d11-90a5-4fa1-acf6-0d1a25c137f2" /> ## editor.line_number `#4e5a5f` <img width="867" height="466" alt="after_dark" src="https://github.com/user-attachments/assets/5f95f602-43c6-4a1a-9c7d-74b0ea8cf1c9" /> ## border.variant (alternative) `#363c46ff` <img width="818" height="489" alt="dark_border_variant" src="https://github.com/user-attachments/assets/7d44d2f6-e2a4-437e-99d1-ebdf58aab94c" /> # Light ## original <img width="838" height="488" alt="before_light" src="https://github.com/user-attachments/assets/61e48ba6-487c-468b-b099-4ab0f9ffbc9b" /> ## editor.line_number `#b4b4bb` <img width="868" height="493" alt="after_light" src="https://github.com/user-attachments/assets/d88b74dc-debe-4105-a217-7ca6c4b6ff20" /> # Release Notes: - Improved: Muted the invisible character color in the one themes. Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Michael Johnson and Danilo Leal created
d0c0c33
Fix missing right border on pinned tabs in two-row layout (#46952)
Closes https://github.com/zed-industries/zed/issues/46926
## Description:
- Fixes the missing right border on pinned tabs when
`show_pinned_tabs_in_separate_row` is enabled.
The two-row tab bar layout was missing the border element that visually
separates the pinned tabs row. This border was present in the single-row
layout but was not added when implementing the two-row layout.
## Steps to reproduce
1. Enable `"tab_bar": { "show_pinned_tabs_in_separate_row": true }` in
settings
2. Open multiple files
3. Pin at least one tab (right-click → Pin Tab)
4. Notice pinned tabs are missing right-hand side border
**Before (bug):**
<img width="1060" height="186" alt="image"
src="https://github.com/user-attachments/assets/7d18f24d-a51b-4f13-8410-a15fa92e1bb3"
/>
**After (fixed):**
<img width="863" height="69" alt="image"
src="https://github.com/user-attachments/assets/3354e809-b298-49a1-b16a-871caef67176"
/>
## Test plan
- [x] Follow reproduction steps above and verify the border now appears
- [x] Verify border appears immediately (not just after drag-and-drop)
- [x] Verify single-row layout still works correctly when setting is
disabled
- [x] Added automated test `test_separate_pinned_row_has_right_border`
### Additional fix: Drag-and-drop to pinned tabs bar
During implementation, discovered that we couldn't drag tabs to the end
of the pinned tabs bar. This PR also adds:
- A drop target at the end of the pinned tabs row
- Proper pinning behavior when dropping unpinned tabs to the pinned area
- Keeps the dragged tab active after drop
Release Notes:
- Fixed the missing right border on pinned tabs when
`show_pinned_tabs_in_separate_row` is enabled.
- Fixed drop target at the end of the pinned tabs row
- Fixed pinning behavior when dropping unpinned tabs to the pinned area
- Fixed case when the dragged tab was not active after drop (when enable
`"tab_bar": { "show_pinned_tabs_in_separate_row": true }` in settings)
---------
Co-authored-by: Joseph T. Lyons <JosephTLyons@gmail.com>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Yaroslav Yenkala , Joseph T. Lyons , and Danilo Leal created
27ab898
project_panel: Fix mixed sort with incorrect ordering when same file and dir name (#47863)
Closes #47678 When using mixed sort mode in the project panel, a folder and file with the same name but different case (e.g., `hello` folder and `Hello.txt` file) would sort incorrectly. The file could appear between an expanded folder and its contents. The issue was in `compare_rel_paths_mixed`: the tie-breaker logic used case-sensitive comparison (`a == b`) to decide directory-before-file ordering, but `natural_sort_no_tiebreak` already considers entries equal case-insensitively. Changed to use `eq_ignore_ascii_case` to match. Release Notes: - Fixed project panel mixed sort mode ordering incorrectly when a file and folder share the same name with different casing.
Luis created
909c147
git_ui: Add git init button to empty repository state (#49203)
Release Notes: - Git: Added `git init` button that quickly allows to turn an empty repository into a Git repository. https://github.com/user-attachments/assets/58b0d49f-b813-4d1c-a086-4bd21d226916 Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
Xiaobo Liu created
506570a
git_graph: Add resizable commit view support (#49171)
This PR add support for resizable commit view, so you can increase the commit view width by hand. https://github.com/user-attachments/assets/47b3d165-1d5b-4c5c-b36d-dc007d62fd43 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: - N/A (no release notes since it's behind a feature flag)
Remco Smits created
c9dafd2
Streamline Markdown notification rendering (#48162)
Brought the Markdown notification rendering up to date with how Markdown is used in the Agent panel and REPL. Removed async parsing overhead and simplified the code by using the markdown crate API directly. This is preparatory work, my ultimate goal is to make markdown_preview use markdown to parse and render md to [fix not being able to select and copy content](https://github.com/zed-industries/zed/issues/16727) |Current|Now| |-|-| |<img width="469" height="258" alt="Capture d’écran du 2026-02-01 22-39-39" src="https://github.com/user-attachments/assets/6e416b9d-aef8-4202-b3ce-8c22602d0fbd" />|<img width="458" height="200" alt="Capture d’écran du 2026-02-01 22-37-16" src="https://github.com/user-attachments/assets/bd590f17-0448-4cbc-a6df-9aecfa0754e8" />| Release Notes: - N/A
Nicolas Le Cam created
2c097ef
Add automatic syntax highlighting for GeoJSON files (#49261)
GeoJSON is a popular geospatial data interchange format, standardised as [RFC 7946](https://datatracker.ietf.org/doc/html/rfc7946). Because all GeoJSON files are valid JSON files, they can be highlighted using Zed's existing JSON language support. This change adds `geojson` as a recognised path suffix, so GeoJSON files automatically open as JSON and get the standard JSON syntax highlighting. Before and after screenshots: <img width="1748" height="755" alt="geojson" src="https://github.com/user-attachments/assets/40199248-1ce5-451e-9200-5b2f012b865f" /> Release notes: - Added automatic syntax highlighting for GeoJSON files
Matt Riggott created
01ac5a8
workspace: Use FolderOpen icon for active workspace project (#49180)
Differentiate the active workspace in the sidebar project list by using IconName::FolderOpen instead of IconName::Folder Before: <img width="1761" height="1196" alt="Image" src="https://github.com/user-attachments/assets/1a6d3708-9e3b-4ebc-b8e5-7b68194e55b7" /> After: <img width="1717" height="1152" alt="image" src="https://github.com/user-attachments/assets/1784dc83-b38a-4f6a-8984-ccd3b877b100" /> Closes #49179 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: - Improved active project in the workspace by changing the icon from Folder to FolderOpen
Riccardo Strina created
01b1d7d
editor: Sticky diff hunk controls (#49260)
Release Notes: - Diff hunk controls now stick to the top of the editor viewport if the top part of the hunk is outside the viewport
Lukas Wirth created