Commit Graph
20 Commits
Author SHA1 Message Date
Richard Feldman 59185f5a70 livekit_api: Fix LiveKit token revocation timestamps (#60157)
LiveKit Cloud rejects room-join tokens as revoked when their `nbf`
predates a participant revocation. Zed generated those LiveKit JWTs with
`nbf: 0`, so a fresh participant token minted after stale connection
cleanup could still appear older than the cleanup and leave a user
joined at the collab layer without audio or screen sharing. This sets
`nbf` to the issuance time for room-join tokens while leaving admin/API
tokens unchanged, and adds regression coverage at the token, mock
LiveKit, and channel rejoin layers.

Closes FR-83

Release Notes:

- Fixed calls getting stuck without audio or screen sharing after
restarting Zed and rejoining a channel.
2026-07-03 09:50:42 +00:00
Marshall Bowers 53e4d34a71 client: Add username to User and start using it (#60107)
This PR adds a `username` field to the `User` and starts using it
instead of the `github_login`.

Closes CLO-952.

Release Notes:

- N/A
2026-06-29 20:21:46 +00:00
Lukas Wirth eac0687e23 Speed up collab test a bit by doing less repeated work in multi iteration tests (#53490)
Release Notes:

- N/A or Added/Fixed/Improved ...
2026-06-05 07:14:12 +00:00
Marshall Bowers f1a7567791 collab: Remove seeding infrastructure (#56562)
This PR removes the seeding infrastructure from Collab.

We're already set up to just-in-time create users in local development
through Cloud.

Also updated the liveness probe for the health endpoint to use a
different query.

Closes CLO-763.

Release Notes:

- N/A
2026-05-13 15:44:55 +00:00
Marshall Bowers 31661a8383 client: Rename UserId to LegacyUserId (#56185)
This PR renames the `UserId` type in the `client` crate to
`LegacyUserId`.

The `id` field on the `User` has also been renamed to `legacy_id`.

This is strictly a rename, no change in behavior.

Release Notes:

- N/A
2026-05-08 15:53:40 +00:00
Marshall Bowers 4b23564f36 collab: Route get_users_by_ids through Cloud (#56105)
This PR makes it so we route the `UserService::get_users_by_ids` call
through Cloud instead of hitting the database.

We've introduced a new `CloudUserService` that will fetch the users from
Cloud using the internal API. Note that we've only implemented the
`get_users_by_ids` method on this service, as the endpoints for the
other methods don't yet exist.

We have also introduced a `TransitionalUserService` for the purposes of
gradually transitioning these calls over to Cloud. Right now it uses the
`CloudUserService` for the `get_users_by_ids` implementation, but then
uses the `DatabaseUserService` for the other methods.

Closes CLO-740.

Release Notes:

- N/A
2026-05-08 13:34:46 +00:00
Marshall Bowers 367db0706b collab: Remove unused api_token field from Config (#56098)
This PR removes the `api_token` field from Collab's `Config`, as it is
no longer used.

Release Notes:

- N/A
2026-05-08 12:28:22 +00:00
Marshall Bowers dacf984596 collab: Introduce UserService (#55449)
This PR introduces a `UserService` trait to Collab.

This is a step towards moving Collab away from reading user information
directly from the database.

We currently have two implementations for the trait:

- The `DatabaseUserService`, which leverages the existing query methods
to talk to the database
- The `FakeUserService`, which will be used in tests

Once we're ready, we'll be able to replace the `DatabaseUserService`
with a `CloudUserService` to fetch the users from Cloud.

Release Notes:

- N/A
2026-05-06 18:15:36 +00:00
Marshall Bowers 90b3ef0c65 collab: Decouple session principal from User database model (#55440)
This PR decouples the session principal in Collab from the `User`
database model.

We have introduced a new `User` domain entity that we use for the
principal. Currently we just construct it from the database model, but
this separation will make it easier to remove reliance on reading the
database directly soon.

Release Notes:

- N/A
2026-05-01 17:28:57 +00:00
Conrad Irwin 1abbaf9c43 Fix version check (#55032)
Release Notes:

- N/A
2026-04-28 22:12:38 +00:00
Ben BrandtandBennet Bo Fenner 76c6004b27 Remove text thread and slash command crates (#52757)
🫡

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:

- Removed legacy Text Threads feature to help streamline the new agentic
workflows in Zed. Thanks to all of you who were enthusiastic Text Thread
users over the years ❤️!

---------

Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
2026-03-31 17:55:05 +02:00
Piotr Osiewicz 93e641166d theme: Split out theme_settings crate (#52569)
Self-Review Checklist:

- [ ] 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

Closes #ISSUE

Release Notes:

- N/A
2026-03-27 14:41:25 +01:00
Marshall Bowers 02ba2be932 collab: Remove unneeded Arc::get_mut (#49672)
This PR removes an unneeded `Arc::get_mut` from the Collab tests.

Release Notes:

- N/A
2026-02-20 02:11:53 +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
Anthony Eid a5dee51fd9 sidebar: Serialize after adding/removing workspaces (#49372)
Before this PR we wouldn't always serialize workspaces when a
mutliworkspace adds/removes a workspace. This PR fixes this by adding a
test and calling serialization in remove

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
- [ ] 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-17 12:38:03 -05:00
ee3f40fe25 Re-add MultiWorkspace (#48800)
Release Notes:

- Added agent panel restoration. Now restarting your editor won't cause
your thread to be forgotten.

---------

Co-authored-by: Anthony Eid <56899983+Anthony-Eid@users.noreply.github.com>
Co-authored-by: Eric Holk <eric@zed.dev>
Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Co-authored-by: Anthony Eid <anthony@zed.dev>
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Co-authored-by: Cameron Mcloughlin <cameron.studdstreet@gmail.com>
2026-02-12 01:06:23 +00:00
Marshall Bowers f81dfca30a collab: Remove unused Config fields (#48836)
This PR removes the unused fields from the `Config` struct in Collab.

Release Notes:

- N/A
2026-02-10 01:21:51 +00:00
Finn Evers 165b404460 Revert "New multi workspace (#47795)" (#48776)
Preparing this just in case.

Release Notes:

- N/A
2026-02-09 15:37:16 +01:00
1c21718587 New multi workspace (#47795)
It's happeningggggg

Release Notes:

- Changed the Agent Panel so that the Active Thread is restored on
restart.

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Co-authored-by: Anthony Eid <anthony@zed.dev>
Co-authored-by: Danilo Leal <67129314+danilo-leal@users.noreply.github.com>
Co-authored-by: Richard Feldman <richard@zed.dev>
Co-authored-by: Zed Zippy <234243425+zed-zippy[bot]@users.noreply.github.com>
2026-02-08 17:46:51 -08:00
Piotr Osiewicz b74b1977d4 collab: Extract tests into integration tests crate (#47668)
Reduces time needed to build collab tests from 48s to 38s.

Release Notes:

- N/A
2026-01-26 20:28:09 +01:00