nawabari 0.7.1 → 0.9.2

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.
Files changed (90) hide show
  1. package/README.md +264 -29
  2. package/dist/cli-command-registry.d.ts +50 -0
  3. package/dist/cli-command-registry.js +509 -0
  4. package/dist/cli-command-registry.js.map +1 -0
  5. package/dist/cli.d.ts +18 -0
  6. package/dist/cli.js +302 -583
  7. package/dist/cli.js.map +1 -1
  8. package/dist/contract.d.ts +6 -0
  9. package/dist/contract.js +296 -192
  10. package/dist/contract.js.map +1 -1
  11. package/dist/domain/cgroups-v2.d.ts +77 -0
  12. package/dist/domain/cgroups-v2.js +434 -0
  13. package/dist/domain/cgroups-v2.js.map +1 -0
  14. package/dist/domain/doctor.d.ts +4 -1
  15. package/dist/domain/doctor.js +64 -13
  16. package/dist/domain/doctor.js.map +1 -1
  17. package/dist/domain/errors.d.ts +1 -1
  18. package/dist/domain/errors.js.map +1 -1
  19. package/dist/domain/landlock.d.ts +55 -0
  20. package/dist/domain/landlock.js +279 -0
  21. package/dist/domain/landlock.js.map +1 -0
  22. package/dist/domain/runtime.d.ts +12 -0
  23. package/dist/domain/runtime.js +50 -0
  24. package/dist/domain/runtime.js.map +1 -0
  25. package/dist/domain/sandbox-launcher.d.ts +26 -0
  26. package/dist/domain/sandbox-launcher.js +312 -23
  27. package/dist/domain/sandbox-launcher.js.map +1 -1
  28. package/dist/domain/sandbox-seccomp.d.ts +46 -0
  29. package/dist/domain/sandbox-seccomp.js +302 -0
  30. package/dist/domain/sandbox-seccomp.js.map +1 -0
  31. package/dist/domain/sandbox.d.ts +45 -1
  32. package/dist/domain/sandbox.js +176 -25
  33. package/dist/domain/sandbox.js.map +1 -1
  34. package/dist/domain/session-backend.d.ts +4 -1
  35. package/dist/domain/session-backend.js +256 -3
  36. package/dist/domain/session-backend.js.map +1 -1
  37. package/dist/domain/session.d.ts +207 -3
  38. package/dist/domain/session.js.map +1 -1
  39. package/dist/errors.d.ts +1 -1
  40. package/dist/failure-code-vocabulary.d.ts +20 -0
  41. package/dist/failure-code-vocabulary.js +216 -0
  42. package/dist/failure-code-vocabulary.js.map +1 -0
  43. package/dist/git.js +92 -6
  44. package/dist/git.js.map +1 -1
  45. package/dist/operation-authorization.d.ts +1 -1
  46. package/dist/product-state-manifest.d.ts +152 -0
  47. package/dist/product-state-manifest.js +240 -0
  48. package/dist/product-state-manifest.js.map +1 -0
  49. package/dist/public-contract.d.ts +25 -0
  50. package/dist/public-contract.js +29 -0
  51. package/dist/public-contract.js.map +1 -0
  52. package/dist/public-state.d.ts +75 -0
  53. package/dist/public-state.js +60 -0
  54. package/dist/public-state.js.map +1 -0
  55. package/dist/registry/lock.d.ts +8 -0
  56. package/dist/registry/lock.js +38 -20
  57. package/dist/registry/lock.js.map +1 -1
  58. package/dist/repository-evidence.d.ts +16 -0
  59. package/dist/repository-evidence.js.map +1 -1
  60. package/dist/resource-claims.d.ts +2 -2
  61. package/dist/resource-claims.js +96 -27
  62. package/dist/resource-claims.js.map +1 -1
  63. package/dist/session-lifecycle-actions.d.ts +64 -0
  64. package/dist/session-lifecycle-actions.js +117 -0
  65. package/dist/session-lifecycle-actions.js.map +1 -0
  66. package/dist/session-lifecycle-classification.d.ts +120 -0
  67. package/dist/session-lifecycle-classification.js +88 -0
  68. package/dist/session-lifecycle-classification.js.map +1 -0
  69. package/dist/session-registry.d.ts +210 -2
  70. package/dist/session-registry.js +1330 -87
  71. package/dist/session-registry.js.map +1 -1
  72. package/dist/state/index.d.ts +5 -0
  73. package/dist/state/index.js +4 -0
  74. package/dist/state/index.js.map +1 -0
  75. package/dist/state/session/actors.d.ts +71 -0
  76. package/dist/state/session/actors.js +259 -0
  77. package/dist/state/session/actors.js.map +1 -0
  78. package/dist/state/session/guards.d.ts +25 -0
  79. package/dist/state/session/guards.js +108 -0
  80. package/dist/state/session/guards.js.map +1 -0
  81. package/dist/state/session/index.d.ts +6 -0
  82. package/dist/state/session/index.js +5 -0
  83. package/dist/state/session/index.js.map +1 -0
  84. package/dist/state/session/machine.d.ts +185 -0
  85. package/dist/state/session/machine.js +408 -0
  86. package/dist/state/session/machine.js.map +1 -0
  87. package/dist/state/session/types.d.ts +94 -0
  88. package/dist/state/session/types.js +14 -0
  89. package/dist/state/session/types.js.map +1 -0
  90. package/package.json +46 -26
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox-launcher.js","sourceRoot":"","sources":["../../src/domain/sandbox-launcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sandbox-launcher.js","sourceRoot":"","sources":["../../src/domain/sandbox-launcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { type DomainResult } from "./errors.js";
2
+ /**
3
+ * The seccomp policy is deliberately a small deny-list. Development tools
4
+ * need a broad syscall surface (in particular for process creation and file
5
+ * watching), so the profile blocks only operations that would extend the
6
+ * protected topology or expose host-wide kernel/control-plane authority.
7
+ */
8
+ export declare const SANDBOX_SECCOMP_PROFILE_ID: "nawabari.seccomp.v1";
9
+ export declare const SANDBOX_SECCOMP_PROFILE_VERSION: 1;
10
+ export declare const SANDBOX_SECCOMP_DEFAULT_ACTION: "allow";
11
+ export declare const SANDBOX_SECCOMP_DENIAL_ACTION: "errno:EPERM";
12
+ export declare const SANDBOX_SECCOMP_DENIED_SYSCALLS: readonly ["acct", "add_key", "bpf", "delete_module", "fanotify_init", "fsconfig", "fsmount", "fsopen", "fspick", "init_module", "kexec_file_load", "kexec_load", "keyctl", "mount", "mount_setattr", "move_mount", "open_by_handle_at", "perf_event_open", "pivot_root", "process_vm_readv", "process_vm_writev", "ptrace", "quotactl", "quotactl_fd", "reboot", "request_key", "setns", "swapon", "swapoff", "syslog", "umount2", "unshare", "userfaultfd"];
13
+ export declare const SANDBOX_SECCOMP_PROFILE: Readonly<{
14
+ id: "nawabari.seccomp.v1";
15
+ version: 1;
16
+ default_action: "allow";
17
+ denial_action: "errno:EPERM";
18
+ denied_syscalls: readonly ["acct", "add_key", "bpf", "delete_module", "fanotify_init", "fsconfig", "fsmount", "fsopen", "fspick", "init_module", "kexec_file_load", "kexec_load", "keyctl", "mount", "mount_setattr", "move_mount", "open_by_handle_at", "perf_event_open", "pivot_root", "process_vm_readv", "process_vm_writev", "ptrace", "quotactl", "quotactl_fd", "reboot", "request_key", "setns", "swapon", "swapoff", "syslog", "umount2", "unshare", "userfaultfd"];
19
+ }>;
20
+ export type SandboxSeccompProfileMetadata = {
21
+ readonly id: typeof SANDBOX_SECCOMP_PROFILE_ID;
22
+ readonly version: typeof SANDBOX_SECCOMP_PROFILE_VERSION;
23
+ readonly default_action: typeof SANDBOX_SECCOMP_DEFAULT_ACTION;
24
+ readonly denial_action: typeof SANDBOX_SECCOMP_DENIAL_ACTION;
25
+ readonly denied_syscalls: readonly string[];
26
+ readonly architecture: string;
27
+ };
28
+ export declare const SANDBOX_CAPABILITY_BASELINE_ID: "nawabari.capabilities.v1";
29
+ export declare const SANDBOX_CAPABILITY_BASELINE_VERSION: 1;
30
+ export declare const SANDBOX_AMBIENT_CAPABILITIES: readonly string[];
31
+ export type SandboxCapabilityBaseline = {
32
+ readonly id: typeof SANDBOX_CAPABILITY_BASELINE_ID;
33
+ readonly version: typeof SANDBOX_CAPABILITY_BASELINE_VERSION;
34
+ readonly ambient_capabilities: readonly string[];
35
+ readonly enforcement: "bubblewrap --cap-drop ALL";
36
+ };
37
+ /** Metadata is part of the sandbox capability contract and is JSON-safe. */
38
+ export declare function sandboxSeccompProfileMetadata(architecture?: NodeJS.Architecture): SandboxSeccompProfileMetadata;
39
+ export declare const sandboxCapabilityBaseline: SandboxCapabilityBaseline;
40
+ export declare function sandboxSeccompArchitectureSupported(architecture?: NodeJS.Architecture): boolean;
41
+ /**
42
+ * Build the raw sock_filter array expected by bubblewrap's `--seccomp FD`.
43
+ * It intentionally uses ERRNO/EPERM for policy denials: callers get a
44
+ * deterministic, bounded failure and normal subprocess trees keep running.
45
+ */
46
+ export declare function compileSandboxSeccompProfile(architecture?: string): DomainResult<Uint8Array>;
@@ -0,0 +1,302 @@
1
+ import process from "node:process";
2
+ import { DomainError, failure, success } from "./errors.js";
3
+ /**
4
+ * The seccomp policy is deliberately a small deny-list. Development tools
5
+ * need a broad syscall surface (in particular for process creation and file
6
+ * watching), so the profile blocks only operations that would extend the
7
+ * protected topology or expose host-wide kernel/control-plane authority.
8
+ */
9
+ export const SANDBOX_SECCOMP_PROFILE_ID = "nawabari.seccomp.v1";
10
+ export const SANDBOX_SECCOMP_PROFILE_VERSION = 1;
11
+ export const SANDBOX_SECCOMP_DEFAULT_ACTION = "allow";
12
+ export const SANDBOX_SECCOMP_DENIAL_ACTION = "errno:EPERM";
13
+ export const SANDBOX_SECCOMP_DENIED_SYSCALLS = Object.freeze([
14
+ "acct",
15
+ "add_key",
16
+ "bpf",
17
+ "delete_module",
18
+ "fanotify_init",
19
+ "fsconfig",
20
+ "fsmount",
21
+ "fsopen",
22
+ "fspick",
23
+ "init_module",
24
+ "kexec_file_load",
25
+ "kexec_load",
26
+ "keyctl",
27
+ "mount",
28
+ "mount_setattr",
29
+ "move_mount",
30
+ "open_by_handle_at",
31
+ "perf_event_open",
32
+ "pivot_root",
33
+ "process_vm_readv",
34
+ "process_vm_writev",
35
+ "ptrace",
36
+ "quotactl",
37
+ "quotactl_fd",
38
+ "reboot",
39
+ "request_key",
40
+ "setns",
41
+ "swapon",
42
+ "swapoff",
43
+ "syslog",
44
+ "umount2",
45
+ "unshare",
46
+ "userfaultfd",
47
+ ]);
48
+ export const SANDBOX_SECCOMP_PROFILE = Object.freeze({
49
+ id: SANDBOX_SECCOMP_PROFILE_ID,
50
+ version: SANDBOX_SECCOMP_PROFILE_VERSION,
51
+ default_action: SANDBOX_SECCOMP_DEFAULT_ACTION,
52
+ denial_action: SANDBOX_SECCOMP_DENIAL_ACTION,
53
+ denied_syscalls: SANDBOX_SECCOMP_DENIED_SYSCALLS,
54
+ });
55
+ export const SANDBOX_CAPABILITY_BASELINE_ID = "nawabari.capabilities.v1";
56
+ export const SANDBOX_CAPABILITY_BASELINE_VERSION = 1;
57
+ export const SANDBOX_AMBIENT_CAPABILITIES = Object.freeze([]);
58
+ /** Metadata is part of the sandbox capability contract and is JSON-safe. */
59
+ export function sandboxSeccompProfileMetadata(architecture = process.arch) {
60
+ return {
61
+ id: SANDBOX_SECCOMP_PROFILE_ID,
62
+ version: SANDBOX_SECCOMP_PROFILE_VERSION,
63
+ default_action: SANDBOX_SECCOMP_DEFAULT_ACTION,
64
+ denial_action: SANDBOX_SECCOMP_DENIAL_ACTION,
65
+ denied_syscalls: [...SANDBOX_SECCOMP_DENIED_SYSCALLS],
66
+ architecture,
67
+ };
68
+ }
69
+ export const sandboxCapabilityBaseline = Object.freeze({
70
+ id: SANDBOX_CAPABILITY_BASELINE_ID,
71
+ version: SANDBOX_CAPABILITY_BASELINE_VERSION,
72
+ ambient_capabilities: SANDBOX_AMBIENT_CAPABILITIES,
73
+ enforcement: "bubblewrap --cap-drop ALL",
74
+ });
75
+ const BPF_LD = 0x00;
76
+ const BPF_W = 0x00;
77
+ const BPF_ABS = 0x20;
78
+ const BPF_JMP = 0x05;
79
+ const BPF_JEQ = 0x10;
80
+ const BPF_K = 0x00;
81
+ const BPF_RET = 0x06;
82
+ const SECCOMP_RET_KILL_PROCESS = 0x80000000;
83
+ const SECCOMP_RET_ERRNO = 0x00050000;
84
+ const SECCOMP_RET_ALLOW = 0x7fff0000;
85
+ const EPERM = 1;
86
+ const SECCOMP_DATA_NR_OFFSET = 0;
87
+ const SECCOMP_DATA_ARCH_OFFSET = 4;
88
+ const AUDIT_ARCH = Object.freeze({
89
+ x64: 0xc000003e,
90
+ arm64: 0xc00000b7,
91
+ arm: 0x40000028,
92
+ ia32: 0x40000003,
93
+ riscv64: 0xc00000f3,
94
+ });
95
+ /** Syscall numbers needed by the compatibility profile on supported hosts. */
96
+ const SYSCALLS = Object.freeze({
97
+ // Linux arch/x86/entry/syscalls/syscall_64.tbl.
98
+ x64: Object.freeze({
99
+ acct: 163,
100
+ add_key: 248,
101
+ bpf: 321,
102
+ delete_module: 176,
103
+ fanotify_init: 300,
104
+ fsconfig: 431,
105
+ fsmount: 432,
106
+ fsopen: 430,
107
+ fspick: 433,
108
+ init_module: 175,
109
+ kexec_file_load: 320,
110
+ kexec_load: 246,
111
+ keyctl: 250,
112
+ mount: 165,
113
+ mount_setattr: 442,
114
+ move_mount: 429,
115
+ open_by_handle_at: 304,
116
+ perf_event_open: 298,
117
+ pivot_root: 155,
118
+ process_vm_readv: 310,
119
+ process_vm_writev: 311,
120
+ ptrace: 101,
121
+ quotactl: 179,
122
+ quotactl_fd: 443,
123
+ reboot: 169,
124
+ request_key: 249,
125
+ setns: 308,
126
+ swapon: 167,
127
+ swapoff: 168,
128
+ syslog: 103,
129
+ umount2: 166,
130
+ unshare: 272,
131
+ userfaultfd: 323,
132
+ }),
133
+ // Linux include/uapi/asm-generic/unistd.h.
134
+ arm64: Object.freeze({
135
+ acct: 89,
136
+ add_key: 217,
137
+ bpf: 280,
138
+ delete_module: 106,
139
+ fanotify_init: 262,
140
+ fsconfig: 431,
141
+ fsmount: 432,
142
+ fsopen: 430,
143
+ fspick: 433,
144
+ init_module: 105,
145
+ kexec_file_load: 294,
146
+ kexec_load: 104,
147
+ keyctl: 219,
148
+ mount: 40,
149
+ mount_setattr: 442,
150
+ move_mount: 429,
151
+ open_by_handle_at: 265,
152
+ perf_event_open: 241,
153
+ pivot_root: 41,
154
+ process_vm_readv: 270,
155
+ process_vm_writev: 271,
156
+ ptrace: 117,
157
+ quotactl: 60,
158
+ quotactl_fd: 443,
159
+ reboot: 142,
160
+ request_key: 218,
161
+ setns: 268,
162
+ swapon: 224,
163
+ swapoff: 225,
164
+ syslog: 116,
165
+ umount2: 39,
166
+ unshare: 97,
167
+ userfaultfd: 282,
168
+ }),
169
+ // Linux arch/arm/tools/syscall.tbl (EABI).
170
+ arm: Object.freeze({
171
+ acct: 51,
172
+ add_key: 309,
173
+ bpf: 386,
174
+ delete_module: 129,
175
+ fanotify_init: 367,
176
+ fsconfig: 431,
177
+ fsmount: 432,
178
+ fsopen: 430,
179
+ fspick: 433,
180
+ init_module: 128,
181
+ kexec_file_load: 401,
182
+ kexec_load: 347,
183
+ keyctl: 311,
184
+ mount: 21,
185
+ mount_setattr: 442,
186
+ move_mount: 429,
187
+ open_by_handle_at: 371,
188
+ perf_event_open: 364,
189
+ pivot_root: 218,
190
+ process_vm_readv: 376,
191
+ process_vm_writev: 377,
192
+ ptrace: 26,
193
+ quotactl: 131,
194
+ quotactl_fd: 443,
195
+ reboot: 88,
196
+ request_key: 310,
197
+ setns: 375,
198
+ swapon: 87,
199
+ swapoff: 115,
200
+ syslog: 103,
201
+ umount2: 52,
202
+ unshare: 337,
203
+ userfaultfd: 388,
204
+ }),
205
+ // Linux include/uapi/asm-generic/unistd.h.
206
+ riscv64: Object.freeze({
207
+ acct: 89,
208
+ add_key: 217,
209
+ bpf: 280,
210
+ delete_module: 106,
211
+ fanotify_init: 262,
212
+ fsconfig: 431,
213
+ fsmount: 432,
214
+ fsopen: 430,
215
+ fspick: 433,
216
+ init_module: 105,
217
+ kexec_file_load: 294,
218
+ kexec_load: 104,
219
+ keyctl: 219,
220
+ mount: 40,
221
+ mount_setattr: 442,
222
+ move_mount: 429,
223
+ open_by_handle_at: 265,
224
+ perf_event_open: 241,
225
+ pivot_root: 41,
226
+ process_vm_readv: 270,
227
+ process_vm_writev: 271,
228
+ ptrace: 117,
229
+ quotactl: 60,
230
+ quotactl_fd: 443,
231
+ reboot: 142,
232
+ request_key: 218,
233
+ setns: 268,
234
+ swapon: 224,
235
+ swapoff: 225,
236
+ syslog: 116,
237
+ umount2: 39,
238
+ unshare: 97,
239
+ userfaultfd: 282,
240
+ }),
241
+ });
242
+ function statement(code, k) {
243
+ return { code, jt: 0, jf: 0, k };
244
+ }
245
+ function jumpIfEqual(k, jt, jf) {
246
+ return { code: BPF_JMP | BPF_JEQ | BPF_K, jt, jf, k };
247
+ }
248
+ function profileArchitecture(architecture) {
249
+ const audit = AUDIT_ARCH[architecture];
250
+ const syscalls = SYSCALLS[architecture];
251
+ return audit === undefined || syscalls === undefined ? null : { audit, syscalls };
252
+ }
253
+ export function sandboxSeccompArchitectureSupported(architecture = process.arch) {
254
+ return profileArchitecture(architecture) !== null;
255
+ }
256
+ /**
257
+ * Build the raw sock_filter array expected by bubblewrap's `--seccomp FD`.
258
+ * It intentionally uses ERRNO/EPERM for policy denials: callers get a
259
+ * deterministic, bounded failure and normal subprocess trees keep running.
260
+ */
261
+ export function compileSandboxSeccompProfile(architecture = process.arch) {
262
+ const selected = profileArchitecture(architecture);
263
+ if (selected === null) {
264
+ return failure(new DomainError("SANDBOX_CAPABILITY_UNAVAILABLE", "The seccomp baseline has no compatible architecture profile.", {
265
+ profile_id: SANDBOX_SECCOMP_PROFILE_ID,
266
+ profile_version: SANDBOX_SECCOMP_PROFILE_VERSION,
267
+ architecture,
268
+ }));
269
+ }
270
+ const instructions = [
271
+ statement(BPF_LD | BPF_W | BPF_ABS, SECCOMP_DATA_ARCH_OFFSET),
272
+ jumpIfEqual(selected.audit, 1, 0),
273
+ statement(BPF_RET | BPF_K, SECCOMP_RET_KILL_PROCESS),
274
+ statement(BPF_LD | BPF_W | BPF_ABS, SECCOMP_DATA_NR_OFFSET),
275
+ ];
276
+ for (const name of SANDBOX_SECCOMP_DENIED_SYSCALLS) {
277
+ const syscall = selected.syscalls[name];
278
+ if (syscall === null)
279
+ continue;
280
+ if (syscall === undefined || !Number.isSafeInteger(syscall) || syscall < 0 || syscall > 0xffffffff) {
281
+ return failure(new DomainError("SANDBOX_CAPABILITY_UNAVAILABLE", "The seccomp baseline contains an invalid architecture syscall mapping.", {
282
+ profile_id: SANDBOX_SECCOMP_PROFILE_ID,
283
+ profile_version: SANDBOX_SECCOMP_PROFILE_VERSION,
284
+ architecture,
285
+ syscall: name,
286
+ }));
287
+ }
288
+ instructions.push(jumpIfEqual(syscall, 0, 1), statement(BPF_RET | BPF_K, SECCOMP_RET_ERRNO | EPERM));
289
+ }
290
+ instructions.push(statement(BPF_RET | BPF_K, SECCOMP_RET_ALLOW));
291
+ const bytes = new Uint8Array(instructions.length * 8);
292
+ const view = new DataView(bytes.buffer);
293
+ instructions.forEach((instruction, index) => {
294
+ const offset = index * 8;
295
+ view.setUint16(offset, instruction.code, true);
296
+ view.setUint8(offset + 2, instruction.jt);
297
+ view.setUint8(offset + 3, instruction.jf);
298
+ view.setUint32(offset + 4, instruction.k >>> 0, true);
299
+ });
300
+ return success(bytes);
301
+ }
302
+ //# sourceMappingURL=sandbox-seccomp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox-seccomp.js","sourceRoot":"","sources":["../../src/domain/sandbox-seccomp.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  import { type DomainResult, type ErrorCode, type JsonObject } from "./errors.js";
2
+ import { type LandlockCapability, type LandlockEffectiveState } from "./landlock.js";
2
3
  import type { SessionBackend, SessionContext } from "./session.js";
