summaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-09-21 00:29:45 +0300
committerGitHub <noreply@github.com>2026-09-21 00:29:45 +0300
commit0ff0f27e222633c97ba4291f6b9be4137002ca84 (patch)
tree97ee77c8a85801ab90133492ddd71b3ce635b8fb /src/api
parentf090ce95d05d2e7811869be93f9a23bf4ac2c3af (diff)
fix: preserve session layouts across shutdown and restore failures (#4400)
* fix: preserve session layouts across shutdown and restore failures refs #4320 * test: update subscription fixture for pane restore errors --------- Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
Diffstat (limited to 'src/api')
-rw-r--r--src/api/schema/panes.rs2
-rw-r--r--src/api/schema/tests.rs2
-rw-r--r--src/api/server.rs1
-rw-r--r--src/api/server/subscription_socket_tests.rs1
-rw-r--r--src/api/subscriptions.rs1
5 files changed, 7 insertions, 0 deletions
diff --git a/src/api/schema/panes.rs b/src/api/schema/panes.rs
index 6cbcaf43..67d5185e 100644
--- a/src/api/schema/panes.rs
+++ b/src/api/schema/panes.rs
@@ -535,6 +535,8 @@ pub struct PaneInfo {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub foreground_cwd: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
+ pub restore_error: Option<String>,
+ #[serde(default, skip_serializing_if = "Option::is_none")]
pub label: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub agent: Option<String>,
diff --git a/src/api/schema/tests.rs b/src/api/schema/tests.rs
index d51c565d..4f15b322 100644
--- a/src/api/schema/tests.rs
+++ b/src/api/schema/tests.rs
@@ -825,6 +825,7 @@ fn worktree_request_and_response_round_trip() {
focused: true,
cwd: Some("/worktrees/herdr/worktree-api".into()),
foreground_cwd: None,
+ restore_error: None,
label: None,
agent: None,
title: None,
@@ -1253,6 +1254,7 @@ fn create_response_round_trips_with_root_pane() {
focused: false,
cwd: Some("/tmp/review".into()),
foreground_cwd: None,
+ restore_error: None,
label: None,
agent: None,
title: None,
diff --git a/src/api/server.rs b/src/api/server.rs
index 44a2a0df..23817fff 100644
--- a/src/api/server.rs
+++ b/src/api/server.rs
@@ -1037,6 +1037,7 @@ mod tests {
focused: true,
cwd: None,
foreground_cwd: None,
+ restore_error: None,
label: None,
agent: Some("pi".into()),
title: None,
diff --git a/src/api/server/subscription_socket_tests.rs b/src/api/server/subscription_socket_tests.rs
index 5cfbc706..35b0bf12 100644
--- a/src/api/server/subscription_socket_tests.rs
+++ b/src/api/server/subscription_socket_tests.rs
@@ -224,6 +224,7 @@ fn reply_to_probe(request: ApiRequestMessage) {
focused: true,
cwd: None,
foreground_cwd: None,
+ restore_error: None,
label: None,
agent: Some("pi".into()),
title: None,
diff --git a/src/api/subscriptions.rs b/src/api/subscriptions.rs
index 5be2d523..2258a3ce 100644
--- a/src/api/subscriptions.rs
+++ b/src/api/subscriptions.rs
@@ -701,6 +701,7 @@ mod tests {
focused: true,
cwd: None,
foreground_cwd: None,
+ restore_error: None,
label: None,
agent: None,
title: None,