ZIm/crates/agent/src
Antonio Scandurra 019a14bcde
Replace async-watch with a custom watch (#32245)
The `async-watch` crate doesn't seem to be maintained and we noticed
several panics coming from it, such as:

```
[bug] failed to observe change after notificaton.
zed::reliability::init_panic_hook::{{closure}}::hea8cdcb6299fad6b+154543526
std::panicking::rust_panic_with_hook::h33b18b24045abff4+127578547
std::panicking::begin_panic_handler::{{closure}}::hf8313cc2fd0126bc+127577770
std::sys::backtrace::__rust_end_short_backtrace::h57fe07c8aea5c98a+127571385
__rustc[95feac21a9532783]::rust_begin_unwind+127576909
core::panicking::panic_fmt::hd54fb667be51beea+9433328
core::option::expect_failed::h8456634a3dada3e4+9433291
assistant_tools::edit_agent::EditAgent::apply_edit_chunks::{{closure}}::habe2e1a32b267fd4+26921553
gpui::app::async_context::AsyncApp::spawn::{{closure}}::h12f5f25757f572ea+25923441
async_task::raw::RawTask<F,T,S,M>::run::h3cca0d402690ccba+25186815
<gpui::platform::linux::x11::client::X11Client as gpui::platform::linux::platform::LinuxClient>::run::h26264aefbcfbc14b+73961666
gpui::platform::linux::platform::<impl gpui::platform::Platform for P>::run::hb12dcd4abad715b5+73562509
gpui::app::Application::run::h0f936a5f855a3f9f+150676820
zed::main::ha17f9a25fe257d35+154788471
std::sys::backtrace::__rust_begin_short_backtrace::h1edd02429370b2bd+154624579
std::rt::lang_start::{{closure}}::h3d2e300f10059b0a+154264777
std::rt::lang_start_internal::h418648f91f5be3a1+127502049
main+154806636
__libc_start_main+46051972301573
_start+12358494
```

I didn't find an executor-agnostic watch crate that was well maintained
(we already tried postage and async-watch), so decided to implement it
our own version.

Release Notes:

- Fixed a panic that could sometimes occur when the agent performed
edits.
2025-06-06 16:00:09 +00:00
..
agent_configuration Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
context_picker Add default method for CompletionProvider::resolve_completions (#32045) 2025-06-05 19:15:06 +00:00
prompts danger: Check for changes in prompt files (#31744) 2025-05-30 13:46:41 +00:00
ui agent: Show warning for image context pill if model doesn't support images (#31848) 2025-06-04 16:20:56 +00:00
active_thread.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
agent.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
agent_configuration.rs Revert "agent: Namespace MCP server tools" (#31588) 2025-05-28 13:25:53 +00:00
agent_diff.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
agent_model_selector.rs agent: Introduce ModelUsageContext (#32076) 2025-06-04 15:35:50 +00:00
agent_panel.rs Pass up intent with completion requests (#31710) 2025-05-29 20:43:12 +00:00
agent_profile.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
buffer_codegen.rs Pass up intent with completion requests (#31710) 2025-05-29 20:43:12 +00:00
context.rs agent: Show warning for image context pill if model doesn't support images (#31848) 2025-06-04 16:20:56 +00:00
context_picker.rs agent: Add a whitespace after inserting @-mention to allow for continuous typing (#30381) 2025-05-26 09:55:19 -03:00
context_server_configuration.rs agent: Rename a number of constructs from Assistant to Agent (#30196) 2025-05-08 01:18:51 +00:00
context_server_tool.rs context server: Make requests type safe (#32254) 2025-06-06 17:47:21 +02:00
context_store.rs agent: Show actual file name and icon in context pill (#31813) 2025-06-02 10:35:22 +00:00
context_strip.rs agent: Show warning for image context pill if model doesn't support images (#31848) 2025-06-04 16:20:56 +00:00
debug.rs Update zed_llm_client to v0.8.1 (#30433) 2025-05-09 21:08:03 +00:00
history_store.rs agent: Lower "no thread found" logging level to debug (#31972) 2025-06-03 13:27:58 +00:00
inline_assistant.rs Replace async-watch with a custom watch (#32245) 2025-06-06 16:00:09 +00:00
inline_prompt_editor.rs inline assistant: Allow to attach images from clipboard (#32087) 2025-06-04 16:43:52 +00:00
message_editor.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
profile_selector.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
slash_command_settings.rs Remove assistant crate (#30168) 2025-05-07 23:05:38 +00:00
terminal_codegen.rs terminal: Match trait bounds with terminal input (#31441) 2025-06-02 21:12:28 -06:00
terminal_inline_assistant.rs terminal: Match trait bounds with terminal input (#31441) 2025-06-02 21:12:28 -06:00
thread.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
thread_history.rs Reduce allocations (#30693) 2025-05-14 18:29:28 +02:00
thread_store.rs context server: Make requests type safe (#32254) 2025-06-06 17:47:21 +02:00
tool_compatibility.rs Store profile per thread (#31907) 2025-06-06 12:05:27 +00:00
tool_use.rs agent: Allow to accept and reject all via the panel (#31971) 2025-06-03 15:20:25 -03:00
ui.rs Add an onboarding banner for the Agent panel (#30050) 2025-05-06 23:41:04 +00:00