Documentation
¶
Overview ¶
Package gate decides whether a codereview run should resume, repair, exit, retry posts, abort stale state, or run fresh from summarized state.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Decision ¶
type Decision struct {
Kind DecisionKind
RunID string
Outcome PROutcome
SupersedeRunIDs []string
AbortStaleRunIDs []string
Warnings []string
ErrorReason ErrorReason
FailureClass FailureClass
Message string
}
Decision is the pure gate output consumed by later IO integration.
type DecisionKind ¶
type DecisionKind string
DecisionKind identifies the next gate action.
const ( DecisionResume DecisionKind = "resume" DecisionEarlyExit DecisionKind = "early_exit" DecisionRepair DecisionKind = "repair" DecisionRetryPosts DecisionKind = "retry_posts" DecisionAbortStale DecisionKind = "abort_stale" DecisionFresh DecisionKind = "fresh" DecisionError DecisionKind = "error" )
Decision kind values.
type ErrorReason ¶
type ErrorReason string
ErrorReason identifies why the kernel returned DecisionError.
const ( ErrorInvalidInput ErrorReason = "invalid_input" ErrorMutuallyExclusiveFlags ErrorReason = "mutually_exclusive_flags" ErrorRetryPostsIneligible ErrorReason = "retry_posts_ineligible" ErrorPartialFailed ErrorReason = "partial_failed" ErrorPartialResumableInconsistent ErrorReason = "partial_resumable_inconsistent" )
Error reason values.
type FailureClass ¶
type FailureClass string
FailureClass records whether a failed action was auth-related or terminal.
const ( FailureClassNone FailureClass = "" FailureClassTerminal FailureClass = "terminal" FailureClassAuth FailureClass = "auth" )
Failure class values.
func (FailureClass) Valid ¶
func (c FailureClass) Valid() bool
Valid reports whether c is a known failure class.
type LockState ¶
type LockState string
LockState records the non-blocking stale-base lock probe result.
type PROutcome ¶
type PROutcome string
PROutcome records the verdict from a rollup marker.
const ( PROutcomeApproved PROutcome = "approved" PROutcomeRequestChanges PROutcome = "request_changes" PROutcomeComment PROutcome = "comment" PROutcomeNothingToReview PROutcome = "nothing_to_review" )
PR outcome values.
func (PROutcome) RealVerdict ¶
RealVerdict reports whether o is a review verdict that needs submit_review.
type Request ¶
type Request struct {
Flags Flags
ExactRuns []RunSummary
StaleBaseCandidates []StaleBaseCandidate
PR PRSummary
PartialRun *RunSummary
}
Request contains all summarized state used by Decide.
type RunState ¶
type RunState string
RunState records the summarized local run outcome state.
const ( RunStateRunning RunState = "running" RunStateIncomplete RunState = "incomplete" RunStateApproved RunState = "approved" RunStateRequestChanges RunState = "request_changes" RunStateComment RunState = "comment" RunStateNothingToReview RunState = "nothing_to_review" RunStateDryRun RunState = "dry_run" RunStateAborted RunState = "aborted" RunStateFailed RunState = "failed" )
Run state values.
type RunSummary ¶
type RunSummary struct {
RunID string
Attempt int
PostMode PostMode
State RunState
RequiredPending int
RequiredFailedTerminal int
FailureClass FailureClass
}
RunSummary is the local ledger state needed by the pure gate.
type StaleBaseCandidate ¶
type StaleBaseCandidate struct {
Run RunSummary
LockState LockState
HeartbeatStale bool
}
StaleBaseCandidate is a different-base local row plus its lock probe state.