pub struct HostedHarnessRuntime { /* private fields */ }Expand description
Shared owner of a single harness-native runtime.
Implementations§
Source§impl HostedHarnessRuntime
impl HostedHarnessRuntime
Sourcepub fn spawn(
runtime: Box<dyn RuntimeConnection>,
capabilities: RuntimeCapabilities,
) -> (Arc<HostedHarnessRuntime>, HostedHarnessConnection)
pub fn spawn( runtime: Box<dyn RuntimeConnection>, capabilities: RuntimeCapabilities, ) -> (Arc<HostedHarnessRuntime>, HostedHarnessConnection)
Promote one exclusive native connection into a multi-frontend host and return the first SDK connection to it.
Sourcepub fn frontend_sender(&self) -> Sender<SdkEvent>
pub fn frontend_sender(&self) -> Sender<SdkEvent>
Subscribe to the canonical sequenced frontend event stream.
Trait Implementations§
Source§impl SdkRuntime for HostedHarnessRuntime
impl SdkRuntime for HostedHarnessRuntime
Source§fn describe<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<FrontendRuntimeDescriptor, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
fn describe<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<FrontendRuntimeDescriptor, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
Describe runtime identity, modules, commands, actions, and state.
Source§fn attach<'life0, 'async_trait>(
&'life0 self,
_history_limit: usize,
) -> Pin<Box<dyn Future<Output = Result<FrontendAttachment, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
fn attach<'life0, 'async_trait>(
&'life0 self,
_history_limit: usize,
) -> Pin<Box<dyn Future<Output = Result<FrontendAttachment, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
Atomically attach at the canonical history/live-event boundary.
Source§fn send_input<'async_trait>(
self: Arc<HostedHarnessRuntime>,
prompt: String,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
HostedHarnessRuntime: 'async_trait,
fn send_input<'async_trait>(
self: Arc<HostedHarnessRuntime>,
prompt: String,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
HostedHarnessRuntime: 'async_trait,
Atomically accept a new user turn and return once ownership is claimed. Read more
Source§fn submit<'life0, 'async_trait>(
&'life0 self,
prompt: String,
) -> Pin<Box<dyn Future<Output = Result<String, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
fn submit<'life0, 'async_trait>(
&'life0 self,
prompt: String,
) -> Pin<Box<dyn Future<Output = Result<String, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
Submit a new user turn.
Source§fn interrupt<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
fn interrupt<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
Interrupt an active turn.
Source§fn steer<'life0, 'async_trait>(
&'life0 self,
_prompt: String,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
fn steer<'life0, 'async_trait>(
&'life0 self,
_prompt: String,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
Queue a steering instruction when supported.
Source§fn respond<'life0, 'async_trait>(
&'life0 self,
_response: FrontendResponse,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
fn respond<'life0, 'async_trait>(
&'life0 self,
_response: FrontendResponse,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
HostedHarnessRuntime: 'async_trait,
Answer a typed runtime request when supported.
Source§fn submit_with_images<'life0, 'async_trait>(
&'life0 self,
prompt: String,
image_urls: Vec<String>,
) -> Pin<Box<dyn Future<Output = Result<String, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn submit_with_images<'life0, 'async_trait>(
&'life0 self,
prompt: String,
image_urls: Vec<String>,
) -> Pin<Box<dyn Future<Output = Result<String, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Submit a new user turn with canonical multimodal image inputs. Read more
Source§fn invoke<'life0, 'async_trait>(
&'life0 self,
operation: FrontendOperationInvocation,
) -> Pin<Box<dyn Future<Output = Result<FrontendOperationResult, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn invoke<'life0, 'async_trait>(
&'life0 self,
operation: FrontendOperationInvocation,
) -> Pin<Box<dyn Future<Output = Result<FrontendOperationResult, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Invoke one operation from the descriptor’s explicit catalog.
Source§fn lease_snapshot<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn lease_snapshot<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Read the one-controller/many-observer ownership state.
Source§fn take_control<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn take_control<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Explicitly acquire the controller lease from another interactive
client. Ordinary mutations never perform an implicit takeover.
Source§fn heartbeat<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn heartbeat<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Refresh observer activity and a controller lease owned by this client.
Source§fn detach<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn detach<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<RuntimeLeaseSnapshot, SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Release this client’s observer/controller state without stopping the
runtime.
Source§fn close<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn close<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), SdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Explicitly close the SDK-owned runtime when the negotiated descriptor
grants that owner-level action. Dropping an attachment is always a
detach and never calls this operation implicitly.
Auto Trait Implementations§
impl !Freeze for HostedHarnessRuntime
impl !RefUnwindSafe for HostedHarnessRuntime
impl !UnwindSafe for HostedHarnessRuntime
impl Send for HostedHarnessRuntime
impl Sync for HostedHarnessRuntime
impl Unpin for HostedHarnessRuntime
impl UnsafeUnpin for HostedHarnessRuntime
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