assistant2: Clear all collections when clearing the `ThreadStore` (#22743)

Marshall Bowers created

This PR adds some missing calls to clear the sub-collections in the
`ThreadStore` when we call `ThreadStore::drain` or `ThreadStore::clear`.

Release Notes:

- N/A

Change summary

crates/assistant2/src/context_store.rs | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)

Detailed changes

crates/assistant2/src/context_store.rs 🔗

@@ -37,15 +37,17 @@ impl ContextStore {
     }
 
     pub fn drain(&mut self) -> Vec<Context> {
-        self.files.clear();
-        self.directories.clear();
-        self.context.drain(..).collect()
+        let context = self.context.drain(..).collect();
+        self.clear();
+        context
     }
 
     pub fn clear(&mut self) {
         self.context.clear();
         self.files.clear();
         self.directories.clear();
+        self.threads.clear();
+        self.fetched_urls.clear();
     }
 
     pub fn insert_file(&mut self, buffer: &Buffer) {