1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
//! HiveLLM binary RPC — **one crate** for the whole Rust stack.
//!
//! Thunder ships as a single publishable crate with three feature-gated
//! layers, so a product depends on `thunder` once instead of tracking
//! `thunder-wire` / `thunder-client` / `thunder-server` as separate
//! releases:
//!
//! - [`wire`] — the frozen wire v1 codec (value model, `Request`/`Response`,
//! length-prefixed MessagePack frames). Always compiled; pure, no sockets
//! (SPEC-001, `WIRE-xxx`).
//! - [`client`] — the multiplexed, profile-driven RPC client (SPEC-003,
//! `CLT-xxx`). Feature `client` (default on).
//! - [`server`] — the family server hot path: accept loop, dispatch trait,
//! profile enforcement (SPEC-004, `SRV-xxx`). Feature `server` (default on).
//!
//! Both `client` and `server` are on by default. A client-only SDK builds
//! with `default-features = false, features = ["client"]`; a server binary
//! with `["server"]`. The wire layer alone is `default-features = false`.
//!
//! The most-used items are re-exported at the crate root; the full surface
//! of each layer lives under its module. `client::Credentials` and
//! `server::Credentials` are distinct types and are reached through their
//! modules (they are deliberately not re-exported at the root).
pub use ;
pub use ;
pub use ;
pub use ;