Skip to main content

Module remote_actions

Module remote_actions 

Expand description

An application’s own client for the session’s action door.

RemoteActions lets an app read the action catalogue and invoke published actions through the session broker — the same door the palette, scripts and agents use. The broker decides every request for the application under its own identity: it reaches what it owns (its own surface, and actions published under its own package id) as the person using it; reading the catalogue needs the manifest’s [actions] query, and invoking another app’s action needs [actions] invoke plus a workspace grant to the app. Nothing here widens that: the client only carries requests and answers.

Answers arrive as Arriving reads (crate::arriving), so a bound view updates, an idle window wakes when one lands, and Arriving::view shows them with the framework’s placeholders. Each read says where its answer comes from: this device’s broker. A root that owns a client returns it as its Collaborative capability (or forwards to it), which is how its requests reach the connection and the answers come back.

RemoteActions::with_host serves the same client from an in-process ActionHost instead, for tests and embedded hosts.

Structs§

Followed
A live result RemoteActions::follow follows. Dropping it stops following: the invocation is cancelled.
RemoteActions
An application’s client for the session’s action door. Clones share one client.
RemoteActionsGuard
Keeps a RemoteActions::enter host current on this thread.

Constants§

CATALOGUE_UNANSWERED
Why a catalogue read was refused when nothing answered it in time.
CATALOGUE_WAIT
How long one catalogue page may go unanswered. A connection that carries the request nowhere (no host in reach to answer it) must not leave the app waiting forever: past this, the read is refused as unavailable.

Type Aliases§

CancellationCall
A request to cancel a running invocation: Ready(()) is the host’s acknowledgement. Acknowledgement is not a terminal invocation outcome; callers must keep observing the original InvocationCall until it reports Cancelled or another terminal state.
CatalogueCall
A catalogue read: every page of one query, gathered.
InvocationCall
An invocation: its latest lifecycle update, or the host’s refusal (then nothing ran).