Durable home for the decisions from the docker-sandbox-substrate interview. The
contract slice itself is working state (docs/topics/ is pruned before merge per
docs/conventions/topic-docs/README.md), so the outcome lands here until an
implementation PR can carry the PLAN in its body.
What was decided
A kernel-separated local isolation substrate was evaluated and probed live on
Windows 11 Pro under a hardened invocation (clone mode + a default-deny network
posture). Both ladder assertions failed inside the boundary — the passing
condition — with the outer context proving each target reachable or present
first.
Integrating it costs zero files in this repository: the sandbox-provider seam
in plugins/autonomy/reference/runner.md already exists, the guided-setup slice
already detects capability-shaped rather than instance-shaped, and
guardrails/isolation-ladder.md forbids naming a product instance here at all.
The instance's only legitimate home is the substrate field in a consumer's
security binding, outside this repo.
The work this leaves
- Harden the probe's egress assertion. A connect-only test grades a
microVM-class substrate wrongly: raw TCP connect() succeeds because the
interception layer accepts the SYN and then drops the session, so TLS EOFs with
no data. templates/isolation-probe.md currently leans toward "must fail to
CONNECT" for metadata endpoints. The assertion must test whether data
flows.
- Add a third assertion covering the workspace mount. The existing two —
denied egress, absent host credentials — do not test the bind-mounted
workspace at all. A substrate can pass the probe cleanly while the agent can
still write host-executing files (.git/config alone is a command key ring;
core.fsmonitor executes host code on git status). The ladder's levels
describe the process boundary; the workspace mount is a deliberate hole
through it that nothing currently measures.
- Decide whether the ladder models kit-supplied allow rules. During the
probe a kit added its own network allow rule on top of a global deny-all.
Installing a kit can widen egress. Unlike the other items this changes what a
level binding certifies, and it is a supply-chain concern the ladder does not
model.
- Record a re-verification cadence for version-bound substrate evidence. The
probed product is pre-1.0 and ships roughly every two weeks; specific flags,
defaults, and guarantees rot. The durable findings are the architecture and the
posture, not the specifics.
Why this is not a plugin change
Naming any product in this repository's contract surface would violate the
ladder's "classes, never vendors" rule. Items 1–3 are all class-level and
vendor-neutral.
No linked issue — this IS the tracking item.
Related
melodic-software/dotfiles#427 (merged) — tracks the substrate CLI in the
user-scope package list.
Durable home for the decisions from the
docker-sandbox-substrateinterview. Thecontract slice itself is working state (
docs/topics/is pruned before merge perdocs/conventions/topic-docs/README.md), so the outcome lands here until animplementation PR can carry the PLAN in its body.
What was decided
A kernel-separated local isolation substrate was evaluated and probed live on
Windows 11 Pro under a hardened invocation (clone mode + a default-deny network
posture). Both ladder assertions failed inside the boundary — the passing
condition — with the outer context proving each target reachable or present
first.
Integrating it costs zero files in this repository: the sandbox-provider seam
in
plugins/autonomy/reference/runner.mdalready exists, the guided-setup slicealready detects capability-shaped rather than instance-shaped, and
guardrails/isolation-ladder.mdforbids naming a product instance here at all.The instance's only legitimate home is the
substratefield in a consumer'ssecurity binding, outside this repo.
The work this leaves
microVM-class substrate wrongly: raw TCP
connect()succeeds because theinterception layer accepts the SYN and then drops the session, so TLS EOFs with
no data.
templates/isolation-probe.mdcurrently leans toward "must fail toCONNECT" for metadata endpoints. The assertion must test whether data
flows.
denied egress, absent host credentials — do not test the bind-mounted
workspace at all. A substrate can pass the probe cleanly while the agent can
still write host-executing files (
.git/configalone is a command key ring;core.fsmonitorexecutes host code ongit status). The ladder's levelsdescribe the process boundary; the workspace mount is a deliberate hole
through it that nothing currently measures.
probe a kit added its own
network allowrule on top of a global deny-all.Installing a kit can widen egress. Unlike the other items this changes what a
level binding certifies, and it is a supply-chain concern the ladder does not
model.
probed product is pre-1.0 and ships roughly every two weeks; specific flags,
defaults, and guarantees rot. The durable findings are the architecture and the
posture, not the specifics.
Why this is not a plugin change
Naming any product in this repository's contract surface would violate the
ladder's "classes, never vendors" rule. Items 1–3 are all class-level and
vendor-neutral.
No linked issue — this IS the tracking item.
Related
melodic-software/dotfiles#427(merged) — tracks the substrate CLI in theuser-scope package list.