pub struct GateConfig {
pub subtask: String,
pub cwd: PathBuf,
pub verify_command: Option<Vec<String>>,
pub no_verify_waiver: Option<NoVerifyWaiver>,
pub verify_timeout: Duration,
pub max_output_bytes: usize,
}Expand description
Configuration for a single gate run.
Fields§
§subtask: StringLabel for the subtask whose worktree is being verified (for audit).
cwd: PathBufThe integrated tree to run the build/test command in.
verify_command: Option<Vec<String>>Verify command (program + args), e.g. ["cargo", "test"]. None ⇒ the
build/test leg is NotConfigured, which can only be accepted via a
no_verify_waiver.
no_verify_waiver: Option<NoVerifyWaiver>Explicit waiver for a legitimately test-less change. Without it, a missing
build/test is Inconclusive, never accepted.
verify_timeout: DurationWall-clock budget for the verify command. On timeout the build/test leg
resolves to NotRun ⇒ Inconclusive (we-don’t-know), never Verified.
max_output_bytes: usizeMax bytes of build/test output retained on failure.
Implementations§
Source§impl GateConfig
impl GateConfig
pub fn new(subtask: impl Into<String>, cwd: impl Into<PathBuf>) -> Self
pub fn with_verify_command(self, cmd: Vec<String>) -> Self
pub fn with_no_verify_waiver(self, waiver: NoVerifyWaiver) -> Self
pub fn with_verify_timeout(self, timeout: Duration) -> Self
Trait Implementations§
Source§impl Clone for GateConfig
impl Clone for GateConfig
Auto Trait Implementations§
impl Freeze for GateConfig
impl RefUnwindSafe for GateConfig
impl Send for GateConfig
impl Sync for GateConfig
impl Unpin for GateConfig
impl UnsafeUnpin for GateConfig
impl UnwindSafe for GateConfig
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more