4
+ import { sandboxCapabilityBaseline, sandboxSeccompProfileMetadata } from "./sandbox-seccomp.js";
5
+ import type { CgroupLimitProfile } from "./cgroups-v2.js";
3
6
  /**
4
7
  * Versioned identity for the Linux sandbox execution contract (Issue #81).
5
8
  * This contract binds exactly one existing Nawabari session to an execution
@@ -44,7 +47,11 @@ export type SandboxDoctorReport = {
44
47
  capabilities: SandboxCapabilityCheck[];
45
48
  ready: boolean;
46
49
  missing_required: SandboxCapabilityId[];
50
+ seccomp_profile: ReturnType<typeof sandboxSeccompProfileMetadata>;
51
+ capability_baseline: typeof sandboxCapabilityBaseline;
52
+ landlock: LandlockCapability;
47
53
  };
54
+ export type { LandlockCapability, LandlockEffectiveState, LandlockRule } from "./landlock.js";
48
55
  /**
49
56
  * The real repository UID/GID is never equated with the namespace-local
50
57
  * identity a sandboxed process observes; the two are represented separately.
@@ -98,11 +105,41 @@ export type SandboxExecutionRequest = {
98
105
  identity: SandboxIdentity;
99
106
  filesystem: SandboxFilesystemTopology;
100
107
  required_capabilities: SandboxCapabilityId[];
108
+ seccomp_profile: ReturnType<typeof sandboxSeccompProfileMetadata>;
109
+ capability_baseline: typeof sandboxCapabilityBaseline;
110
+ /** Optional cgroups v2 control/evidence below the session authority. */
111
+ cgroups?: SandboxCgroupConfig;
112
+ /** Optional runtime adapter selected by the canonical profile. */
113
+ landlock_executable?: string | null;
114
+ /** ABI observed by the capability probe, retained for machine diagnostics. */
115
+ landlock_abi?: number | null;
116
+ /** Probe state retained when ABI observation itself failed. */
117
+ landlock_state?: LandlockEffectiveState;
118
+ /** Required only when the selected protected profile mandates Landlock. */
119
+ landlock_required?: boolean;
101
120
  };
