pub struct PromptPermissionsState {
pub locked: bool,
pub restore_needed: bool,
pub restored: bool,
pub last_warning: Option<String>,
}Expand description
Tracks PROMPT.md permission lifecycle for reducer-driven protection.
§State Transitions
- Startup:
locked=false, restore_needed=false, restored=false - After
LockPromptPermissionseffect:locked=true, restore_needed=true - After
RestorePromptPermissionseffect:locked=false, restore_needed=false, restored=true
§Resume Safety
All fields are checkpointed. On resume:
- If locked but not restored, orchestration will derive
RestorePromptPermissions - If already restored, no further action needed
This state is serialized in PipelineCheckpoint.prompt_permissions to ensure
pending restores are honored after resume.
Fields§
§locked: boolTrue if LockPromptPermissions effect has been attempted.
restore_needed: boolTrue if restoration is needed (set when lock is attempted, even if it fails).
restored: boolTrue if RestorePromptPermissions effect has completed.
last_warning: Option<String>Warning message from last permission operation (for observability).
Trait Implementations§
Source§impl Clone for PromptPermissionsState
impl Clone for PromptPermissionsState
Source§fn clone(&self) -> PromptPermissionsState
fn clone(&self) -> PromptPermissionsState
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PromptPermissionsState
impl Debug for PromptPermissionsState
Source§impl Default for PromptPermissionsState
impl Default for PromptPermissionsState
Source§fn default() -> PromptPermissionsState
fn default() -> PromptPermissionsState
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for PromptPermissionsState
impl<'de> Deserialize<'de> for PromptPermissionsState
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for PromptPermissionsState
impl PartialEq for PromptPermissionsState
Source§impl Serialize for PromptPermissionsState
impl Serialize for PromptPermissionsState
impl Eq for PromptPermissionsState
impl StructuralPartialEq for PromptPermissionsState
Auto Trait Implementations§
impl Freeze for PromptPermissionsState
impl RefUnwindSafe for PromptPermissionsState
impl Send for PromptPermissionsState
impl Sync for PromptPermissionsState
impl Unpin for PromptPermissionsState
impl UnsafeUnpin for PromptPermissionsState
impl UnwindSafe for PromptPermissionsState
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> 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.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