Skip to content

feat(sdk): support multiple sandbox backends - #14

Open
WenYuLuo wants to merge 3 commits into
inclusionAI:mainfrom
WenYuLuo:lwy/multi-backend
Open

feat(sdk): support multiple sandbox backends#14
WenYuLuo wants to merge 3 commits into
inclusionAI:mainfrom
WenYuLuo:lwy/multi-backend

Conversation

@WenYuLuo

@WenYuLuo WenYuLuo commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add backend-neutral SDK adapters for openyuanrong-sandbox and the actor-based openyuanrong-sdk, including lazy selection and cleanup handling.
  • Bound asynchronous sandbox cleanup in the benchmark workload.

Validation

  • make sdk-check (99 unit tests, Ruff, mypy)
  • GitHub Actions Python SDK matrix

This PR intentionally does not include the openYuanRong 0.9.4 or node IP-range deployment changes; those are tracked separately.

@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch 2 times, most recently from 39f048c to f53faf5 Compare August 3, 2026 06:17
@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch 5 times, most recently from 7d35ce5 to 15f5b88 Compare August 4, 2026 05:49
Comment thread .github/workflows/release-python.yml Outdated
Comment thread .github/workflows/release-python.yml Outdated
Comment thread builder/config/yr_services.yaml Outdated
Comment thread builder/config/yr_services.yaml
Comment thread builder/runtime.Dockerfile Outdated
Comment thread sdk/python/benchmarks/sandbox_pressure.py
Comment thread sdk/python/tests/unit/test_addresses.py
Comment thread sdk/python/pyproject.toml Outdated
Comment thread sdk/python/README.md Outdated
Comment thread AGENTS.md Outdated
@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch 2 times, most recently from c3292c2 to e32f906 Compare August 4, 2026 14:19
Comment thread README.md Outdated
Comment thread builder/config/yr_services.yaml
Comment thread sdk/python/akernel_sdk/_backends/base.py
Comment thread sdk/python/akernel_sdk/_addresses.py Outdated
Comment thread sdk/python/akernel_sdk/_backends/openyuanrong_sdk_impl.py
Comment thread sdk/python/akernel_sdk/_backends/openyuanrong_sdk_impl.py
Comment thread sdk/python/README.md Outdated
Comment thread sdk/python/README.md Outdated
Comment thread sdk/python/README.md Outdated

@WenYuLuo WenYuLuo left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please check the feedback.

@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch 2 times, most recently from 3c1e69a to 1a4961e Compare August 5, 2026 05:50
Add lazy adapters for openyuanrong-sandbox and the actor-based
openyuanrong-sdk while keeping public SDK types backend-neutral.

Install the pinned RRT binary in the rootfs and register the Rust
workload alias. Route sandbox control and direct RRT traffic through a
dedicated Traefik router in Helm and standalone deployments.

Roll back partial actor creation and always clean up local tunnel, PTY,
and client state. Cover backend selection, detached deletion, cleanup
precedence, and partial creation.

Signed-off-by: robbluo <luo1442@gmail.com>
@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch from 1a4961e to 8330c5c Compare August 7, 2026 03:11
@WenYuLuo WenYuLuo changed the title feat(sdk): support multiple sandbox backends feat(sdk): support openYuanRong backends and node network alignment Aug 7, 2026
@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch from 8330c5c to f8be236 Compare August 7, 2026 03:21
@WenYuLuo WenYuLuo changed the title feat(sdk): support openYuanRong backends and node network alignment feat(sdk): support openYuanRong backends Aug 7, 2026
@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch from f8be236 to 9dbe5d9 Compare August 7, 2026 04:02
Keep at most one pending deletion per load thread while overlapping
cleanup with the next sandbox lifecycle. This prevents delete work from
accumulating without limit during sustained pressure tests.

Signed-off-by: robbluo <luo1442@gmail.com>
@WenYuLuo
WenYuLuo force-pushed the lwy/multi-backend branch from 9dbe5d9 to 3f517d7 Compare August 7, 2026 04:08
@WenYuLuo
WenYuLuo requested a review from tianyuzhou95 August 7, 2026 09:14
@tianyuzhou95 tianyuzhou95 changed the title feat(sdk): support openYuanRong backends feat(sdk): support multiple sandbox backends Aug 7, 2026
Comment thread sdk/python/akernel_sdk/sandbox.py Outdated
Comment thread sdk/python/akernel_sdk/_resources.py Outdated
Track local cleanup separately from successful remote termination so transient delete failures can be retried. Use ID-based deletion for the sandbox backend and reuse the shared resource parser for empty fragment responses.

Signed-off-by: robbluo <luo1442@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants