Repository navigation
Commit 48d9ab3
authored
fix(cli): check final exec status and warn on partial input (#3803)
* feat(cli): stream non-TTY exec input before EOF
Add --stream-stdin using the existing interactive exec RPC without a PTY. Preserve separate output streams and enforce the existing 4 MiB cumulative input cap while forwarding input.
Require explicit clean stdin EOF and drain the response through its final gRPC status. Cover held-open input, limits, cancellation, trailers, and default finite-input behavior with subprocess and live sandbox regressions.
Signed-off-by: Shiju <shiju@nvidia.com>
* test(cli): distinguish exec cancellation from stdin EOF
Treat transport termination and response cancellation as separate test observations. Verify explicit stdin EOF through the shared frame writer and cover cancellation in the pinned Tonic decoder.
Signed-off-by: Shiju <shiju@nvidia.com>
* style(cli): use lazy optional stdin dispatch
Signed-off-by: Shiju <shiju@nvidia.com>
* test(cli): use imported duration in stdin EOF regression
Signed-off-by: Shiju <shiju@nvidia.com>
---------
Signed-off-by: Shiju <shiju@nvidia.com>1 parent 121930b commit 48d9ab3
3 files changed
Lines changed: 561 additions & 2 deletions
File tree
- crates/openshell-cli
- src
- tests
- docs/how-it-works/sandboxes
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2506 | 2506 | | |
2507 | 2507 | | |
2508 | 2508 | | |
2509 | | - | |
| 2509 | + | |
2510 | 2510 | | |
2511 | 2511 | | |
2512 | 2512 | | |
| |||
2648 | 2648 | | |
2649 | 2649 | | |
2650 | 2650 | | |
2651 | | - | |
| 2651 | + | |
| 2652 | + | |
| 2653 | + | |
2652 | 2654 | | |
2653 | 2655 | | |
2654 | 2656 | | |
| |||
0 commit comments