Skip to content

test: preserve timed diagnostics for CLI file-transfer acceptance #109

Open

Description

@anycodes

Problem

The CLI acceptance fixture in e2e/provider_live.py::cli_express cannot diagnose intermittent file-transfer failures: it discards upload/download stderr and records no per-step elapsed time or HTTP status. This blocks reliable classification of a failed production-provider check.

Observed while validating #108 (candidate client/server 0.4.0a1 and built CLI 0.5.0):

  • Configured full CLI case: PASS, 376.63 s, including create/info/list/exec/stream/upload/download/delete/delete-again.
  • Additional run with E2B credential variable names explicitly mapped to the ABX_SANDBOX Express configuration: FAIL, 355.17 s. Lifecycle/list/exec/stream passed; upload exited 2, download exited 4, downloaded content was absent. Both deletion calls exited 0; the second confirmed the sandbox was absent.
  • Creation explicitly requests a 300 s sandbox timeout. Both total runtimes exceeded that duration, but the passing run was longer, and no step timings survive. Expiration is not confirmed.
  • Exit 2 and 4 cover multiple error categories; stderr and HTTP status are absent. No product root cause, Provider defect, or network-audit attribution can be established from these observations.
  • The separate new unified-template startup suite is 5/5 PASS, including two services started together. The failure above is not evidence of template startup failure.

Requested narrow follow-up

Add per-step monotonic elapsed time, sanitized stderr / available HTTP status classification, and explicit effective Provider configuration identity (never credential values) to this SDK-owned E2E fixture. Keep original pass/failure evidence separate. Diagnose a reproduced failure before opening a specific CLI/Provider product fix.

Acceptance

  • Failed file transfers preserve useful, credential-safe diagnostics.
  • Sandbox timeout and the elapsed time at each operation can be compared.
  • Owned-resource deletion remains guaranteed and records its result.
  • No behavior is weakened to turn an unexplained failure into a pass.

The fixture improvement belongs in a separate change; the unified template contract remains scoped in #107 / #108.

Focused follow-up evidence

A new owned sandbox with the same explicit Express environment mapping passed file upload/download with exact byte comparison. Create took 42.601 s, upload 29.551 s, download 30.885 s; download completed 103.038 s after the diagnostic began. Delete and repeated delete exited 0; the latter confirmed the sandbox absent. Total 180.946 s with the same 300 s create timeout. No retries, fixture changes or product changes were used.

This confirms the candidate file functionality worked in the focused experiment; it does not explain or erase the earlier full acceptance failure. The diagnostic improvement requested by this Issue remains open.

Evidence: https://github.com/Alibaba-Agent-Sandbox/python-sdk/blob/14fad5c/.agents/evidence/verify/2026-10-25-unified-template-cli-diagnostic.md

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions