From 9f0dcbe4849be3939d751924d2ee675a99bd181d Mon Sep 17 00:00:00 2001 From: Maximiliano Duthey Date: Mon, 5 Jan 2026 16:45:32 -0300 Subject: [PATCH 1/2] refactor: update SubmitParams to use WitnessInput enum and add env to ResolveParams --- crates/tx3-resolver/src/trp/spec.rs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/crates/tx3-resolver/src/trp/spec.rs b/crates/tx3-resolver/src/trp/spec.rs index 872d9783..4f519936 100644 --- a/crates/tx3-resolver/src/trp/spec.rs +++ b/crates/tx3-resolver/src/trp/spec.rs @@ -5,19 +5,26 @@ use crate::interop::{BytesEncoding, BytesEnvelope}; pub type JsonArgMap = serde_json::Map; -#[derive(Debug, Deserialize, Serialize, Clone)] +#[derive(Debug, Clone, Serialize, Deserialize)] pub struct TirEnvelope { pub content: String, pub encoding: BytesEncoding, pub version: String, } +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(untagged)] +pub enum WitnessInput { + Object(SubmitWitness), + Hex(String), +} + #[derive(Debug, Clone, Serialize, Deserialize)] pub struct SubmitParams { #[serde(rename = "tx")] pub tx: BytesEnvelope, #[serde(rename = "witnesses")] - pub witnesses: Vec, + pub witnesses: Vec, } #[derive(Debug, Clone, Serialize, Deserialize)] @@ -64,6 +71,8 @@ pub struct InputQueryDiagnostic { pub struct ResolveParams { #[serde(rename = "args")] pub args: JsonArgMap, + #[serde(rename = "env")] + pub env: JsonArgMap, #[serde(rename = "tir")] pub tir: TirEnvelope, } From c8c694994227ff817b67fcebc1160d99128f70a1 Mon Sep 17 00:00:00 2001 From: Maximiliano Duthey Date: Mon, 5 Jan 2026 17:26:46 -0300 Subject: [PATCH 2/2] chore: update trp spec with union for witnesses --- specs/v1beta0/trp.json | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/specs/v1beta0/trp.json b/specs/v1beta0/trp.json index 867f0593..a3b79e28 100644 --- a/specs/v1beta0/trp.json +++ b/specs/v1beta0/trp.json @@ -282,6 +282,19 @@ "logs" ] }, + "WitnessInput": { + "title": "WitnessInput", + "oneOf": [ + { + "$ref": "#/components/schemas/SubmitWitness", + "title": "Object" + }, + { + "type": "string", + "title": "Hex" + } + ] + }, "SubmitParams": { "title": "SubmitParams", "type": "object", @@ -292,7 +305,7 @@ "witnesses": { "type": "array", "items": { - "$ref": "#/components/schemas/SubmitWitness" + "$ref": "#/components/schemas/WitnessInput" } } },