deepseek-harness/docs/core-data-structures
kingwl 2eed448acf feat(bash): the sandboxed executor — per-call policy carrier, denial facts, runner-failure classification
dsh-bash grows the per-call policy carrier: BashExecRequest.sandboxMode
(request-optional, spec required-but-nullable — the owner pattern; resolve()
is the one explicit defaulting step) and the BashExecutor.sandboxMode
capability fact (undefined in the base class — composition truth the tool
layer can read). dsh-bash-local carries the field verbatim and confines
nothing.

dsh-bash-sandbox extends LocalBashExecutor and hands ctx.sandbox the exact
argv it is about to spawn. A denial is a RESULT FACT (the command RAN;
result.sandbox.denied is orthogonal to exitCode/signal), classified
conservatively against the wrap own dialect; a RUNNER failure outranks
denial — foreground re-throws the structured SANDBOX_UNAVAILABLE, a settled
background task stamps sandbox.runnerFailed — so a broken sandbox never
reads as a failing command and the command never runs unconfined.
dsh-tool-bash renders the markers and teaches the model not to retry around
a policy denial; escalation and per-session switching are staged follow-ups.
2026-07-10 15:43:02 +08:00
..
bash.md feat(bash): the sandboxed executor — per-call policy carrier, denial facts, runner-failure classification 2026-07-10 15:43:02 +08:00
code-runtime.md feat: Code Mode — the registry's mode config, the SDK codegen, and the run_code bridge 2026-07-08 12:58:23 +08:00
compaction.md docs(compact): sync the compactIfNeeded prose signature with the sessionPrefix parameter 2026-07-08 22:40:38 +08:00
core.md Merge remote-tracking branch 'origin/master' into workflow-vm-to-workerthread 2026-07-09 22:54:19 +08:00
filesystem.md Split the cordis catalog into separate events and services documents 2026-07-05 00:45:06 +08:00
llm-streaming.md docs: make the service map the front door of architecture.md 2026-07-05 01:22:17 +08:00
persistence.md docs: flatten single-file catalog dirs to docs/tool-catalog.md and docs/persistence-catalog.md 2026-07-06 22:26:06 +08:00
session.md refactor(agent): replace the per-step advice seam with agent/session-prefix 2026-07-08 15:44:30 +08:00
subagent.md Structured output on the subagent seam: schema subset, capture runtime, spawn/fork support 2026-07-06 23:29:08 +08:00
tools.md docs(timeout): update RFC + generated catalogs for the declaration split 2026-07-08 15:06:02 +08:00
user-interaction.md refactor: colocate user interaction with ui packages 2026-07-09 17:59:02 +08:00
web.md build: upgrade to 22.19 for deps 2026-07-07 17:39:04 +08:00
workflow.md workflow: meta rides the seam as data — the engine never evaluates it 2026-07-09 20:09:10 +08:00