Skip to content

Goboxd: Stage-1 submission. Team/spaced - #22

Open
ethicks-x wants to merge 46 commits into
thesouldev:masterfrom
ethicks-x:team/spaced
Open

Goboxd: Stage-1 submission. Team/spaced#22
ethicks-x wants to merge 46 commits into
thesouldev:masterfrom
ethicks-x:team/spaced

Conversation

@ethicks-x

@ethicks-x ethicks-x commented Jun 1, 2026

Copy link
Copy Markdown

Submission Details

Submitted by TEAM SPACED. Made by Arif Sardar (24f2009339) and Sinchan Gayen (24f2008341).


Quickstart

Make sure that docker/podman is installed in your system.

git clone https://github.com/ethicks-x/goboxd -b team/spaced goboxd-spaced
cd goboxd-spaced
make build        # multi build stage, may take longer than usual
make run          # starts service port 8080
make test         # unit tests
make integration  # integration tests against live container
make load         # check load handling
make lint         # golangci-lint

After make run you can use the playground web ui at http://localhost:8080/playground


What We tried building

An HTTP daemon in Go that accepts source code via POST /run, executes it inside an nsjail sandbox,
and returns structured per-test-case results with status codes.

The language registry is a YAML file. Adding a language requires one
YAML block and one language install script file - zero Go code changes. Verified
by adding rust, go during development without
touching any Go source.

Languages (9): python3, c++, c, java, js, bash, verilog, rust, go

  • all verified working end-to-end with real compilation
    and execution inside nsjail.

Bonus languages (2 beyond required 7): rust, go.

Endpoints: POST /run, GET /healthz, GET /readyz, GET /info

Concurrency: buffered channel semaphore, default runtime.NumCPU()
slots. Requests beyond capacity timeout (default 30s) rather than queuing indefinitely.

nsjail: built from source at tag 3.4 in a separate Docker build
stage on debian:bookworm-slim. PID, mount, UTS, IPC, net
namespaces + seccomp Kafel policy (all included in nsjail). Per-request wall time, memory, and
process limits from languages.yaml. Cgroup memory tracking reports
actual peak RSS per test case.


Security Details

See: docs/security.md


Tests

unit tests and integration tests against the service includes config loading,
filename validation, flag validation, status mapping, output comparisson, memory cap behaviour,
output truncation, also with the security boundaries (mentioned much deeper in docs/security.md).

The docs/tests.md file is still under development. May expect in later versions.

Run with make integration - Makefile handles container lifecycle automatically.


Benchmarks (Python 3, Arch, 8 cores, nsjail enabled)

See: docs/benchmark.md

Zero errors at all concurrency levels for interpreted languages.
Where Go build time increase is a pretty discussable topic in later stages.


Docs

docs/ — api.md, architecture.md, security.md, benchmarks.md,
languages.md.

@OmiChrome

Copy link
Copy Markdown

that shit too much i gues

@thesouldev

Copy link
Copy Markdown
Owner

Evaluation Summary

Team: pr22-spaced · Rank: 33 / 45 · Weighted score: 26.0 / 100

Area (weight) Score What it covers
Technical (~60%) 15.0% API contract, security holes, concurrency + benchmarks, plug-and-play languages
Code quality / SDLC (~30%) 46.4% tests, clean git history, lint, docs
Communication (~10%) 33.3% README clarity, framework justification

Checks:

  • Build: No
  • Health: -
  • CI: no-actions
  • Sandbox: nsjail
  • Happy-path: -

Thanks for participating! Scores reflect evaluation against the spec. Reply here if you have questions.

@24f2009339

Copy link
Copy Markdown

Evaluation Summary

Team: pr22-spaced · Rank: 33 / 45 · Weighted score: 26.0 / 100
Area (weight) Score What it covers
Technical (~60%) 15.0% API contract, security holes, concurrency + benchmarks, plug-and-play languages
Code quality / SDLC (~30%) 46.4% tests, clean git history, lint, docs
Communication (~10%) 33.3% README clarity, framework justification

Checks:

* Build: No

* Health: -

* CI: no-actions

* Sandbox: nsjail

* Happy-path: -

Thanks for participating! Scores reflect evaluation against the spec. Reply here if you have questions.

Don't know why they quoted it as build - NO. It works fine in my machine and many more...

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.

5 participants