Repository navigation
fix: reuse sync runtime and preserve lifecycle failures - #151
Merged
Merged
Conversation
17 tasks done
anycodes
marked this pull request as ready for review
October 29, 2026 02:37
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Successive synchronous ProviderSandbox calls recreated event loops while reusing clients. This uses one lazy loop, removes duplicate decorator bridges, and keeps session records when remote deletion fails.
Both command modes preserve quoted literal arguments and explicit shell expansion in background execution. Status queries propagate authentication/network/service failures instead of reporting that the sandbox is absent.
Closes #150
Companion: Alibaba-Agent-Sandbox/agent-sandbox#216
Type of Change
Changes
Testing
Client full suite: 2362 passed / 27 skipped; changed behavior: 199 passed. Unmodified server suite: 873 passed / 1 skipped / 2 failed; a raw loopback probe receives environment HTTP 501 rather than project output. Additional engine probes: 18 passed / 8 failed (five environment responses and three existing non-CI expectation drifts).
Targeted real-cloud command regressions: 3 passed; declarative cloud suite: 6 passed; additional TypeScript/Python literal/background/file/lifecycle probes passed. Owned resource deletion was independently verified. No managed key was created or renewed. Full all-provider cloud acceptance was not run.
Checklist
Definition of Done
Evidence:
.agents/evidence/verify/2026-10-29-defensive-complexity-cleanup.md.Qualified-ID routing, implicit deployment of local registrations and retained-instance handle design remain separate unresolved design work. No release/version bump is included.
Complete source CI passed at
7499ddf6c6805b50a65afa6e4b9778f5c466d468. The final documentation-only commit also passed all checks before merge.