Repository navigation
Sync latest upstream and E2B optimization with tracing into beta - #24
Conversation
Fix E2B template chunk upload
Fix E2B builder sibling imports
* Preserve native sessions across compute replacement * Use allocation storage contract during checkpoint restore * Normalize cancellation while waiting for compute * Attach administrator audit source to deployment updates
* Queue sessions for available compute * Align hosted creation test with deferred placement
* Preserve Runtime PATH in login shells * Keep PATH literals aligned in translated image guide
* Classify workspace storage exhaustion as unavailable * Run storage exhaustion assertions in native platform CI
* Restore retained checkpoints across compatible nodes * Align checkpoint fixtures with explicit restore admission * Wake checkpoint destinations and settle canceled restore preparation * Close expired restore requests before native dispatch * Accept checkpoint qualification in node health JSON * Document checkpoint compatibility during node maintenance
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7edd85ae90
ℹ️ 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".
| next, err := w.ProvisionEnvironment(ctx, environment.TenantID, environment.ID, owner.ProviderKey) | ||
| if err != nil && next.ID == "" && !errors.Is(err, placement.ErrNodeUnavailable) && !errors.Is(err, placement.ErrNodesPreparing) && !errors.Is(err, deployment.ErrAllocationConflict) { | ||
| return err |
There was a problem hiding this comment.
Treat an unassigned queued placement as transient
In node-backed mode, ProvisionEnvironment calls syncNodes, which processes only the scheduler's current bounded demand page, and then returns ErrExecutionUnavailable when this Environment still has no placement. When the replacement demand is on a later page—or outside the current fixed sweep horizon—next.ID is empty and this condition returns the error immediately, causing a live file request to fail with 503 instead of continuing the existing wait loop until the common scheduler reaches it. Handle this no-placement outcome like ErrNodeUnavailable/ErrNodesPreparing so retained Environments do not bypass or fail merely because of their queue position.
AGENTS.md reference: AGENTS.md:L44-L44
Useful? React with 👍 / 👎.
Summary
Synchronize beta with the latest MiniMax main and the updated E2B optimization and startup tracing branches. The integration preserves the fork's production deployment workflows, lease diagnostics, journal failure handling, and Environment file rejection logs.
Upstream contributions remain in MiniMax-AI#642 and MiniMax-AI#643. Fork-only production changes are not sent upstream.
Validation
workflow_dispatchCI 38105685214 passed on exact commit7edd85ae90636c42d5bf2cfeba71cfade4e675d2, including Linux helper, all backend/integration shards, four Web E2E shards, Harness, examples, lint, compose, and Linux/macOS/Windows native checks. Local macOS limitations and baseline flakes remain recorded separately.Production rollout
Merging beta does not deploy production. The schema 91-to-99 production upgrade requires a verified database/state recovery point and a safe plan for the existing old-wire suspended guests. This PR does not authorize deleting or waking those guests and does not include a production deployment.