feat(bisect): add guided Git bisect support
Add interactive Git bisect support to the Tauri backend and UI. Introduce BisectState and BisectCommit types for structured state. Expose Tauri commands to query, start, mark, and reset sessions. Add parsers, unit tests, and a Bisect dialog with toolbar and App wiring. - Backend: new Tauri commands, state types, and helpers to parse bisect. - Frontend: Bisect dialog, toolbar entry, and App integration to control flow.
This commit is contained in:
@@ -3,6 +3,7 @@ import { tracedInvoke as invoke } from "./telemetry";
|
||||
import type {
|
||||
AiReviewResult,
|
||||
AiCommitPlan,
|
||||
BisectState,
|
||||
CommitAiProvider,
|
||||
CloneOptions,
|
||||
ConflictFile,
|
||||
@@ -104,6 +105,22 @@ export function getStatus(path: string): Promise<GitStatus> {
|
||||
return invoke<GitStatus>("get_status", { path });
|
||||
}
|
||||
|
||||
export function getBisectState(path: string): Promise<BisectState> {
|
||||
return invoke<BisectState>("get_bisect_state", { path });
|
||||
}
|
||||
|
||||
export function startBisect(path: string, good: string, bad: string): Promise<BisectState> {
|
||||
return invoke<BisectState>("start_bisect", { path, good, bad });
|
||||
}
|
||||
|
||||
export function markBisect(path: string, verdict: "good" | "bad" | "skip"): Promise<BisectState> {
|
||||
return invoke<BisectState>("mark_bisect", { path, verdict });
|
||||
}
|
||||
|
||||
export function resetBisect(path: string): Promise<GitStatus> {
|
||||
return invoke<GitStatus>("reset_bisect", { path });
|
||||
}
|
||||
|
||||
export function getGitLfsStatus(path: string): Promise<GitLfsStatus> {
|
||||
return invoke<GitLfsStatus>("git_lfs_status", { path });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user