fix(checkpointing): improve error handling and messaging for Git issues (#6801)

This commit is contained in:
Arya Gummadi
2025-08-22 08:29:52 -07:00
committed by GitHub
parent 31cd35b8c4
commit e1d5dc545d
2 changed files with 38 additions and 12 deletions

View File

@@ -912,17 +912,31 @@ export const useGeminiStream = (
}
try {
let commitHash = await gitService?.createFileSnapshot(
`Snapshot for ${toolCall.request.name}`,
);
if (!gitService) {
onDebugMessage(
`Checkpointing is enabled but Git service is not available. Failed to create snapshot for ${filePath}. Ensure Git is installed and working properly.`,
);
continue;
}
let commitHash: string | undefined;
try {
commitHash = await gitService.createFileSnapshot(
`Snapshot for ${toolCall.request.name}`,
);
} catch (error) {
onDebugMessage(
`Failed to create new snapshot: ${getErrorMessage(error)}. Attempting to use current commit.`,
);
}
if (!commitHash) {
commitHash = await gitService?.getCurrentCommitHash();
commitHash = await gitService.getCurrentCommitHash();
}
if (!commitHash) {
onDebugMessage(
`Failed to create snapshot for ${filePath}. Skipping restorable tool call.`,
`Failed to create snapshot for ${filePath}. Checkpointing may not be working properly. Ensure Git is installed and the project directory is accessible.`,
);
continue;
}
@@ -959,9 +973,9 @@ export const useGeminiStream = (
);
} catch (error) {
onDebugMessage(
`Failed to write restorable tool call file: ${getErrorMessage(
`Failed to create checkpoint for ${filePath}: ${getErrorMessage(
error,
)}`,
)}. This may indicate a problem with Git or file system permissions.`,
);
}
}