@@ -2,15 +2,13 @@ import * as vscode from 'vscode'
22import * as fs from 'fs'
33import {
44 create_checkpoint ,
5- create_temporary_checkpoint ,
6- delete_checkpoint ,
7- promote_temporary_checkpoint
5+ delete_checkpoint
86} from '../checkpoints-command/actions'
97import { FileInPreview } from '@shared/types/file-in-preview'
108import { PanelProvider } from '@/views/panel/backend/panel-provider'
119import { dictionary } from '@shared/constants/dictionary'
1210import { WorkspaceProvider } from '@/context/providers/workspace-provider'
13- import { code_review_promise_resolve } from './utils/preview/preview'
11+ import { response_preview_promise_resolve } from './utils/preview/preview'
1412import { get_diff_stats } from './utils/preview/diff-utils'
1513import { create_safe_path } from '@/utils/path-sanitizer'
1614import {
@@ -51,15 +49,15 @@ export const apply_chat_response_command = (
5149 return
5250 }
5351
54- if ( code_review_promise_resolve ) {
52+ if ( response_preview_promise_resolve ) {
5553 const choice = await vscode . window . showWarningMessage (
5654 dictionary . warning_message . REVIEW_ONGOING ,
5755 { modal : true } ,
5856 'Switch'
5957 )
6058
6159 if ( choice == 'Switch' ) {
62- code_review_promise_resolve ( { accepted_files : [ ] } )
60+ response_preview_promise_resolve ( { accepted_files : [ ] } )
6361 if ( ongoing_review_cleanup_promise ) {
6462 await ongoing_review_cleanup_promise
6563 }
@@ -69,10 +67,18 @@ export const apply_chat_response_command = (
6967 }
7068 }
7169
72- let temp_checkpoint : Checkpoint | undefined
70+ let before_checkpoint : Checkpoint | undefined
7371 try {
74- temp_checkpoint = await create_temporary_checkpoint ( workspace_provider )
72+ before_checkpoint = await create_checkpoint (
73+ workspace_provider ,
74+ context ,
75+ 'Before applying changes' ,
76+ args ?. raw_instructions
77+ )
7578
79+ if ( ! before_checkpoint ) {
80+ return
81+ }
7682 const review_data = await process_chat_response (
7783 args ,
7884 chat_response ,
@@ -165,35 +171,24 @@ export const apply_chat_response_command = (
165171 } )
166172
167173 if ( changes_accepted ) {
168- try {
169- if ( temp_checkpoint ) {
170- await promote_temporary_checkpoint ( {
171- context,
172- temp_checkpoint,
173- title : 'Before changes approved' ,
174- description : args ?. raw_instructions
175- } )
176- temp_checkpoint = undefined
177- }
178- } finally {
179- await create_checkpoint (
180- workspace_provider ,
181- context ,
182- 'After changes approved' ,
183- args ?. raw_instructions
184- )
185- }
174+ await create_checkpoint (
175+ workspace_provider ,
176+ context ,
177+ 'After changes approved' ,
178+ args ?. raw_instructions
179+ )
180+ before_checkpoint = undefined
186181 }
187182 }
188183 } catch ( err : any ) {
189184 vscode . window . showErrorMessage (
190185 `An error occurred while applying changes: ${ err . message } `
191186 )
192187 } finally {
193- if ( temp_checkpoint ) {
188+ if ( before_checkpoint ) {
194189 await delete_checkpoint ( {
195190 context,
196- checkpoint_to_delete : temp_checkpoint
191+ checkpoint_to_delete : before_checkpoint
197192 } )
198193 }
199194 }
0 commit comments