@deepseek-ai/dsh-session-title 0.1.0-rc.8 → 0.1.1-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.i18n.yaml +1 -1
- package/README.zh.md +1 -1
- package/lib/index.js +6 -2
- package/lib/types/index.js +3 -2
- package/lib/types/types.d.ts +3 -0
- package/package.json +14 -14
package/README.i18n.yaml
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
# after editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write packages/session/session-title/README.md
|
|
5
5
|
README.md: e923bd9700180214f235c4971d4b020565bfee43
|
|
6
|
-
README.zh.md:
|
|
6
|
+
README.zh.md: 6b1eef269dea65c66c1e9a70ce9469c66d192e84
|
package/README.zh.md
CHANGED
|
@@ -31,7 +31,7 @@ fork 出的会话会原样继承种子中的标题事件。首消息节奏不会
|
|
|
31
31
|
|
|
32
32
|
提供方会提供带品牌类型的稳定 id、自动模式(`first-prompt` 或 `all-prompts`)和 `generate(request)`。请求携带活跃会话、截至一次固定修订的所有符合条件消息、可用时当前已记录的主请求路由,以及取消信号。结果包含非空标题、该请求中互不重复且有序的来源消息 seq,以及生成该标题时使用的可选提供方/模型路由。服务会在结果持久保存前进行规范化和验证。
|
|
33
33
|
|
|
34
|
-
参见[会话标题数据结构](../../../docs/subsystems/session-title.md)与[已实现决策](../../../.agents/notes/implemented/feature/2026-07-21-log-backed-session-titles.md)。
|
|
34
|
+
参见[会话标题数据结构](../../../docs/subsystems/session-title.zh.md)与[已实现决策](../../../.agents/notes/implemented/feature/2026-07-21-log-backed-session-titles.zh.md)。
|
|
35
35
|
|
|
36
36
|
## 模型体验
|
|
37
37
|
|
package/lib/index.js
CHANGED
|
@@ -175,12 +175,16 @@ var SessionTitleService = class extends Service {
|
|
|
175
175
|
this.work.clear();
|
|
176
176
|
}, "sessionTitle lifecycle");
|
|
177
177
|
ctx.inject(["sessionProjections"], (projectionCtx) => {
|
|
178
|
+
const titleSchema = z$1.union([z$1.string().min(1), z$1.null()]);
|
|
178
179
|
projectionCtx.sessionProjections.register({
|
|
179
180
|
key: "title",
|
|
180
|
-
|
|
181
|
+
stateSchema: titleSchema,
|
|
181
182
|
init: () => null,
|
|
182
183
|
apply: (state, event) => event.type === "session/title" ? event.data.title : state,
|
|
183
|
-
|
|
184
|
+
wire: {
|
|
185
|
+
viewSchema: titleSchema,
|
|
186
|
+
view: (state) => state
|
|
187
|
+
},
|
|
184
188
|
stateVersion: 1
|
|
185
189
|
});
|
|
186
190
|
});
|
package/lib/types/index.js
CHANGED
|
@@ -132,12 +132,13 @@ export class SessionTitleService extends Service {
|
|
|
132
132
|
// string clients list rows read. The unit child activates only when a
|
|
133
133
|
// projection registry is composed (headless assemblies stay unaffected).
|
|
134
134
|
ctx.inject(['sessionProjections'], (projectionCtx) => {
|
|
135
|
+
const titleSchema = zod.union([zod.string().min(1), zod.null()]);
|
|
135
136
|
projectionCtx.sessionProjections.register({
|
|
136
137
|
key: 'title',
|
|
137
|
-
|
|
138
|
+
stateSchema: titleSchema,
|
|
138
139
|
init: () => null,
|
|
139
140
|
apply: (state, event) => (event.type === 'session/title' ? event.data.title : state),
|
|
140
|
-
view: state => state,
|
|
141
|
+
wire: { viewSchema: titleSchema, view: state => state },
|
|
141
142
|
stateVersion: 1,
|
|
142
143
|
});
|
|
143
144
|
});
|
package/lib/types/types.d.ts
CHANGED
|
@@ -9,6 +9,9 @@
|
|
|
9
9
|
*/
|
|
10
10
|
export {};
|
|
11
11
|
declare module '@deepseek-ai/dsh-session-projection/types' {
|
|
12
|
+
interface SessionProjectionStateMap {
|
|
13
|
+
title: string | null;
|
|
14
|
+
}
|
|
12
15
|
interface SessionProjectionMap {
|
|
13
16
|
/**
|
|
14
17
|
* The session's current normalized title — the latest `session/title`
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepseek-ai/dsh-session-title",
|
|
3
3
|
"description": "Log-backed session title service and provider registry for the DeepSeek Harness",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.1-rc.2",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -41,25 +41,25 @@
|
|
|
41
41
|
],
|
|
42
42
|
"license": "MIT",
|
|
43
43
|
"peerDependencies": {
|
|
44
|
-
"@deepseek-ai/dsh-brand": "^0.1.
|
|
45
|
-
"@deepseek-ai/dsh-
|
|
46
|
-
"@deepseek-ai/dsh-
|
|
47
|
-
"@deepseek-ai/
|
|
48
|
-
"@deepseek-ai/dsh-session": "^0.1.
|
|
49
|
-
"@deepseek-ai/
|
|
44
|
+
"@deepseek-ai/dsh-brand": "^0.1.1-rc.2",
|
|
45
|
+
"@deepseek-ai/dsh-llm": "^0.1.1-rc.2",
|
|
46
|
+
"@deepseek-ai/dsh-session-projection": "^0.1.1-rc.2",
|
|
47
|
+
"@deepseek-ai/cordis": "^4.0.1",
|
|
48
|
+
"@deepseek-ai/dsh-session": "^0.1.1-rc.2",
|
|
49
|
+
"@deepseek-ai/dsh-invariants": "^0.1.1-rc.2"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"zod": "^4.4.3",
|
|
53
53
|
"@deepseek-ai/schemastery": "^3.18.1"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@deepseek-ai/dsh-brand": "^0.1.
|
|
57
|
-
"@deepseek-ai/dsh-invariants": "^0.1.
|
|
58
|
-
"@deepseek-ai/dsh-llm": "^0.1.
|
|
59
|
-
"@deepseek-ai/dsh-session": "^0.1.
|
|
60
|
-
"@deepseek-ai/dsh-session-persistence-jsonl": "^0.1.
|
|
61
|
-
"@deepseek-ai/dsh-session-
|
|
56
|
+
"@deepseek-ai/dsh-brand": "^0.1.1-rc.2",
|
|
57
|
+
"@deepseek-ai/dsh-invariants": "^0.1.1-rc.2",
|
|
58
|
+
"@deepseek-ai/dsh-llm": "^0.1.1-rc.2",
|
|
59
|
+
"@deepseek-ai/dsh-session": "^0.1.1-rc.2",
|
|
60
|
+
"@deepseek-ai/dsh-session-persistence-jsonl": "^0.1.1-rc.2",
|
|
61
|
+
"@deepseek-ai/dsh-session-persistence-sqlite": "^0.1.1-rc.2",
|
|
62
62
|
"@deepseek-ai/cordis": "^4.0.1",
|
|
63
|
-
"@deepseek-ai/dsh-session-
|
|
63
|
+
"@deepseek-ai/dsh-session-projection": "^0.1.1-rc.2"
|
|
64
64
|
}
|
|
65
65
|
}
|