Skip to content

Profiles & Limits

Rustbox offers two execution profiles, each tuned for different workloads. Judge profile is available in the open beta. Executor profile is available on request.

Use case: Competitive programming, coding assessments, interview platforms.

Code runs in a bare sandbox with just the language runtime. No network access, tight memory limits, fast time limits. Designed for evaluating short, deterministic programs against known test cases.

LanguageMemoryCPU TimeWall TimeMax PIDs
Python256 MB4s7s10
C256 MB8s10s8
C++256 MB8s10s8
Java512 MB8s10s1024
JavaScript512 MB8s12s16
TypeScript512 MB8s12s16
Go256 MB8s10s1024
Rust256 MB8s15s64

All languages: network disabled, max code size 64 KB, max stdin size 256 KB.

Typical use: submit a candidate’s solution with test case input, compare stdout against expected output. Verdicts (AC, RE, TLE, MLE, PLE, FSE) are determined by kernel evidence, not exit code guessing.

Use case: AI agents, LLM tool execution, code playgrounds, interactive notebooks.

Relaxed limits accommodate real-world workloads. Filtered network allows standard library downloads and API calls while blocking private IP ranges and cloud metadata endpoints.

ResourceLimit
Memory2 GB
Wall time60 seconds
CPU time60 seconds
Max PIDs256
NetworkFiltered
Code size64 KB
Stdin size256 KB

Typical use: an AI agent generates Python code that imports pandas, processes a CSV from stdin, and returns analysis results via stdout.

JudgeExecutor
Memory256-512 MB (per language)2 GB
Wall time7-15s (per language)60s
CPU time4-8s (per language)60s
PIDs8-1024 (per language)256
NetworkDisabledFiltered
Best forAssessments, contestsAgents, playgrounds

Both profiles run with identical isolation: 8 kernel layers, seccomp filtering, capability drop, credential isolation, NO_NEW_PRIVS. The only differences are resource limits and network policy.

There is no way to escalate from one profile to the other via the API. Your profile is determined by your API key, not by the request.

Both profiles return the same verdict set:

VerdictMeaning
ACAccepted - clean exit, code 0
RERuntime Error - non-zero exit or crash
TLETime Limit Exceeded - wall time exceeded
MLEMemory Limit Exceeded - OOM killed by cgroup
PLEProcess Limit Exceeded - fork/thread bomb hit cgroup PID limit
FSEFile Size Exceeded - SIGXFSZ from RLIMIT_FSIZE
SIGSignaled - killed by signal
IEInternal Error - platform infrastructure failure

Every verdict is backed by kernel evidence (cgroup OOM events, signal delivery records, CPU accounting). The platform does not guess verdicts from exit codes.