pub struct NoPathsTouched {
pub shell: ShellRunner,
}Expand description
Fails when any path Claude touched (per git diff --name-only HEAD)
starts with one of the configured prefixes.
args: {"prefixes": ["secrets/", "private/"]}. Empty prefixes
→ pass. Workspace not a git repo → pass (verifier irrelevant).
Fields§
§shell: ShellRunnerTrait Implementations§
Source§impl CustomVerifier for NoPathsTouched
impl CustomVerifier for NoPathsTouched
Source§fn verify<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
args: &'life1 Value,
workspace: &'life2 Path,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, DriverError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn verify<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
args: &'life1 Value,
workspace: &'life2 Path,
) -> Pin<Box<dyn Future<Output = Result<Option<String>, DriverError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Ok(None) ⇒ pass; Ok(Some(message)) ⇒ fail; Err ⇒
infrastructure problem (propagated up).Source§impl Default for NoPathsTouched
impl Default for NoPathsTouched
Source§fn default() -> NoPathsTouched
fn default() -> NoPathsTouched
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for NoPathsTouched
impl RefUnwindSafe for NoPathsTouched
impl Send for NoPathsTouched
impl Sync for NoPathsTouched
impl Unpin for NoPathsTouched
impl UnsafeUnpin for NoPathsTouched
impl UnwindSafe for NoPathsTouched
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
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