Delete unused checkpoints (#27260)

Release Notes:

- N/A
This commit is contained in:
Antonio Scandurra 2025-03-21 17:39:01 +01:00 committed by GitHub
parent a52e2f9553
commit 0e9e2d70cd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 177 additions and 67 deletions

View file

@ -12,6 +12,7 @@ use gpui::{
};
use language_model::LanguageModelRegistry;
use language_model_selector::ToggleModelSelector;
use project::Project;
use rope::Point;
use settings::Settings;
use std::time::Duration;
@ -37,6 +38,7 @@ pub struct MessageEditor {
editor: Entity<Editor>,
#[allow(dead_code)]
workspace: WeakEntity<Workspace>,
project: Entity<Project>,
context_store: Entity<ContextStore>,
context_strip: Entity<ContextStrip>,
context_picker_menu_handle: PopoverMenuHandle<ContextPicker>,
@ -107,6 +109,7 @@ impl MessageEditor {
Self {
editor: editor.clone(),
project: thread.read(cx).project().clone(),
thread,
workspace,
context_store,
@ -205,7 +208,9 @@ impl MessageEditor {
let thread = self.thread.clone();
let context_store = self.context_store.clone();
let checkpoint = self.project.read(cx).git_store().read(cx).checkpoint(cx);
cx.spawn(async move |_, cx| {
let checkpoint = checkpoint.await.ok();
refresh_task.await;
let (system_prompt_context, load_error) = system_prompt_context_task.await;
thread
@ -219,7 +224,7 @@ impl MessageEditor {
thread
.update(cx, |thread, cx| {
let context = context_store.read(cx).snapshot(cx).collect::<Vec<_>>();
thread.insert_user_message(user_message, context, cx);
thread.insert_user_message(user_message, context, checkpoint, cx);
thread.send_to_model(model, request_kind, cx);
})
.ok();