Skip to main content

asimov_remote/
lib.rs

1// This is free and unencumbered software released into the public domain.
2
3//! Remote implementations of ASIMOV component patterns.
4//!
5//! Configured operations implement [`Execute`]; their live results use the raw
6//! JSONL batches defined in asimov-flow. Local execution belongs to asimov-runner.
7//! This crate has no dependency on a local process executor or social domain API.
8//!
9//! The `http` feature provides rustls-backed HTTP with HTTP/2 negotiation and
10//! HTTP/1.1 streaming fallback. The initial fetch/list protocol uses JSON POST
11//! requests and `application/jsonl` responses. The `iroh` feature exposes an empty
12//! module reserved for the future Iroh/QUIC transport.
13//!
14//! Successful startup does not mean completed execution. Consume the returned
15//! stream to EOF to observe body failures. Dropping it cancels further local
16//! consumption, without promising cancellation of work on the remote server.
17
18#![no_std]
19#![forbid(unsafe_code)]
20#![cfg_attr(docsrs, feature(doc_cfg))]
21
22extern crate alloc;
23#[cfg(feature = "std")]
24extern crate std;
25
26pub use asimov_patterns::Execute;
27
28#[cfg(feature = "http")]
29pub mod http;
30
31#[cfg(feature = "iroh")]
32pub mod iroh;