pub struct ActionRow {
pub key: ActionKey,
pub component_name: String,
pub description: String,
pub request_schema: SchemaSource,
pub response_schema: SchemaSource,
pub requirements: Vec<Capability>,
pub incarnation: ActionIncarnation,
}Expand description
One row of the registry’s authoritative action snapshot.
Rows exist only for Running component incarnations and carry everything
S1 dispatch and R2 generation need — never host-facade authority. The
dispatch identity S1 needs is (key, incarnation): frame-conv derives
the conversation address from those two values mechanically, so a stale
incarnation’s derived address is one no replacement incarnation ever
attaches.
Fields§
§key: ActionKeyGlobally unique action identity.
component_name: StringHuman-readable component name (tool description material).
description: StringDeclared description, passed through without rewriting.
request_schema: SchemaSourceThe typed request message reference (S3).
response_schema: SchemaSourceThe typed response message reference (S3).
requirements: Vec<Capability>Canonical requirement sequence for the consuming act.
incarnation: ActionIncarnationThe Running incarnation these rows belong to.
Implementations§
Source§impl ActionRow
impl ActionRow
Sourcepub fn dispatch_ordinal(&self) -> u64
pub fn dispatch_ordinal(&self) -> u64
The dispatch ordinal S1 addressing derives from: BLAKE3 over a domain tag, the key’s canonical bytes (injective — fixed-width component identity then action id UTF-8), and the little-endian incarnation ordinal, truncated to the first eight digest bytes.
Pure and mechanical: byte-identical rows derive the byte-identical ordinal in any process. frame-core stays ignorant of conversations — this is an opaque address ordinal; frame-conv interprets it. A stale incarnation’s ordinal is one no replacement incarnation ever derives, so a retained handle can never reach the replacement (F-6a R5’s stopped-target bound).
Trait Implementations§
impl Eq for ActionRow
impl StructuralPartialEq for ActionRow
Auto Trait Implementations§
impl Freeze for ActionRow
impl RefUnwindSafe for ActionRow
impl Send for ActionRow
impl Sync for ActionRow
impl Unpin for ActionRow
impl UnsafeUnpin for ActionRow
impl UnwindSafe for ActionRow
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
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§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.