From 5cfe5e5e730246948b0c9428ad876b6938590aad Mon Sep 17 00:00:00 2001 From: Ogulcan Celik Date: Mon, 13 Jul 2026 03:26:03 +0300 Subject: feat: add configurable sidebar metadata tokens --- src/api/schema/panes.rs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'src/api/schema/panes.rs') diff --git a/src/api/schema/panes.rs b/src/api/schema/panes.rs index 42a640ef..2e37e734 100644 --- a/src/api/schema/panes.rs +++ b/src/api/schema/panes.rs @@ -266,8 +266,6 @@ pub struct PaneReportAgentParams { #[serde(default, skip_serializing_if = "Option::is_none")] pub message: Option, #[serde(default, skip_serializing_if = "Option::is_none")] - pub custom_status: Option, - #[serde(default, skip_serializing_if = "Option::is_none")] pub seq: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub agent_session_id: Option, @@ -302,21 +300,21 @@ pub struct PaneReportMetadataParams { pub title: Option, #[serde(default, skip_serializing_if = "Option::is_none")] pub display_agent: Option, - #[serde(default, skip_serializing_if = "Option::is_none")] - pub custom_status: Option, #[serde(default, skip_serializing_if = "HashMap::is_empty")] pub state_labels: HashMap, + #[serde(default, skip_serializing_if = "HashMap::is_empty")] + #[schemars(schema_with = "super::common::metadata_token_patch_schema")] + pub tokens: HashMap>, #[serde(default)] pub clear_title: bool, #[serde(default)] pub clear_display_agent: bool, #[serde(default)] - pub clear_custom_status: bool, - #[serde(default)] pub clear_state_labels: bool, #[serde(default, skip_serializing_if = "Option::is_none")] pub seq: Option, #[serde(default, skip_serializing_if = "Option::is_none")] + #[schemars(range(min = 1, max = 86_400_000))] pub ttl_ms: Option, } @@ -356,12 +354,17 @@ pub struct PaneInfo { #[serde(default, skip_serializing_if = "Option::is_none")] pub title: Option, #[serde(default, skip_serializing_if = "Option::is_none")] + pub terminal_title: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] + pub terminal_title_stripped: Option, + #[serde(default, skip_serializing_if = "Option::is_none")] pub display_agent: Option, pub agent_status: AgentStatus, - #[serde(default, skip_serializing_if = "Option::is_none")] - pub custom_status: Option, #[serde(default, skip_serializing_if = "HashMap::is_empty")] pub state_labels: HashMap, + #[serde(default, skip_serializing_if = "HashMap::is_empty")] + #[schemars(schema_with = "super::common::metadata_token_values_schema")] + pub tokens: HashMap, #[serde(default, skip_serializing_if = "Option::is_none")] pub agent_session: Option, #[serde(default, skip_serializing_if = "Option::is_none")] -- cgit v1.2.3