Skip to content

fix: make sandboxed research execution reliable - #288

Merged
Ishaan Gangwani (ishaan1124) merged 8 commits into
mainfrom
codex/harness-sandbox-download-fixes
Aug 14, 2026
Merged

fix: make sandboxed research execution reliable#288
Ishaan Gangwani (ishaan1124) merged 8 commits into
mainfrom
codex/harness-sandbox-download-fixes

Conversation

@ishaan1124

Copy link
Copy Markdown
Member

What does this PR do?

  • Makes the research harness accept and canonicalize harmless legacy tool-call shapes without weakening strict schemas, including direct and batched compute_job calls.
  • Enables low-friction routine terminal, kernel, shell, and local-compute work inside verified native sandboxing while keeping remote jobs, environment mutations, project code, and host execution behind project trust.
  • Removes agent-guessed WebFetch download caps and the fixed Modal browser-download ceiling; downloads use live free disk minus a 512 MiB host reserve, stream with cancellation-safe cleanup, and fail with actionable errors.
  • Hardens cross-process settings, data-root relocation, credential ownership, and kernel/process teardown across Linux, macOS, and Windows.
  • Updates workspace copy, documentation, OpenAPI, generated SDK types, and bundled docs to match the shipped behavior.

How did you verify your code works?

  • bun test --silent --timeout 15000 in backend/cli: 2217 passed, 20 platform skips, 0 failed across 273 files.
  • Root bun run typecheck: 7/7 packages passed.
  • Modal/jobs/settings focused gate: 98 passed, 0 failed; final adapter/browser regression rerun: 43 passed, 0 failed.
  • Settings/documentation focused UI gate: 39 passed, 0 failed.
  • bun run --cwd backend/cli build --single with required Bun 1.3.14: passed and built darwin-arm64.
  • Privileged Linux lifecycle gate: 32 passed, 2 platform skips, 0 failed; repeated fork-storm containment: 3/3 passed with zero survivors.
  • macOS lifecycle gate: 31 passed, 5 platform skips, 0 failed; musl supervisor gate: 5/5 passed.
  • Targeted Prettier and git diff --check: clean. Gitleaks pre-commit hooks: clean.
  • Independent pre-landing and design re-reviews: CLEAR, no P0/P1/P2.

Documentation

  • README.md and SECURITY.md: describe the low-friction sandbox default and full project-trust boundary.
  • frontend/docs: document sandbox behavior, download flow, commands, and security semantics.
  • frontend/landing/public/docs: regenerated from the current docs source.
  • CHANGELOG.md: records the harness reliability, download, compute, and sandbox changes under Unreleased.
  • Generated OpenAPI and JavaScript SDK artifacts are synchronized with the server contract.

Checklist

  • bun run typecheck passes
  • bun test (in backend/cli) passes
  • Scoped Prettier checks are clean
  • Generated SDK/OpenAPI and bundled docs are current
  • Security/reliability and design reviews are clear
  • Linked issue — direct release-hardening work; no issue was supplied
  • Screenshots/video — no new visual layout; settings copy and existing controls only

Normalize compute tool inputs, default routine work to enforced sandboxing, remove arbitrary download caps, and harden durable process, storage, and kernel lifecycles across platforms.
Document the smooth-by-default sandbox contract, strict trust controls, and cap-free brokered download workflow, then refresh the bundled docs site.
Summarize the sandbox, tool-schema, retry, lifecycle, and streamed-download improvements under Unreleased.
@vercel

vercel Bot commented Aug 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openscience Ready Ready Preview Aug 14, 2026 5:54pm

Request Review

@ishaan1124
Ishaan Gangwani (ishaan1124) merged commit 94e5966 into main Aug 14, 2026
17 checks passed
@ishaan1124
Ishaan Gangwani (ishaan1124) deleted the codex/harness-sandbox-download-fixes branch August 14, 2026 18:07
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.

1 participant