The creation header names the preset a session STARTED with and is frozen, which is correct — it is a creation fact. Switching is legal only while a session is blank, and that looked like enough: no history exists yet. It is not, because the switch's effect outlives the blank window. The user switches, then sends the first message; every turn from there runs under the new composition while the header still names the old one. The session is then locked around a misrecorded preset, and resume reads the header to rebuild it — composing one preset's tools over a history another produced, which is exactly the replay the blank-only lock exists to prevent, reached by another route. A picker showed `standard` for a session running `core-web`. A switch is now an `agent-preset/selected` event appended after the swap commits, and `resolveSessionPreset()` (last selection, else the header) is what every reconstruction reads: the summary, resume, the conflict guard, and the fork introduced one layer down.
69 lines
2.0 KiB
JSON
69 lines
2.0 KiB
JSON
{
|
|
"name": "@deepseek-ai/dsh-client-ui-agent-preset",
|
|
"description": "Agent-preset surface: the default preset for later sessions, in General settings",
|
|
"version": "0.0.1",
|
|
"private": true,
|
|
"type": "module",
|
|
"main": "lib/index.js",
|
|
"types": "lib/types/index.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./lib/types/index.d.ts",
|
|
"default": "./lib/index.js"
|
|
},
|
|
"./invariant": {
|
|
"types": "./lib/types/invariant.d.ts",
|
|
"default": "./lib/invariant.js"
|
|
},
|
|
"./client": {
|
|
"types": "./lib/types/client/index.d.ts",
|
|
"default": "./lib/client.js"
|
|
},
|
|
"./src/*": "./src/*",
|
|
"./package.json": "./package.json"
|
|
},
|
|
"dshClient": {
|
|
"inject": [
|
|
"@deepseek-ai/dsh-client-connection",
|
|
"@deepseek-ai/dsh-client-locale",
|
|
"@deepseek-ai/dsh-client-runtime",
|
|
"@deepseek-ai/dsh-client-ui-conversation"
|
|
],
|
|
"platform": "web"
|
|
},
|
|
"scripts": {
|
|
"bundle": "tsdown",
|
|
"watch": "tsdown --watch"
|
|
},
|
|
"license": "BSD-3-Clause",
|
|
"peerDependencies": {
|
|
"@deepseek-ai/dsh-client-connection": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-locale": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-runtime": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-ui-conversation": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-ui-primitives": "^0.0.1",
|
|
"@deepseek-ai/dsh-client-ui-slots": "^0.0.1",
|
|
"@deepseek-ai/dsh-invariants": "^0.0.1",
|
|
"cordis": "^4.0.0-rc.7",
|
|
"react": "^18.2.0"
|
|
},
|
|
"devDependencies": {
|
|
"@deepseek-ai/dsh-client-connection": "workspace:^",
|
|
"@deepseek-ai/dsh-client-locale": "workspace:^",
|
|
"@deepseek-ai/dsh-client-runtime": "workspace:^",
|
|
"@deepseek-ai/dsh-client-ui-conversation": "workspace:^",
|
|
"@deepseek-ai/dsh-client-ui-primitives": "workspace:^",
|
|
"@deepseek-ai/dsh-client-ui-slots": "workspace:^",
|
|
"@deepseek-ai/dsh-invariants": "workspace:^",
|
|
"@types/react": "~18.3.1",
|
|
"cordis": "^4.0.0-rc.7",
|
|
"react": "^18.2.0"
|
|
},
|
|
"files": [
|
|
"lib/index.js",
|
|
"lib/invariant.js",
|
|
"lib/client.js",
|
|
"lib/types/**/*.d.ts"
|
|
]
|
|
}
|