Sandbox stuck in unrecoverable Error phase after supervisor session drops (SSH disconnect); stop/start refuse to act
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
Bắt đầu bằng cách lần theo việc xử lý phiên supervisor và quá trình xác thực giai đoạn sandbox đứng sau các lỗi sandbox stop và sandbox start đã được báo cáo, sử dụng các log gateway và các bước tái hiện được cung cấp. Được xem là hoàn tất khi kết nối SSH bị ngắt không còn làm mất khả năng khôi phục, hoặc một đường dẫn khôi phục tường minh có thể khôi phục sandbox mà không loại bỏ /sandbox.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
When the SSH connection carrying a sandbox's supervisor session drops (e.g. client-side "Broken pipe"), the sandbox transitions to Phase: Error and there is no way to recover it short of sandbox delete + sandbox create. sandbox stop and sandbox start both refuse to act on an Error-phase sandbox, so the workspace inside /sandbox is unrecoverable.
Steps to reproduce
openshell sandbox create(image/policy runningopenclaw-startas main command)- Attach interactively over SSH and run through a long-running foreground process (e.g. an onboarding wizard)
- Let the SSH client disconnect mid-session (e.g. network blip →
client_loop: send disconnect: Broken pipe) openshell sandbox get <name>→Phase: Erroropenshell sandbox stop <name>→Error: sandbox must be Ready to stop (current phase: Error)openshell sandbox start <name>→Error: sandbox must be Stopped to start (current phase: Error)
Relevant logs
[1789391074.213] [gateway] [WARN ] supervisor session: stream error
[1789391074.213] [gateway] [INFO ] supervisor session: ended
(log capture was truncated at time of report)
Expected
Either:
- The supervisor session should be independent of the client SSH connection that carries it (a network drop on the client side shouldn't kill the sandbox), or
Errorphase should have a documented recovery path (e.g.sandbox stop --force/sandbox recover) that doesn't discard the workspace.
Actual
The only path out of Error phase is sandbox delete, which discards the sandbox's workspace with no export/backup step offered.
openshell version: 0.0.116
- Ngôn ngữ chính
- Rust
- Star
- 8.7k
- Fork
- 1.3k
- Merge trung bình
- 2 ngày 8 giờ
- Pull request đã merge (30 ngày)
- 271
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của NVIDIA/OpenShell
-
area:docs
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
-
state:triage-needed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
area:cli state:validated
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
state:triage-needed
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
area:build spike state:review-ready state:stale
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 68/100
Tất cả issue của NVIDIA/OpenShell
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
agentic-workflows
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
web-infra-dev/rspack#15847 ·