@namzu/sandbox 27.0.0 → 28.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -7
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @namzu/sandbox
|
|
2
2
|
|
|
3
|
+
## 28.0.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [7608640]
|
|
8
|
+
- Updated dependencies [7608640]
|
|
9
|
+
- Updated dependencies [7608640]
|
|
10
|
+
- @namzu/sdk@53.0.0
|
|
11
|
+
|
|
3
12
|
## 27.0.0
|
|
4
13
|
|
|
5
14
|
### Minor Changes
|
|
@@ -1024,7 +1033,7 @@ terminator`, reporting no `peerCloseMs` at all — the close in that case is the
|
|
|
1024
1033
|
host set one, fails with `ENOSPC` or is OOM-killed, where writing it to disk used
|
|
1025
1034
|
to succeed. Any workload that spills more than its memory budget into `/tmp`,
|
|
1026
1035
|
`/var/tmp` or `/workspace` is in that group.
|
|
1027
|
-
Everything the
|
|
1036
|
+
Everything the base image does keeps working: `/tmp` stays executable
|
|
1028
1037
|
(docker's own `--tmpfs` default is `noexec`, which would have turned
|
|
1029
1038
|
`gcc -o /tmp/a.out … && /tmp/a.out` into `Permission denied`), and `HOME` stays
|
|
1030
1039
|
writable, which is what LibreOffice, matplotlib and npm need.
|
|
@@ -2722,7 +2731,7 @@ progress in <a local notes directory>/...` — a runtime error
|
|
|
2722
2731
|
returns 404, to explain the doctor's protocol/runtime split. The split is now
|
|
2723
2732
|
explained in the sentence itself.
|
|
2724
2733
|
- `@namzu/sdk` source comments cited design documents by path. They cite the
|
|
2725
|
-
session by name instead, which is
|
|
2734
|
+
session by name instead, which is all such a citation was ever worth.
|
|
2726
2735
|
|
|
2727
2736
|
No API, type, or behaviour change. The `@namzu/sandbox` message text is the
|
|
2728
2737
|
only runtime string affected, and nothing asserts on it.
|
|
@@ -3222,7 +3231,7 @@ mkdir '/Users'` crash that hit sibling-container deployments.
|
|
|
3222
3231
|
branched on the env, only logged it; size grew with the skill
|
|
3223
3232
|
list). Only `NAMZU_SANDBOX_WORKSPACE` is forwarded today.
|
|
3224
3233
|
|
|
3225
|
-
The
|
|
3234
|
+
The image pre-creates **only the parent directories**
|
|
3226
3235
|
`/mnt`, `/mnt/user-data`, `/mnt/skills` — root-owned, mode 0555.
|
|
3227
3236
|
Leaf paths (`outputs/`, `uploads/`, `tool_results/`, `transcripts/`,
|
|
3228
3237
|
`<skill-id>/`) are intentionally NOT pre-created. When a bind is
|
|
@@ -3327,7 +3336,7 @@ test:smoke`) runs an opt-in docker integration test exercising the
|
|
|
3327
3336
|
four-tier taxonomy that mirrors how production agent platforms
|
|
3328
3337
|
actually deploy code-execution sandboxes:
|
|
3329
3338
|
|
|
3330
|
-
- `process` —
|
|
3339
|
+
- `process` — host-process isolation
|
|
3331
3340
|
(bubblewrap on Linux, Seatbelt on macOS, via Anthropic's
|
|
3332
3341
|
`@anthropic-ai/sandbox-runtime`). For agents that run on the
|
|
3333
3342
|
developer's own machine.
|
|
@@ -3354,10 +3363,9 @@ test:smoke`) runs an opt-in docker integration test exercising the
|
|
|
3354
3363
|
"Sandboxing and Workload Isolation" post and the original
|
|
3355
3364
|
Firecracker NSDI '20 paper are the canonical refs).
|
|
3356
3365
|
- Trusted-tenant → gVisor (GKE Sandbox, Modal, OpenAI Code
|
|
3357
|
-
Interpreter
|
|
3358
|
-
the reference).
|
|
3366
|
+
Interpreter).
|
|
3359
3367
|
- Single-user developer machine → bubblewrap / Seatbelt
|
|
3360
|
-
(
|
|
3368
|
+
(`anthropic-experimental/sandbox-runtime`).
|
|
3361
3369
|
- Single-tenant or co-trusted → plain Docker + seccomp default
|
|
3362
3370
|
profile.
|
|
3363
3371
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@namzu/sandbox",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "28.0.0",
|
|
4
4
|
"description": "Pluggable sandbox provider for @namzu/sdk. Process-level isolation (bubblewrap on Linux, Seatbelt on macOS, via @anthropic-ai/sandbox-runtime) for developer dev loops; container-level isolation (HTTP worker + a loopback-bound egress proxy that allows by resolved address and brokers outbound credentials so they never enter the sandbox) for multi-tenant production. Backend selected at construction time; the SDK consumes both through the same SandboxProvider interface.",
|
|
5
5
|
"license": "FSL-1.1-MIT",
|
|
6
6
|
"engines": {
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"provenance": true
|
|
53
53
|
},
|
|
54
54
|
"peerDependencies": {
|
|
55
|
-
"@namzu/sdk": "^
|
|
55
|
+
"@namzu/sdk": "^53.0.0"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
58
|
"ws": "8.21.3"
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"typescript": "^5.5.0",
|
|
64
64
|
"vitest": "^4.1.11",
|
|
65
65
|
"yaml": "^2.9.0",
|
|
66
|
-
"@namzu/sdk": "^
|
|
66
|
+
"@namzu/sdk": "^53.0.0"
|
|
67
67
|
},
|
|
68
68
|
"scripts": {
|
|
69
69
|
"build": "tsc --build",
|