pub struct AiPermissions { /* private fields */ }Expand description
What this application actually grants.
Implementations§
Source§impl AiPermissions
impl AiPermissions
Sourcepub fn read_and_propose() -> Self
pub fn read_and_propose() -> Self
The default: an external AI may look at things and prepare changes, but nothing it does takes effect without a human.
This is the whole safety story in one line. The caller is a model reacting to content it read somewhere; prompt injection in a document must not be able to delete anything.
pub fn from(permissions: impl IntoIterator<Item = AiPermission>) -> Self
pub fn allows(&self, permission: AiPermission) -> bool
pub fn is_empty(&self) -> bool
Sourcepub fn grants_mutation(&self) -> bool
pub fn grants_mutation(&self) -> bool
Whether anything granted can change data. Worth surfacing in the settings UI.
pub fn granted(&self) -> impl Iterator<Item = AiPermission> + '_
Trait Implementations§
Source§impl Clone for AiPermissions
impl Clone for AiPermissions
Source§fn clone(&self) -> AiPermissions
fn clone(&self) -> AiPermissions
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 moreSource§impl Debug for AiPermissions
impl Debug for AiPermissions
Source§impl Default for AiPermissions
impl Default for AiPermissions
Source§fn default() -> AiPermissions
fn default() -> AiPermissions
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for AiPermissions
impl<'de> Deserialize<'de> for AiPermissions
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
impl Eq for AiPermissions
Source§impl PartialEq for AiPermissions
impl PartialEq for AiPermissions
Source§impl Serialize for AiPermissions
impl Serialize for AiPermissions
impl StructuralPartialEq for AiPermissions
Auto Trait Implementations§
impl Freeze for AiPermissions
impl RefUnwindSafe for AiPermissions
impl Send for AiPermissions
impl Sync for AiPermissions
impl Unpin for AiPermissions
impl UnsafeUnpin for AiPermissions
impl UnwindSafe for AiPermissions
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