121
+ export type SandboxCgroupConfig = {
122
+ /** A required profile fails closed when cgroups v2 is unavailable. */
123
+ readonly required: boolean;
124
+ /** Stable execution identity; never a human/display label. */
125
+ readonly execution_id: string;
126
+ readonly limits?: CgroupLimitProfile;
127
+ /** Test/runtime injection; production uses the unified hierarchy. */
128
+ readonly root?: string;
129
+ };
130
+ export type SandboxLandlockRequirement = "optional" | "required";
102
131
  export type SandboxExecutionOptions = {
103
132
  session_id: string | null;
104
133
  /** When true, resolution fails closed instead of returning an unsandboxed request. */
105
134
  enforce: boolean;
135
+ /** Canonical protected profile's cgroups policy, when selected. */
136
+ cgroups?: Omit<SandboxCgroupConfig, "execution_id"> & {
137
+ readonly execution_id?: string;
138
+ };
139
+ /** Landlock remains optional by default; required profiles fail closed on setup/support failure. */
140
+ landlock?: SandboxLandlockRequirement;
141
+ /** Explicit compatibility spelling for callers that persist profile flags. */
142
+ landlock_required?: boolean;
106
143
  };
107
144
  /** Injectable capability probe so doctor/resolution logic stays host-independent and testable. */
