pub enum GateName {
Show 14 variants
ErrorSeverityFindings,
Regression,
StaleBaseline,
DuplicationThreshold,
HealthMinScore,
HealthMinSeverity,
HealthFindings,
HealthCoverageGaps,
HealthRuntimeCoverage,
Security,
SecurityAdvisory,
AuditVerdict,
TypeAwareRequire,
ParseError,
}Expand description
Which gate an outcome describes.
Taken from the exit-code sites rather than from any integration’s input list, because a gate a consumer cannot name is exactly the one whose verdict goes missing. Serialized as kebab-case and published as an open set.
Variants§
ErrorSeverityFindings
The CLI’s own severity rule: any finding whose effective severity is
error fails the run. This is NOT a count rule, and --fail-on-issues
only promotes warn-tier rules into it, so a project with a rule set to
warn can report findings and still exit 0.
Regression
--fail-on-regression: issue counts grew past --tolerance compared
with the regression baseline.
StaleBaseline
--fail-on-stale-baseline: the loaded baseline has entries that matched
nothing this run.
DuplicationThreshold
--threshold: duplication exceeded the configured percentage.
HealthMinScore
--min-score: the health score fell below the configured minimum.
HealthMinSeverity
--min-severity: at least one complexity finding reached the configured
severity. One branch of the findings gate; see Self::HealthFindings.
HealthFindings
The health findings gate with no severity floor: any complexity finding
fails the run. Inert when --min-score is set alone, which is what
“complexity findings become informational” means.
HealthCoverageGaps
The coverage-gap gate, configured through rules.coverage-gaps.
HealthRuntimeCoverage
A runtime-coverage finding whose verdict is safe_to_delete,
review_required or low_traffic.
Security
security --gate: the change introduced a new security-sink candidate.
The only gate that exits 8 rather than 1.
SecurityAdvisory
The security advisory exit, which fails on the candidate backlog rather
than on what the change introduced. A configured --gate returns before
it, so this reports skipped on any run that set one.
AuditVerdict
fallow audit’s rule-severity verdict, the only three-valued gate.
TypeAwareRequire
--type-aware-require complete: semantic analysis was partial or
unavailable.
ParseError
--fail-on-parse-error or the failOnParseError config key: at least
one source file did not parse cleanly (a source-parse-degraded entry
in workspace_diagnostics[]). The entry lists each such file in
files. Never armed by default, because the parser also rejects valid
syntax that is newer than the parser.
Implementations§
Source§impl GateName
impl GateName
Sourcepub const ALL: [Self; 14]
pub const ALL: [Self; 14]
Every gate name this build can emit, in declaration order.
Exists so a surface that has to cover the set exhaustively, such as the
pull-request decision surface’s display labels, can be tested against
the emitter rather than against a hand-kept list. A new variant belongs
here as well as in Self::as_str, whose match will not compile until
it is named.
Trait Implementations§
impl Copy for GateName
impl Eq for GateName
Source§impl Ord for GateName
impl Ord for GateName
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialOrd for GateName
impl PartialOrd for GateName
impl StructuralPartialEq for GateName
Auto Trait Implementations§
impl Freeze for GateName
impl RefUnwindSafe for GateName
impl Send for GateName
impl Sync for GateName
impl Unpin for GateName
impl UnsafeUnpin for GateName
impl UnwindSafe for GateName
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.