Commit Graph
826 Commits
Author SHA1 Message Date
Jakub Konka 8d900471b4 gpui_linux: Fix cargo test on wayland (#49686)
Ensures we can run tests for just `gpui_linux` on Linux/Wayland like so:

```
$ cargo test -p gpui_linux
```

Release Notes:

- N/A
2026-02-20 13:27:09 +01:00
Piotr OsiewiczandMarshall Bowers 587b3128b6 ci: Make filter script less error-prone (#49670)
The failure in #49661 was caused by a broken pipe, which then led to
tests not being ran.

Co-authored-by: Marshall Bowers <marshall@zed.dev>

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: Marshall Bowers <marshall@zed.dev>
2026-02-20 01:06:53 +01:00
morgankrey 21ab775c2d 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
John D. Swanson 8361cc3620 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
morgankrey 457de50fdb 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
morgankrey 4db3b01acf 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 1f6c48f677 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
morgankrey eef9b3270a 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
morgankrey 36c0a511cd 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
Lena e4256e3fab Post comments on duplicate bug reports (#49482)
Release Notes:

- N/A
2026-02-18 17:15:15 +00:00
morgankrey 81b5a15f7d Update AI docs for retired hosted models (#49486)
## Summary
- Update hosted model and context-window tables in docs/src/ai/models.md
to remove retired models and list current replacements.
- Add a dated Recent Model Retirements section mapping each retired
model to its replacement.
- Update AI docs examples and references in agent-settings.md,
inline-assistant.md, agent-panel.md, and llm-providers.md to use current
model names.
- Remove stale OpenAI model references in llm-providers.md that no
longer align with currently offered hosted models.

## Validation
- ./script/prettier
- ./script/check-todos

## Suggested .rules additions
- N/A

Release Notes:

- N/A
2026-02-18 10:36:38 -06:00
morgankrey 74f72a3c81 Improve agent pull request hygiene (#49469)
## Summary
- Add pull request title and release notes hygiene guidance to `.rules`
- Update docs automation prompt/workflows to use compliant PR titles
- Ensure automated PR bodies include `Release Notes` when missing

Release Notes:

- N/A
2026-02-18 08:46:47 -06:00
morgankrey c41aeb17f7 Add documentation suggestion automation (#49194)
Adds scripts and a GitHub Action workflow for automatically suggesting
documentation updates when PRs modify user-facing code.

## Scripts

- **`script/docs-suggest`**: Analyze PRs/commits for documentation needs
using AI
- **`script/docs-suggest-publish`**: Create a PR from batched
suggestions
- **`script/docs-strip-preview-callouts`**: Remove Preview callouts when
shipping to stable
- **`script/test-docs-suggest-batch`**: Testing utility for batch
analysis

## Workflow

The GitHub Action (`.github/workflows/docs_suggestions.yml`) handles two
scenarios:

1. **PRs merged to main**: Suggestions are batched to
`docs/suggestions-pending` branch for the next Preview release
2. **Cherry-picks to release branches**: Suggestions are posted as PR
comments for immediate review

## Callout Types

The system distinguishes between:

- **Additive features** (new commands, settings, UI):
  ```markdown
> **Preview:** This feature is available in Zed Preview. It will be
included in the next Stable release.
  ```

- **Behavior modifications** (changed defaults, altered existing
behavior):
  ```markdown
> **Changed in Preview (v0.XXX).** See [release notes](/releases#0.XXX).
  ```

Both callout types are stripped by `docs-strip-preview-callouts` when
features ship to stable.

## Example Output

See PR #49190 for example documentation suggestions generated by running
this on PRs from the v0.224 preview window.

## Usage

```bash
# Analyze a PR (auto-detects batch vs immediate mode)
script/docs-suggest --pr 49100

# Dry run to see assembled context
script/docs-suggest --pr 49100 --dry-run

# Create PR from batched suggestions
script/docs-suggest-publish

# Strip callouts for stable release
script/docs-strip-preview-callouts
```

Release Notes:

- N/A
2026-02-18 06:39:09 -06:00
Zed Botandswannysec e45e77ca56 Update CODEOWNERS (includes suggested entries) (#47273)
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 | 1 |
| `crates/sidebar` | ui-team | Danilo Leal | 1 |

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-17 18:44:19 -05:00
Finn Evers b6ac9d1c03 extension_ci: Make parsing of current version more robust (#49411)
This removes trailing whitespace when getting the current version of the
extension, as we ran into some cases where a `\r` was added to that for
some reason.

Release Notes:

- N/A
2026-02-17 22:21:16 +00:00
Finn Evers 46dd9da60b extension_ci: Improve job orchestration (#49407)
This fixes an issue where some changes that should trigger more checks
would go unnoticed.

Release Notes:

- N/A
2026-02-17 21:54:17 +00:00
Finn Evers a93f4bbcdc extension_rollout: Prevent dispatch from non-main branches (#49396)
Release Notes:

- N/A
2026-02-17 19:58:42 +00:00
Finn Evers 6c7172f975 extension_ci: Increase fetch depth for tests job (#49389)
We need more fetch depth here for the check, hence bumping this.

Also does a drive-by cleanup of the checkout step within xtask to make
this (hopefully) more intuitive to use.

Release Notes:

- N/A
2026-02-17 18:49:18 +00:00
morgankrey e0b6898ae0 ci: Harden background-agent MVP git authentication loop (#49373)
## Summary
- refresh git auth headers before each per-crash iteration in
`background_agent_mvp`
- add guarded `git fetch`/`git checkout` handling so one candidate auth
failure doesn’t fail the entire run

## Context
- fixes the auth failure seen in workflow run 22106378719 (`fatal: could
not read Username for 'https://github.com'`)
- related Linear issue: BIZOPS-853

## Testing
- ruby -e "require 'yaml';
YAML.load_file('.github/workflows/background_agent_mvp.yml')"

Release Notes:

- N/A
2026-02-17 11:59:47 -06:00
morgankreyandJohn D. Swanson 9c1ef148b1 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>
2026-02-16 20:32:51 -06:00
Marshall Bowers d0ea664c77 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
2026-02-16 22:53:35 +00:00
Marshall Bowers 3f85c03e60 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
2026-02-16 22:40:10 +00:00
Marshall Bowers 3d78b20d03 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
2026-02-16 21:57:49 +00:00
Lena 2e64d84ab5 Stop notifying first responders for closed bugs (#49253)
Release Notes:

- N/A
2026-02-16 09:16:13 +00:00
Kunall Banerjee 59af47a68c Fix feature request guidelines link in discussion template (#49129)
Seems like a small oversight, or rather, we didn’t have this discussion
at that point? Either way @JosephTLyons feel free to merge once you
confirm this is the intended URL.

Closes #49119.

Release Notes:

- N/A
2026-02-13 20:27:01 +00:00
Mikayla MakiandLena cbbb90c89b Update pull_request_template.md (#48805)
Release Notes:

- N/A

---------

Co-authored-by: Lena <241371603+zelenenka@users.noreply.github.com>
2026-02-13 09:23:51 +00:00
Lena 7c980088fc Tweak stalebot (words, number of days) (#48603)
While the 60 days of inactivity works for a lot of the issues, with
other (more stubborn and popular) bugs it's too noisy to nag people
every eight weeks.

Also changing days-before-close after seeing a few cases of people
getting back to us after more than two weeks since the bot's question.

Release Notes:

- N/A
2026-02-13 08:53:31 +00:00
Conrad Irwin d3611866cc Install sccache *after* we rm-rf target... (#49035)
Closes #ISSUE

- [ ] Tests or screenshots needed?
- [ ] Code Reviewed
- [ ] Manual QA

Release Notes:

- N/A
2026-02-12 15:53:04 +00:00
Piotr Osiewicz 1e9f36dcdf Revert "ci: Use cargo-mtime to track timestamps" (#48987)
Reverts zed-industries/zed#48956
2026-02-12 00:08:46 +00:00
Conrad Irwin d4e5afa6d9 Fix more sccache problems on windows runners for external PRs (#48980)
Closes #ISSUE

- [ ] Tests or screenshots needed?
- [ ] Code Reviewed
- [ ] Manual QA

Release Notes:

- N/A
2026-02-11 22:21:25 +00:00
Piotr Osiewicz 1944b97d71 ci: Use cargo-mtime to track timestamps (#48956)
- **ci: Another stab at mtime-based freshness**

- [x] Tests or screenshots needed?
- [x] Code Reviewed
- [x] Manual QA

Release Notes:

- N/A
2026-02-11 23:07:42 +01:00
Conrad Irwin 914efb1f40 Fix sccache --show-stats not working sometimes on windows (#48974)
Closes #ISSUE

- [ ] Tests or screenshots needed?
- [ ] Code Reviewed
- [ ] Manual QA

Release Notes:

- N/A
2026-02-11 21:40:42 +00:00
Conrad Irwin 6eaca71d70 Use sccache in CI (#48895)
Try sccache in CI to paper over cargo's abyssmal caching

Release Notes:

- N/A
2026-02-10 21:36:42 -07:00
Conrad Irwin 7a85b88786 Don't run nix checks on PRs (#48849)
Although this introduces a small possiblity that we will regress the nix
build,
the existing check is very slow and fails very rarely.

Release Notes:

- N/A
2026-02-10 13:15:25 -07:00
Piotr Osiewicz 967b93a975 Revert "ci: Restore mtime of source files to the git log time" (#48874)
Reverts zed-industries/zed#48607

The problem we've ran into is that CI started reusing already-cached
runs from newer branches (that did not have that change pulled in).

Yet this unveiled another potential issue, which is that relying on
mtime might make it so that an artifact for a different (newer) commit
would be reused by an unrelated run of CI.

The answer is: checksum-based-freshness.

Release Notes:
- N/A
2026-02-10 14:32:01 +01:00
Piotr Osiewicz 1721ab736a ci: Restore mtime of source files to the git log time (#48607)
Release Notes:

- N/A
2026-02-10 12:52:42 +01:00
Finn Evers f3f0406e59 extension_ci: Increase timeout for extension version bump job (#48828)
This fixes another issue for the ruby extension where a cargo index
update can sometimes take quite some time. However, this will not change
anything for all other extensions, as they continue to bump within the
defined timeout.

Release Notes:

- N/A
2026-02-09 23:12:40 +00:00
Finn Evers 7f4940cf84 extension_ci: Be more precise with clippy targets (#48824)
This fixes an issue where we would run into build errors during testing.

Release Notes:

- N/A
2026-02-09 22:13:27 +00:00
Joseph T. Lyons 5851e86007 Update community champions (#48818)
Adding @rgbkrk so we have extra reminders in place to remain attentive.

Release Notes:

- N/A
2026-02-09 21:22:56 +00:00
Finn Evers 2f8c87f155 extension_rollout: Improve naming for PR titles (#48815)
This PR updates the names for the PRs to roll out to the extensions, as
having the `zed@` prefix does not look too pretty.

It also increases the concurrency of matrix jobs run to 10, as the
rollout has matured by now and is safe to perform for more repositories
at once.

Release Notes:

- N/A
2026-02-09 20:36:40 +00:00
Finn Evers 918a1473dd extension_ci: Merge extension workflow files into one file (#48810)
This PR consolidates the two workflow files shipped to extensions into
one, which stops us from requiring a separate runner for what can
actually be done in one workflow.

It also
- adds a check that version bumps will now only be created by zed-zippy
in separate commits.
- Makes the bumping of versions faster and more reliable.
- (Hopefully) fixes an issue we were seeing in some CI tests.

Release Notes:

- N/A
2026-02-09 21:18:53 +01:00
Mikayla Maki 6aa26e3b9e Update the PR template to have a checklist (#48646)
Release Notes:

- N/A
2026-02-06 22:44:07 +00:00
Lena 825a7d2e4e Autolabel pull requests by bots (#48579)
In combination with auto-labeling staff PRs, this makes it possible to
see the community PRs with `-label:staff -label:bot` in the search query
on https://github.com/zed-industries/zed/pulls

Release Notes:

- N/A
2026-02-06 11:18:20 +00:00
Lena 4f8c5be176 Autolabel staff's pull requests (#48576)
Modifying the existing github workflow here instead of adding a new one
because we're already triggering on the same thing (new PR opened) and
checking the same thing (staff team membership) but throwing away the
result. Another CI job doing largely the same checks seemed unnecessary.

Release Notes:

- N/A
2026-02-06 10:29:48 +00:00
Finn Evers b2225fb836 ci: Move more jobs to Namespace runners (#48228)
This moves some more of our CI jobs over to xtask and gh-workflow. This
primarily originated from the current GitHub actions outage to move
these actions over to Namespace runners. However, while I was at it I
decided to move these over to gh_workflow, as we benefit from sharing
more stuff across these files and less hacking around in YAML-files
directly.

Release Notes:

- N/A
2026-02-05 12:06:01 +00:00
Piotr OsiewiczandSmit Barmase ebe9437ed1 ci: Use package name for contents of changed_pkgs (#48459)
Helps with #48413

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>

Release Notes:

- N/A

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
2026-02-05 12:59:50 +01:00
Piotr Osiewicz dd077cb31c ci: Trigger tests on Cargo.toml and Cargo.lock changes (#48412)
Finn found out the hard way that the new cool tech does not quite work
at times. Back to the drawing board we go (at least partially).

Closes #ISSUE

Release Notes:

- N/A
2026-02-04 22:33:24 +00:00
Piotr Osiewicz 31f8249b38 ci: Parse Cargo.toml and Cargo.lock with Python script to determine affected packages (#48389)
Closes #ISSUE

Release Notes:

- N/A
2026-02-04 19:31:25 +00:00
Piotr Osiewicz 8d162a00fc ci: Run tests only for the changed packages and their dependants (#48380)
We're still gonna run a full test suite on main and in non-PR workflows
exercising tests


Release Notes:

- N/A
2026-02-04 19:39:33 +01:00
Conrad Irwin 9011c5e667 Try to improve nix caching (#48297)
Release Notes:

- N/A
2026-02-03 20:31:02 -07:00