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::followfollows. Dropping it stops following: the invocation is cancelled. - Remote
Actions - An application’s client for the session’s action door. Clones share one client.
- Remote
Actions Guard - Keeps a
RemoteActions::enterhost 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§
- Cancellation
Call - 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 originalInvocationCalluntil it reportsCancelledor another terminal state. - Catalogue
Call - A catalogue read: every page of one query, gathered.
- Invocation
Call - An invocation: its latest lifecycle update, or the host’s refusal (then nothing ran).