Properly notify all language server worktree trust listeners (#46613)

Closes https://github.com/zed-industries/zed/issues/46590


https://github.com/user-attachments/assets/8464a3b6-9258-4d15-9168-56178bf46437

`use smol::channel::{Receiver, Sender};` do not propagate the value
change to all receivers, hence only one language server received the
"worktree trusted" message.
The fix uses `watch` kind of channels instead, and cleans up its state
more eager to rely on the sender drop as another form of notification.

Release Notes:

- Fixed groups of language servers not starting after worktree trust
approval
38fc4eaf44Kirill Bulatov committed on 1/12/2026, 12:09:43 PM· committed by GitHubparent5ddfcf0
1 file changedLine totals unavailable