pub enum PathPolicy {
Jailed,
Unrestricted,
}Expand description
Whether the filesystem tools are jailed to the workspace root (ADR-0008 amendment).
The jail is the default posture, not a hard wall — every studied harness offers a
full-access mode, and since we are headless (no permission prompt) a caller must be
able to opt out (--dangerously-skip-permissions / --yolo). The shell tool is never
path-jailed regardless; only the structured FS tools consult this.
Variants§
Jailed
Resolve FS-tool paths under workspace_root; reject ../absolute/symlink escapes.
Unrestricted
Resolve relative paths against cwd, allow absolute / out-of-root paths (the
--dangerously-skip-permissions / --yolo behavior).
Trait Implementations§
Source§impl Clone for PathPolicy
impl Clone for PathPolicy
Source§fn clone(&self) -> PathPolicy
fn clone(&self) -> PathPolicy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for PathPolicy
Source§impl Debug for PathPolicy
impl Debug for PathPolicy
Source§impl Default for PathPolicy
impl Default for PathPolicy
Source§fn default() -> PathPolicy
fn default() -> PathPolicy
Returns the “default value” for a type. Read more
impl Eq for PathPolicy
Source§impl PartialEq for PathPolicy
impl PartialEq for PathPolicy
impl StructuralPartialEq for PathPolicy
Auto Trait Implementations§
impl Freeze for PathPolicy
impl RefUnwindSafe for PathPolicy
impl Send for PathPolicy
impl Sync for PathPolicy
impl Unpin for PathPolicy
impl UnsafeUnpin for PathPolicy
impl UnwindSafe for PathPolicy
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,
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
Compare self to
key and return true if they are equal.