Repository navigation
Python SDK 0.2.0rc5
Pre-releasePython SDK 0.2.0rc5 adds supported initialization budgets to sandbox creation and restoration, and corrects default ports for scheme-qualified gateway addresses.
- Expose
init_timeoutthrough the constructor,Sandbox.create(),Sandbox.from_snapshot()andSandbox.fork(). The default remains 30 seconds; fork inherits the handle's requested setting unless overridden. - Derive omitted logical creation/restoration budgets from scheduling plus initialization plus the backend's 30-second reserve. Reject invalid initialization values and incompatible explicit budgets before allocating or capturing resources.
- Document persisted server policy for manual reload and automatic failover, preserving logical identity, original command results, ownership and cleanup. Node RPC and client observation deadlines remain independent; initialization timeout does not bound synchronous cleanup.
- Use standard ports for scheme-qualified gateway overrides: HTTPS/WSS use 443, HTTP/WS use 80, and explicit ports are preserved. Standalone SDK configuration uses the HTTPS control listener for authenticated published-port access.
The declared native dependency remains adx-environment==0.1.0rc3. Backend runtime compatibility is deployment-specific; use the SDK guide for this release and its standalone instructions.
Install this prerelease:
python -m pip install 'akernel-sdk==0.2.0rc5'Validation before publication: 441 SDK unit tests, 35 benchmark-driver tests, Ruff/mypy, separate clean wheel/sdist installations, initialization-budget contract tests, and all 10 PR CI execution jobs passed. A clean-installed candidate also passed real checkpoint reload, automatic same-node failover and short-budget failure with a one-shot 35-second runtime delay on the matching runsc backend. Original command results and resource cleanup passed. The operator RPC budgets in that qualification were explicitly 120 seconds; product RPC defaults are unchanged, and cross-node recovery was not tested.
This prerelease comes from develop commit 1a4d6ee0f2406b1044df1f4021cdab56ccb49d64 after #144. See #143 for initialization budgets and #141 for gateway/deployment changes.
Post-publication acceptance on 2026-11-02: the public PyPI wheel and source distribution passed separate clean installations, file/documentation checks against the release commit, dependency checks, CLI smoke, and all initialization-budget/gateway-address contract tests. The installed public wheel passed isolated real checkpoint reload (36.621 s), automatic same-node failover (36.796 s), expected short-initialization failure and complete resource cleanup, including a 36-second late-restore observation. The original command ID and result survived both successful recoveries. Qualification used the matched runsc backend, TLS verification and explicit 120-second operator RPC budgets; cross-node/VM/E2B validation was outside this qualification. All acceptance criteria in #142 are complete and the issue is closed.