A continuable background child (the default backgroundMode for both delegation tools) never received the parent session's explicit sandbox/approval overrides: materialization applied only child composition, so a danger-full-access parent produced workspace-write children whose every out-of-workspace operation raised an approval prompt. Move the one-shot driver's capture/append pair into the shared child-agent module (captureDelegatedPolicyOverrides / appendDelegatedPolicyOverrides) and call it from both paths: startContinuable captures before its first await, only fresh materialization appends the source-tagged events (after any fork seed), and a cold resume replays the persisted delegation events instead of re-capturing the parent. Adds the continuable inheritance unit suite, the ACP snapshot scenario subagent-continuable-inheritance (fails without the fix), the continuable policy-inheritance Agent Note, and the seam-level README contract, with bilingual counterparts. Fixes #1692
47 lines
1.7 KiB
YAML
47 lines
1.7 KiB
YAML
# Keyless counterpart to subagent-continuable-inheritance.cordis.yml: replace
|
|
# the live adapter with replay and switch the root session to read-only at
|
|
# creation.
|
|
- id: base
|
|
name: '@cordisjs/plugin-include'
|
|
config:
|
|
path: ./cordis.yml
|
|
patches:
|
|
- id: llm-deepseek
|
|
name: '@deepseek-ai/dsh-llm-deepseek'
|
|
disabled: true
|
|
- id: acp-agent
|
|
name: '@deepseek-ai/dsh-acp-demo'
|
|
config:
|
|
provider: deepseek-official
|
|
model: deepseek-v4-flash
|
|
persistenceRoot: !!js process.env.DSH_SNAPSHOT_SESSIONS_ROOT ?? './.sessions'
|
|
persistenceCompression: none
|
|
workspaceContext:
|
|
maxBytes: 65536
|
|
persona: |
|
|
You are a coding assistant powered by the {{model}} model. Your working directory is {{cwd}}. Your bash tool runs under a file sandbox — a `[sandbox: file access denied …]` result is policy, not a command bug.
|
|
|
|
Verify your work by running the code or tests. Keep answers brief and factual.
|
|
- id: sandbox
|
|
name: '@deepseek-ai/dsh-sandbox-local'
|
|
config:
|
|
runnerCommand:
|
|
- bash
|
|
- -c
|
|
- while [ "$1" != "--" ]; do shift; done; shift; exec "$@"
|
|
- passthrough-runner
|
|
runnerFailureSignatures:
|
|
- 'passthrough-runner: profile rejected'
|
|
- insert:
|
|
- id: llm-replay
|
|
name: '@deepseek-ai/dsh-llm-replay'
|
|
config:
|
|
providers:
|
|
- id: deepseek-official
|
|
name: DeepSeek
|
|
models:
|
|
- id: deepseek-v4-flash
|
|
- id: deepseek-v4-pro
|
|
- id: parent-sandbox-override
|
|
name: './tests/fixtures/parent-sandbox-override.ts'
|