Source code for ralph.git.rebase._rebase_phase

"""RebasePhase — lifecycle phase enum for an in-progress rebase operation."""

from __future__ import annotations

from enum import StrEnum


[docs] class RebasePhase(StrEnum): """Lifecycle phase of an in-progress rebase operation.""" NotStarted = "not_started" PreRebaseCheck = "pre_rebase_check" RebaseInProgress = "rebase_in_progress" ConflictDetected = "conflict_detected" ConflictResolutionInProgress = "conflict_resolution_in_progress" CompletingRebase = "completing_rebase" RebaseComplete = "rebase_complete" RebaseAborted = "rebase_aborted" def max_recovery_attempts(self) -> int: if self == RebasePhase.ConflictResolutionInProgress: return 5 if self in {RebasePhase.RebaseInProgress, RebasePhase.CompletingRebase}: return 2 if self == RebasePhase.PreRebaseCheck: return 1 return 3
__all__ = ["RebasePhase"]