forge_worker_sdk/protocol/
envelope.rs1use serde::{Deserialize, Serialize};
7use serde_json::Value;
8
9#[derive(Debug, Clone, Serialize, Deserialize)]
11pub struct WireRequest {
12 pub id: String,
13 pub method: String,
14 #[serde(default, skip_serializing_if = "Option::is_none")]
15 pub params: Option<Value>,
16}
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20pub struct WireResponse {
21 pub id: String,
22 pub ok: bool,
23 #[serde(default, skip_serializing_if = "Option::is_none")]
24 pub error: Option<super::ErrorPayload>,
25 #[serde(default, skip_serializing_if = "Option::is_none")]
26 pub payload: Option<Value>,
27}
28
29#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
31pub struct WireEvent {
32 #[serde(rename = "type")]
33 pub event_type: String,
34 pub job_id: String,
35 #[serde(default, skip_serializing_if = "Option::is_none")]
36 pub payload: Option<Value>,
37}