Repository navigation
fix(ci): route sandbox shell and storage imports through scoped spawns - #7744
Conversation
The saas-ambient static lane flags five bare tokio spawns added on main (sandbox/shell_exec.rs and four storage_import_* legacy readers) and a stale baseline entry for sandbox/native_jail.rs, whose spawn moved to shell_exec.rs in f08eac8. Route them through core::runtime::spawn_scoped / spawn_blocking_scoped so the task keeps the caller's context, and drop the stale baseline entry.
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. |
Tiny Sweeper reviewTiny Sweeper reviewed this change across 5 lane(s) and found 0 active actionable finding(s). Detailed lane evidence and any incomplete work are listed below. State: Ready for maintainer review Review snapshot
Completeness: Complete FeaturesNone identified with supported citations. TestsNo supported feature-to-test mapping was produced. Test execution is not inferred. FindingsNo active actionable findings. Before mergeNone. Agent review detailscritique
security
tests
commits
description
Evidence and run details
|
There was a problem hiding this comment.
tinysweeper found nothing blocking. Approving.
$0.0005 · 334,114 in / 5,993 out · 48,896 cached (15%) · ladder/vectors-oai3, deepseek-v4.1-flash · 223 embedded
critique: $0.0001 · 130,556 in / 1,678 out · 18,432 cached (14%) · deepseek-v4.1-flash
security: $0.0001 · 127,973 in / 1,285 out · 15,104 cached (12%) · deepseek-v4.1-flash
tests: $0.0001 · 49,365 in / 806 out · 7,936 cached (16%) · deepseek-v4.1-flash
description: $0.0001 · 23,226 in / 824 out · 7,424 cached (32%) · deepseek-v4.1-flash
Summary
static:saas-ambientlane on main (CI Fast run 38441930612, and every PR run since).storage_import_*legacy readers now spawn throughcore::runtime::spawn_scoped/spawn_blocking_scoped, as the lane requires.sandbox/native_jail.rsbaseline entry: that spawn moved toshell_exec.rsin f08eac8.Problem
The lane fails with:
A bare spawn drops the caller's
CoreContextand memory scope. Under SaaS the task would then run without the request's context.Solution
JoinHandle, so the call sites are otherwise unchanged.native_jail.rsentry fromscripts/ci/saas-ambient-baseline.json. I didn't rewrite the rest of the baseline:--write-baselinewould also churn unrelated line numbers.Submission Checklist
saas-ambientstatic lane is the check, and it now passes locally (node scripts/ci/check-saas-ambient.mjs: "ratchet holds (193 baselined sites)").Impact
Related
AI Authored PR Metadata (required for Codex/Linear PRs)
N/A
Validation Run
node scripts/ci/check-saas-ambient.mjspasses;rustfmt --edition 2021on the changed files.Summary by CodeRabbit