#[non_exhaustive]pub enum Message {
Handshake {
worker_version: String,
protocol_version: u16,
},
ConfigureFrameLimit {
max_frame_bytes: u32,
},
Request(Request),
Response(Response),
Diagnostic(Diagnostic),
ProgressTick(ProgressTick),
DataRow(DataRow),
FatalExit(FatalExit),
}Expand description
One protocol message exchanged over the worker boundary.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Handshake
Sent by the child immediately after spawn to advertise its version and supported protocol revision.
Fields
ConfigureFrameLimit
Sent by the parent immediately after the handshake frame to negotiate the per-frame size cap for the remainder of this connection.
The parent owns the memory-safety policy: it clamps the requested cap
into [MIN_FRAME_BYTES, MAX_FRAME_BYTES_HARD_CAP]
before sending. The child installs the value as-is.
Request(Request)
Parent → child request frame.
Response(Response)
Child → parent terminal response for one request.
Diagnostic(Diagnostic)
Child → parent intermediate diagnostic frame.
ProgressTick(ProgressTick)
Child → parent intermediate progress frame.
DataRow(DataRow)
Child → parent streaming data row frame.
FatalExit(FatalExit)
Child → parent fatal exit notification carrying the captured stderr just before the child process tears down.