fix: align delegated preset snapshots

This commit is contained in:
pku-xht committed 2026-09-05 05:57:39 +08:00
1 parent 344432de76
commit c7fbe079f0
7 files changed
+15 -39

No files matched your search

@@ -1,7 +1,7 @@
{
"name": "@deepseek-ai/dsh-auto-review",
"description": "Per-tool LLM authorization review for the DeepSeek Harness Auto permission preset",
"version": "0.1.2-rc.1",
"version": "0.1.3-alpha.1",
"publishConfig": {
"access": "public"
},
@@ -97,9 +97,9 @@ describe('in-process policy inheritance', () => {
await run.result
const child = run.localAgent as Agent
expect(child.session.snapshotEvents().slice(0, 3)).toMatchObject([
{ type: 'permission/preset', seq: 0, data: { preset } },
{ type: 'sandbox/mode', seq: 1, data: { mode: 'danger-full-access', source: 'delegation' } },
{ type: 'approval/policy', seq: 2, data: { policy: 'never', source: 'delegation' } },
{ type: 'sandbox/mode', seq: 0, data: { mode: 'danger-full-access', source: 'delegation' } },
{ type: 'approval/policy', seq: 1, data: { policy: 'never', source: 'delegation' } },
{ type: 'permission/preset', seq: 2, data: { preset } },
])
} finally {
await run.dispose()
@@ -265,15 +265,15 @@ export function appendDelegatedPolicyOverrides(
childSession: Session,
overrides: DelegatedPolicyOverrides,
): void {
if (overrides.permissionPreset !== undefined) {
childSession.append('permission/preset', { preset: overrides.permissionPreset })
}
if (overrides.sandboxMode !== undefined) {
childSession.append('sandbox/mode', { mode: overrides.sandboxMode, source: 'delegation' })
}
if (overrides.approvalPolicy !== undefined) {
childSession.append('approval/policy', { policy: overrides.approvalPolicy, source: 'delegation' })
}
if (overrides.permissionPreset !== undefined) {
childSession.append('permission/preset', { preset: overrides.permissionPreset })
}
}
/** Identity and lineage inputs shared by every in-process child creation. */
@@ -103,12 +103,14 @@ describe('continuable policy inheritance', () => {
await waitNoActivation(ctx, started.childId)
const loaded = await loadStoredSession(ctx.sessionPersistence, started.childId)
expect(loaded.events.filter(event => event.type === 'permission/preset')).toMatchObject([
{ data: { preset } },
])
expect(policyEvents(loaded.events)).toMatchObject([
expect(loaded.events.filter(event =>
event.type === 'sandbox/mode'
|| event.type === 'approval/policy'
|| event.type === 'permission/preset',
)).toMatchObject([
{ type: 'sandbox/mode', data: { mode: 'danger-full-access', source: 'delegation' } },
{ type: 'approval/policy', data: { policy: 'never', source: 'delegation' } },
{ type: 'permission/preset', data: { preset } },
])
},
)
@@ -2504,20 +2504,6 @@
"childSessionId": "{{child-1}}"
}
},
{
"method": "session.event",
"payload": {
"sessionId": "{{child-1}}",
"event": {
"type": "permission/preset",
"seq": 2,
"time": 0,
"data": {
"preset": "danger-full-access"
}
}
}
},
{
"method": "session.event",
"payload": {
@@ -3146,20 +3132,6 @@
"childSessionId": "{{child-2}}"
}
},
{
"method": "session.event",
"payload": {
"sessionId": "{{child-2}}",
"event": {
"type": "permission/preset",
"seq": 2,
"time": 0,
"data": {
"preset": "danger-full-access"
}
}
}
},
{
"method": "session.event",
"payload": {
@@ -17,6 +17,7 @@
{"type":"session/end-seed","data":{"inherited":true}}
{"type":"sandbox/mode","data":{"mode":"danger-full-access","source":"delegation"}}
{"type":"approval/policy","data":{"policy":"never","source":"delegation"}}
{"type":"permission/preset","data":{"preset":"danger-full-access"}}
{"type":"agent/inbox/spliced","data":{"target":"next-turn","start":0,"inserted":[{"content":[{"type":"text","text":"What is the project codeword mentioned earlier in this conversation? Reply with exactly that one word and nothing else."}],"source":{"kind":"user"},"role":"user","id":"{{message:8}}"}]}}
{"type":"turn/start","data":{"turn":2}}
{"type":"agent/inbox/spliced","data":{"target":"next-turn","start":0,"removedCount":1,"inserted":[]}}
@@ -17,6 +17,7 @@
{"type":"session/end-seed","data":{"inherited":true}}
{"type":"sandbox/mode","data":{"mode":"danger-full-access","source":"delegation"}}
{"type":"approval/policy","data":{"policy":"never","source":"delegation"}}
{"type":"permission/preset","data":{"preset":"danger-full-access"}}
{"type":"agent/inbox/spliced","data":{"target":"next-turn","start":0,"inserted":[{"content":[{"type":"text","text":"What is the project codeword mentioned earlier in this conversation? Reply with exactly that one word and nothing else."}],"source":{"kind":"user"},"role":"user","id":"{{message:13}}"}]}}
{"type":"turn/start","data":{"turn":2}}
{"type":"agent/inbox/spliced","data":{"target":"next-turn","start":0,"removedCount":1,"inserted":[]}}