Confine restricted engines before launch and preserve the reader recovery baseline
This commit is contained in:
+12
-7
@@ -113,8 +113,9 @@ service = {
|
||||
};
|
||||
```
|
||||
|
||||
Each invocation gets a fresh engine process. The adapter admits one active frame
|
||||
and a bounded FIFO; queue wait consumes the deadline. Overflow is an explicit
|
||||
Each invocation gets a fresh Worker in a reusable engine process. An engine runs
|
||||
one active frame; the adapter has bounded concurrency and queueing. Queue wait
|
||||
consumes the deadline. Overflow is an explicit
|
||||
`RESTRICTED_QUEUE_FULL` result. Cancellation kills the engine process group and
|
||||
removes its sockets before acknowledgement. All graph calls inherit the trusted
|
||||
invocation identity; authored code cannot choose another frame or workspace.
|
||||
@@ -127,11 +128,15 @@ parent environment credentials, and unlisted modules are denied. Explicit dates,
|
||||
available. Host-managed HTTP bridges expose only the current frame's declared
|
||||
graph ports. Authored serialization is untrusted protocol input.
|
||||
|
||||
This is an inner execution restriction, **not a hardened shared-process sandbox**.
|
||||
One workspace owns the surrounding VM. Systemd limits the entire package cgroup,
|
||||
including adapter and child engines; memory exhaustion terminates that group.
|
||||
No per-isolate memory protection is claimed. A guest user can control its VM,
|
||||
so authoritative graph grants and credentials must remain outside it.
|
||||
The packaged runtime uses the platform's Bubblewrap/seccomp launcher. Only the
|
||||
engine's read-only runtime closure and private broker directory are mounted;
|
||||
native filesystem/process/network escape probes qualify that boundary. Systemd
|
||||
limits the whole package in a workspace VM. Shared authority additionally charges
|
||||
each engine to its own cgroup before launch. No per-isolate memory protection or
|
||||
Cloudflare hosted side-channel defenses are claimed. See the
|
||||
[runtime decision](../../docs/RESTRICTED_RUNTIME_DECISION.md#os-process-confinement-implementation)
|
||||
for the exact boundary and residual risks. A guest user can control its VM, so
|
||||
authoritative graph grants and credentials must remain outside it.
|
||||
|
||||
Qualification commands:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user