Conversation
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…ntrypoint chaining Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
Please carefully review your modifications to the server and revert them. The server is capable of running on Windows. |
我恢复一下 |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5980283d86
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| var pathList = paths.ToList(); | ||
| var queryParams = new Dictionary<string, string?> | ||
| { | ||
| ["path"] = string.Join(",", pathList) | ||
| }; |
There was a problem hiding this comment.
Send one path param per file instead of comma-join
The execd filesystem API expects path to be passed multiple times (spec lists explode: true, and the Go handler uses QueryArray("path")), but this code concatenates paths into a single comma-separated value. That means multi-path requests become a single literal path like /a,/b, so GetFileInfoAsync (and the same pattern in delete methods) will fail to operate on the intended files. Emitting one path query parameter per entry fixes the mismatch.
Useful? React with 👍 / 👎.
| if (@params?.States != null && @params.States.Count > 0) | ||
| { | ||
| // The API supports multiple state query params | ||
| queryParams["state"] = string.Join(",", @params.States); | ||
| } |
There was a problem hiding this comment.
Use repeated state parameters for list filters
The lifecycle API documents state as a repeatable query parameter (see server/src/api/lifecycle.py description: “Pass multiple times for OR logic”), but this code joins the values with commas. FastAPI will parse state=Running,Paused as a single string instead of two states, so the filter will not match the intended set. This should send one state parameter per value.
Useful? React with 👍 / 👎.
|
Thanks, great work! Could you please update the corresponding information in the PR description? Also, please make sure the examples pass successfully and provide necessary screenshots/execution results. @ninan-nn please review this sdk's design. |
| ### NuGet | ||
|
|
||
| ```bash | ||
| dotnet add package Alibaba.OpenSandbox |
There was a problem hiding this comment.
How to deploy package Alibaba.OpenSandbox?
We need apply a NuGet account to deploy Alibaba.OpenSandbox.
@ninan-nn
There was a problem hiding this comment.
When will nuget Alibaba.OpenSandbox be ready?
ninan-nn
left a comment
There was a problem hiding this comment.
Please ensure that all SDK capabilities have comprehensive end-to-end (E2E) test coverage. You can refer to the E2E implementations in the SDKs for other languages.
Add comprehensive end-to-end tests covering sandbox lifecycle, command execution, filesystem operations, interrupts, streaming, and error handling. Tests validate health checks, metrics, network policies, file CRUD operations, and event handling contracts.


Summary
Testing
Breaking Changes
Checklist