108
145
  export type SandboxProbe = {
@@ -123,6 +160,8 @@ export type SandboxProbe = {
123
160
  hasNamespaceSupport(): boolean;
124
161
  hasCgroupsV2(): boolean;
125
162
  hasLandlock(): boolean;
163
+ /** Return the supported ABI number when it can be observed, otherwise null. */
164
+ landlockAbi?: () => number | null;
126
165
  hasSeccomp(): boolean;
127
166
  hasCapabilities(): boolean;
128
167
  };
@@ -133,6 +172,8 @@ export type SandboxProbe = {
133
172
  */
134
173
  export type SandboxRuntimeLayout = {
135
174
  bubblewrap: string | null;
175
+ /** Optional interpreter used only to install Landlock inside bubblewrap. */
176
+ landlock_helper?: string | null;
136
177
  /** Host HOME used only to resolve the selected read-only tool directories. */
137
178
  user_home?: string | null;
138
179
  user_local_bin: string | null;
@@ -187,4 +228,7 @@ export declare function discoverSandboxRuntimeLayout(environment?: NodeJS.Proces
187
228
  * unsandboxed path.
188
229
  */
189
230
  export declare function resolveSandboxExecutionRequest(backend: SessionBackend, context: SessionContext, options: SandboxExecutionOptions, probe?: SandboxProbe, runtimeLayout?: SandboxRuntimeLayout): Promise<DomainResult<SandboxExecutionRequest>>;
190
- export { compileSandboxInvocation, runSandboxedCommand, type SandboxCommand, type SandboxExecutionResult, type SandboxInvocation, type SandboxLauncherOptions, } from "./sandbox-launcher.js";
231
+ export { compileSandboxSeccompProfile, sandboxCapabilityBaseline, sandboxSeccompProfileMetadata, sandboxSeccompArchitectureSupported, SANDBOX_AMBIENT_CAPABILITIES, SANDBOX_CAPABILITY_BASELINE_ID, SANDBOX_CAPABILITY_BASELINE_VERSION, SANDBOX_SECCOMP_DEFAULT_ACTION, SANDBOX_SECCOMP_DENIAL_ACTION, SANDBOX_SECCOMP_DENIED_SYSCALLS, SANDBOX_SECCOMP_PROFILE_ID, SANDBOX_SECCOMP_PROFILE_VERSION, SANDBOX_SECCOMP_PROFILE, type SandboxCapabilityBaseline, type SandboxSeccompProfileMetadata, } from "./sandbox-seccomp.js";
232
+ export { compileSandboxInvocation, deriveLandlockRules, runSandboxedCommand, type SandboxCommand, type SandboxExecutionResult, type SandboxInvocation, type SandboxLauncherOptions, } from "./sandbox-launcher.js";
233
+ export { CGROUPS_V2_CONTRACT_ID, CGROUPS_V2_ROOT, attachProcessToCgroup, cleanupCgroupScope, cgroupLimitEvents, createCgroupScope, deriveCgroupScopeName, readCgroupAccounting, type CgroupAccounting, type CgroupExecutionIdentity, type CgroupFileSystem, type CgroupLimitEvent, type CgroupLimitProfile, type CgroupScope, type CgroupScopeOptions, } from "./cgroups-v2.js";
234
+ export { LANDLOCK_ACCESS_FS, LANDLOCK_ABI_MINIMUM, LANDLOCK_TRAMPOLINE } from "./landlock.js";