pub enum GovernedAction {
Store,
Delete,
Promote,
Reflect,
}Expand description
Actions that governance gates. Used as the action_type column value in
pending_actions and as the discriminator for enforcement calls.
§Disambiguation (issue #970)
GovernedAction is the approval-queue discriminator —
pending_actions.action_type and enforce_governance consult it
to decide which substrate action is being approved. It is
related-but-distinct from crate::governance::Op, which is the
K9 permission-rule op discriminator:
GovernedActionwire strings:"store","delete","promote","reflect"(4 variants — the substrate actions that can be queued for approval).Opwire strings:"memory_store","memory_link","memory_delete","memory_archive","memory_consolidate","memory_replay"(6 variants — every K9-gated tool, including ones that can never be queued for approval likememory_replay).
They look like the same vocabulary; they aren’t. Consolidating
would require breaking one of the two on-wire string sets. See
docs/internal/enum-proliferation-audit-970.md for the full
audit.
Variants§
Store
Delete
Promote
Reflect
v0.7.0 L1-8: memory_reflect approval gate. Queued when
GovernancePolicy::require_approval_above_depth is set and the
proposed reflection depth exceeds the threshold.
Implementations§
Trait Implementations§
Source§impl Clone for GovernedAction
impl Clone for GovernedAction
Source§fn clone(&self) -> GovernedAction
fn clone(&self) -> GovernedAction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for GovernedAction
Source§impl Debug for GovernedAction
impl Debug for GovernedAction
Source§impl<'de> Deserialize<'de> for GovernedAction
impl<'de> Deserialize<'de> for GovernedAction
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>,
impl Eq for GovernedAction
Source§impl PartialEq for GovernedAction
impl PartialEq for GovernedAction
Source§fn eq(&self, other: &GovernedAction) -> bool
fn eq(&self, other: &GovernedAction) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for GovernedAction
impl Serialize for GovernedAction
impl StructuralPartialEq for GovernedAction
Auto Trait Implementations§
impl Freeze for GovernedAction
impl RefUnwindSafe for GovernedAction
impl Send for GovernedAction
impl Sync for GovernedAction
impl Unpin for GovernedAction
impl UnsafeUnpin for GovernedAction
impl UnwindSafe for GovernedAction
Blanket Implementations§
impl<T> Boilerplate for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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§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
key and return true if they are equal.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>
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>
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