@deepseek-ai/dsh-message-feedback 0.0.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/LICENSE +28 -0
- package/README.i18n.yaml +6 -0
- package/README.md +84 -0
- package/README.zh.md +84 -0
- package/lib/index.js +420 -0
- package/lib/invariant.js +20 -0
- package/lib/typert.host.d.ts +3 -0
- package/lib/typert.host.js +307 -0
- package/lib/typert.remote-client.d.ts +25 -0
- package/lib/typert.remote-client.d.ts.map +1 -0
- package/lib/typert.remote-client.js +179 -0
- package/lib/types/index.d.ts +88 -0
- package/lib/types/index.js +342 -0
- package/lib/types/invariant.d.ts +13 -0
- package/lib/types/invariant.js +19 -0
- package/lib/types/spec.d.ts +48 -0
- package/lib/types/spec.js +74 -0
- package/lib/types/types.d.ts +111 -0
- package/lib/types/types.js +8 -0
- package/package.json +82 -0
- package/src/index.ts +383 -0
- package/src/invariant.ts +27 -0
- package/src/spec.ts +90 -0
- package/src/types.ts +147 -0
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
/* Generated by @deepseek-ai/dsh-typert-generator from FaceModel — do not edit. */
|
|
2
|
+
import { z } from 'zod'
|
|
3
|
+
|
|
4
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_delete_parameter_0$schema = z.object({
|
|
5
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
6
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
7
|
+
'ifVersion': z.intersection(z.string(), z.unknown()).readonly(),
|
|
8
|
+
})
|
|
9
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_delete_result$schema = z.union([z.object({
|
|
10
|
+
'ok': z.literal(true).readonly(),
|
|
11
|
+
'value': z.object({
|
|
12
|
+
'absent': z.literal(true).readonly(),
|
|
13
|
+
}).readonly(),
|
|
14
|
+
}), z.object({
|
|
15
|
+
'ok': z.literal(false).readonly(),
|
|
16
|
+
'error': z.union([z.object({
|
|
17
|
+
'code': z.literal("session-not-found").readonly(),
|
|
18
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
19
|
+
}), z.object({
|
|
20
|
+
'code': z.literal("version-conflict").readonly(),
|
|
21
|
+
'current': z.union([z.literal(null), z.object({
|
|
22
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
23
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
24
|
+
'note': z.string().readonly().optional(),
|
|
25
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
26
|
+
'createdAt': z.number().readonly(),
|
|
27
|
+
'updatedAt': z.number().readonly(),
|
|
28
|
+
})]).readonly(),
|
|
29
|
+
})]).readonly(),
|
|
30
|
+
})])
|
|
31
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_list_parameter_0$schema = z.object({
|
|
32
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
33
|
+
})
|
|
34
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_list_result$schema = z.union([z.object({
|
|
35
|
+
'ok': z.literal(true).readonly(),
|
|
36
|
+
'value': z.object({
|
|
37
|
+
'items': z.array(z.object({
|
|
38
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
39
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
40
|
+
'note': z.string().readonly().optional(),
|
|
41
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
42
|
+
'createdAt': z.number().readonly(),
|
|
43
|
+
'updatedAt': z.number().readonly(),
|
|
44
|
+
})).readonly(),
|
|
45
|
+
}).readonly(),
|
|
46
|
+
}), z.object({
|
|
47
|
+
'ok': z.literal(false).readonly(),
|
|
48
|
+
'error': z.object({
|
|
49
|
+
'code': z.literal("session-not-found").readonly(),
|
|
50
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
51
|
+
}).readonly(),
|
|
52
|
+
})])
|
|
53
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_put_parameter_0$schema = z.object({
|
|
54
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
55
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
56
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
57
|
+
'note': z.string().readonly().optional(),
|
|
58
|
+
'ifVersion': z.union([z.literal(null), z.intersection(z.string(), z.unknown())]).readonly(),
|
|
59
|
+
})
|
|
60
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_put_result$schema = z.union([z.object({
|
|
61
|
+
'ok': z.literal(true).readonly(),
|
|
62
|
+
'value': z.object({
|
|
63
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
64
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
65
|
+
'note': z.string().readonly().optional(),
|
|
66
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
67
|
+
'createdAt': z.number().readonly(),
|
|
68
|
+
'updatedAt': z.number().readonly(),
|
|
69
|
+
}).readonly(),
|
|
70
|
+
}), z.object({
|
|
71
|
+
'ok': z.literal(false).readonly(),
|
|
72
|
+
'error': z.union([z.object({
|
|
73
|
+
'code': z.literal("session-not-found").readonly(),
|
|
74
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
75
|
+
}), z.object({
|
|
76
|
+
'code': z.literal("target-not-found").readonly(),
|
|
77
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
78
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
79
|
+
}), z.object({
|
|
80
|
+
'code': z.literal("version-conflict").readonly(),
|
|
81
|
+
'current': z.union([z.literal(null), z.object({
|
|
82
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
83
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
84
|
+
'note': z.string().readonly().optional(),
|
|
85
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
86
|
+
'createdAt': z.number().readonly(),
|
|
87
|
+
'updatedAt': z.number().readonly(),
|
|
88
|
+
})]).readonly(),
|
|
89
|
+
}), z.object({
|
|
90
|
+
'code': z.literal("note-blank").readonly(),
|
|
91
|
+
}), z.object({
|
|
92
|
+
'code': z.literal("note-too-large").readonly(),
|
|
93
|
+
'maxBytes': z.number().readonly(),
|
|
94
|
+
'actualBytes': z.number().readonly(),
|
|
95
|
+
})]).readonly(),
|
|
96
|
+
})])
|
|
97
|
+
|
|
98
|
+
export const TYPERT = {
|
|
99
|
+
package: '@deepseek-ai/dsh-message-feedback',
|
|
100
|
+
face: 'host',
|
|
101
|
+
schemas: [
|
|
102
|
+
],
|
|
103
|
+
invocations: [
|
|
104
|
+
{
|
|
105
|
+
id: '@deepseek-ai/dsh-message-feedback#messageFeedback/delete',
|
|
106
|
+
service: 'messageFeedback',
|
|
107
|
+
namespace: 'messageFeedback',
|
|
108
|
+
method: 'delete',
|
|
109
|
+
invocation: { kind: 'direct' },
|
|
110
|
+
parameters: [
|
|
111
|
+
{
|
|
112
|
+
name: 'request',
|
|
113
|
+
wire: 'request',
|
|
114
|
+
source: 'json',
|
|
115
|
+
codec: {
|
|
116
|
+
mode: 'strict',
|
|
117
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackDeleteRequest',
|
|
118
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_delete_parameter_0$schema,
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
],
|
|
122
|
+
result: {
|
|
123
|
+
mode: 'strict',
|
|
124
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackDeleteResult',
|
|
125
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_delete_result$schema,
|
|
126
|
+
},
|
|
127
|
+
sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":272,"column":3},
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
id: '@deepseek-ai/dsh-message-feedback#messageFeedback/list',
|
|
131
|
+
service: 'messageFeedback',
|
|
132
|
+
namespace: 'messageFeedback',
|
|
133
|
+
method: 'list',
|
|
134
|
+
invocation: { kind: 'direct' },
|
|
135
|
+
parameters: [
|
|
136
|
+
{
|
|
137
|
+
name: 'request',
|
|
138
|
+
wire: 'request',
|
|
139
|
+
source: 'json',
|
|
140
|
+
codec: {
|
|
141
|
+
mode: 'strict',
|
|
142
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackListRequest',
|
|
143
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_list_parameter_0$schema,
|
|
144
|
+
},
|
|
145
|
+
},
|
|
146
|
+
],
|
|
147
|
+
result: {
|
|
148
|
+
mode: 'strict',
|
|
149
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackListResult',
|
|
150
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_list_result$schema,
|
|
151
|
+
},
|
|
152
|
+
sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":190,"column":9},
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
id: '@deepseek-ai/dsh-message-feedback#messageFeedback/put',
|
|
156
|
+
service: 'messageFeedback',
|
|
157
|
+
namespace: 'messageFeedback',
|
|
158
|
+
method: 'put',
|
|
159
|
+
invocation: { kind: 'direct' },
|
|
160
|
+
parameters: [
|
|
161
|
+
{
|
|
162
|
+
name: 'request',
|
|
163
|
+
wire: 'request',
|
|
164
|
+
source: 'json',
|
|
165
|
+
codec: {
|
|
166
|
+
mode: 'strict',
|
|
167
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackPutRequest',
|
|
168
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_put_parameter_0$schema,
|
|
169
|
+
},
|
|
170
|
+
},
|
|
171
|
+
],
|
|
172
|
+
result: {
|
|
173
|
+
mode: 'strict',
|
|
174
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackPutResult',
|
|
175
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_put_result$schema,
|
|
176
|
+
},
|
|
177
|
+
sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":206,"column":3},
|
|
178
|
+
},
|
|
179
|
+
],
|
|
180
|
+
model: {
|
|
181
|
+
"services": [
|
|
182
|
+
{
|
|
183
|
+
"description": "Storage-domain sidecar service. It inspects persisted Session history and never creates or resumes an Agent or Session.",
|
|
184
|
+
"summary": "Storage-domain sidecar service.",
|
|
185
|
+
"tags": [],
|
|
186
|
+
"jsDoc": "/**\n * Storage-domain sidecar service. It inspects persisted Session history and\n * never creates or resumes an Agent or Session.\n */",
|
|
187
|
+
"key": "messageFeedback",
|
|
188
|
+
"exportName": "MessageFeedbackService",
|
|
189
|
+
"members": [
|
|
190
|
+
{
|
|
191
|
+
"kind": "method",
|
|
192
|
+
"name": "list",
|
|
193
|
+
"signature": "@Remote('list') async list(request: MessageFeedbackListRequest): Promise<MessageFeedbackListResult>",
|
|
194
|
+
"summary": "Read feedback belonging to the current persisted Session lifecycle.",
|
|
195
|
+
"jsDoc": "/**\n * Read feedback belonging to the current persisted Session lifecycle.\n * A stale row from a reused Session id is invisible.\n * @param request - Session identity to inspect and list.\n * @returns current immutable items or `session-not-found`.\n */"
|
|
196
|
+
},
|
|
197
|
+
{
|
|
198
|
+
"kind": "method",
|
|
199
|
+
"name": "put",
|
|
200
|
+
"signature": "@Remote('put') put(request: MessageFeedbackPutRequest): Promise<MessageFeedbackPutResult>",
|
|
201
|
+
"summary": "Create or replace feedback for one derived append-origin assistant message.",
|
|
202
|
+
"jsDoc": "/**\n * Create or replace feedback for one derived append-origin assistant\n * message. Every request must match the addressed item's current version;\n * a matching no-op returns the stored item without changing its revision.\n * @param request - target, desired value, and observed item version.\n * @returns the committed item or an explicit business failure.\n */"
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"kind": "method",
|
|
206
|
+
"name": "delete",
|
|
207
|
+
"signature": "@Remote('delete') delete(request: MessageFeedbackDeleteRequest): Promise<MessageFeedbackDeleteResult>",
|
|
208
|
+
"summary": "Delete one feedback item.",
|
|
209
|
+
"jsDoc": "/**\n * Delete one feedback item. Absence is successful regardless of the\n * supplied version; an existing item requires an exact version match.\n * @param request - Session, message, and observed item version.\n * @returns the stable absent postcondition, or an explicit failure.\n */"
|
|
210
|
+
}
|
|
211
|
+
],
|
|
212
|
+
"types": [
|
|
213
|
+
{
|
|
214
|
+
"name": "Branded",
|
|
215
|
+
"declaration": "export type Branded<B extends string> = string & { readonly [BRAND]: B; };"
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
"name": "MessageFeedbackDeleteRequest",
|
|
219
|
+
"declaration": "export interface MessageFeedbackDeleteRequest {\n readonly sessionId: SessionId;\n readonly messageId: MessageId;\n readonly ifVersion: MessageFeedbackVersion;\n}"
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
"name": "MessageFeedbackDeleteResult",
|
|
223
|
+
"declaration": "export type MessageFeedbackDeleteResult = MessageFeedbackSuccess<MessageFeedbackDeleteValue> | MessageFeedbackRejected<MessageFeedbackSessionNotFound | MessageFeedbackVersionConflict>;"
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
"name": "MessageFeedbackDeleteValue",
|
|
227
|
+
"declaration": "export interface MessageFeedbackDeleteValue {\n readonly absent: true;\n}"
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"name": "MessageFeedbackFailure",
|
|
231
|
+
"declaration": "export type MessageFeedbackFailure = MessageFeedbackSessionNotFound | MessageFeedbackTargetNotFound | MessageFeedbackVersionConflict | MessageFeedbackNoteBlank | MessageFeedbackNoteTooLarge;"
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
"name": "MessageFeedbackItem",
|
|
235
|
+
"declaration": "export interface MessageFeedbackItem {\n readonly messageId: MessageId;\n readonly rating: MessageFeedbackRating;\n readonly note?: string;\n readonly version: MessageFeedbackVersion;\n readonly createdAt: number;\n readonly updatedAt: number;\n}"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"name": "MessageFeedbackListRequest",
|
|
239
|
+
"declaration": "export interface MessageFeedbackListRequest {\n readonly sessionId: SessionId;\n}"
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"name": "MessageFeedbackListResult",
|
|
243
|
+
"declaration": "export type MessageFeedbackListResult = MessageFeedbackSuccess<MessageFeedbackListValue> | MessageFeedbackRejected<MessageFeedbackSessionNotFound>;"
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
"name": "MessageFeedbackListValue",
|
|
247
|
+
"declaration": "export interface MessageFeedbackListValue {\n readonly items: readonly MessageFeedbackItem[];\n}"
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"name": "MessageFeedbackNoteBlank",
|
|
251
|
+
"declaration": "export interface MessageFeedbackNoteBlank {\n readonly code: 'note-blank';\n}"
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
"name": "MessageFeedbackNoteTooLarge",
|
|
255
|
+
"declaration": "export interface MessageFeedbackNoteTooLarge {\n readonly code: 'note-too-large';\n readonly maxBytes: number;\n readonly actualBytes: number;\n}"
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"name": "MessageFeedbackPutRequest",
|
|
259
|
+
"declaration": "export interface MessageFeedbackPutRequest {\n readonly sessionId: SessionId;\n readonly messageId: MessageId;\n readonly rating: MessageFeedbackRating;\n readonly note?: string;\n readonly ifVersion: MessageFeedbackVersion | null;\n}"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"name": "MessageFeedbackPutResult",
|
|
263
|
+
"declaration": "export type MessageFeedbackPutResult = MessageFeedbackSuccess<MessageFeedbackItem> | MessageFeedbackRejected<MessageFeedbackSessionNotFound | MessageFeedbackTargetNotFound | MessageFeedbackVersionConflict | MessageFeedbackNoteBlank | MessageFeedbackNoteTooLarge>;"
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"name": "MessageFeedbackRating",
|
|
267
|
+
"declaration": "export type MessageFeedbackRating = 'positive' | 'negative';"
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
"name": "MessageFeedbackRejected",
|
|
271
|
+
"declaration": "export interface MessageFeedbackRejected<E extends MessageFeedbackFailure> {\n readonly ok: false;\n readonly error: E;\n}"
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
"name": "MessageFeedbackSessionNotFound",
|
|
275
|
+
"declaration": "export interface MessageFeedbackSessionNotFound {\n readonly code: 'session-not-found';\n readonly sessionId: SessionId;\n}"
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
"name": "MessageFeedbackSuccess",
|
|
279
|
+
"declaration": "export interface MessageFeedbackSuccess<T> {\n readonly ok: true;\n readonly value: T;\n}"
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
"name": "MessageFeedbackTargetNotFound",
|
|
283
|
+
"declaration": "export interface MessageFeedbackTargetNotFound {\n readonly code: 'target-not-found';\n readonly sessionId: SessionId;\n readonly messageId: MessageId;\n}"
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
"name": "MessageFeedbackVersion",
|
|
287
|
+
"declaration": "export type MessageFeedbackVersion = Branded<'MessageFeedbackVersion'>;"
|
|
288
|
+
},
|
|
289
|
+
{
|
|
290
|
+
"name": "MessageFeedbackVersionConflict",
|
|
291
|
+
"declaration": "export interface MessageFeedbackVersionConflict {\n readonly code: 'version-conflict';\n readonly current: MessageFeedbackItem | null;\n}"
|
|
292
|
+
},
|
|
293
|
+
{
|
|
294
|
+
"name": "MessageId",
|
|
295
|
+
"declaration": "export type MessageId = Branded<'MessageId'>;"
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
"name": "SessionId",
|
|
299
|
+
"declaration": "export type SessionId = Branded<'SessionId'>;"
|
|
300
|
+
}
|
|
301
|
+
]
|
|
302
|
+
}
|
|
303
|
+
],
|
|
304
|
+
"events": [],
|
|
305
|
+
"objects": []
|
|
306
|
+
},
|
|
307
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/* Generated by @deepseek-ai/dsh-typert-generator from the Host FaceModel — do not edit. */
|
|
2
|
+
import type {
|
|
3
|
+
TypeRTRemoteContribution,
|
|
4
|
+
} from '@deepseek-ai/dsh-type-meta'
|
|
5
|
+
import type { MessageFeedbackDeleteRequest, MessageFeedbackDeleteResult, MessageFeedbackListRequest, MessageFeedbackListResult, MessageFeedbackPutRequest, MessageFeedbackPutResult } from '@deepseek-ai/dsh-message-feedback/types'
|
|
6
|
+
|
|
7
|
+
declare module '@deepseek-ai/dsh-type-meta' {
|
|
8
|
+
interface TypeRTRemoteNamespace$6d657373616765466565646261636b {
|
|
9
|
+
delete: (request: MessageFeedbackDeleteRequest) => Promise<MessageFeedbackDeleteResult>
|
|
10
|
+
list: (request: MessageFeedbackListRequest) => Promise<MessageFeedbackListResult>
|
|
11
|
+
put: (request: MessageFeedbackPutRequest) => Promise<MessageFeedbackPutResult>
|
|
12
|
+
}
|
|
13
|
+
interface TypeRTRemoteMap {
|
|
14
|
+
'messageFeedback/delete': (request: MessageFeedbackDeleteRequest) => Promise<MessageFeedbackDeleteResult>
|
|
15
|
+
'messageFeedback/list': (request: MessageFeedbackListRequest) => Promise<MessageFeedbackListResult>
|
|
16
|
+
'messageFeedback/put': (request: MessageFeedbackPutRequest) => Promise<MessageFeedbackPutResult>
|
|
17
|
+
}
|
|
18
|
+
interface TypeRTRemoteNamespaceMap {
|
|
19
|
+
'messageFeedback': TypeRTRemoteNamespace$6d657373616765466565646261636b
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export declare const TYPERT_REMOTE: TypeRTRemoteContribution
|
|
24
|
+
export default TYPERT_REMOTE
|
|
25
|
+
//# sourceMappingURL=typert.remote-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typert.remote-client.d.ts","names":["delete","list","put"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":";;;;;;;;IA+QEA,M;IAlFMC,I;IAgBNC,G;;;IAkEAF,wB;IAlFMC,sB;IAgBNC,qB","ignoreList":[]}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
/* Generated by @deepseek-ai/dsh-typert-generator from the Host FaceModel — do not edit. */
|
|
2
|
+
import { z } from 'zod'
|
|
3
|
+
|
|
4
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_delete_parameter_0$schema = z.object({
|
|
5
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
6
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
7
|
+
'ifVersion': z.intersection(z.string(), z.unknown()).readonly(),
|
|
8
|
+
})
|
|
9
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_delete_result$schema = z.union([z.object({
|
|
10
|
+
'ok': z.literal(true).readonly(),
|
|
11
|
+
'value': z.object({
|
|
12
|
+
'absent': z.literal(true).readonly(),
|
|
13
|
+
}).readonly(),
|
|
14
|
+
}), z.object({
|
|
15
|
+
'ok': z.literal(false).readonly(),
|
|
16
|
+
'error': z.union([z.object({
|
|
17
|
+
'code': z.literal("session-not-found").readonly(),
|
|
18
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
19
|
+
}), z.object({
|
|
20
|
+
'code': z.literal("version-conflict").readonly(),
|
|
21
|
+
'current': z.union([z.literal(null), z.object({
|
|
22
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
23
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
24
|
+
'note': z.string().readonly().optional(),
|
|
25
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
26
|
+
'createdAt': z.number().readonly(),
|
|
27
|
+
'updatedAt': z.number().readonly(),
|
|
28
|
+
})]).readonly(),
|
|
29
|
+
})]).readonly(),
|
|
30
|
+
})])
|
|
31
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_list_parameter_0$schema = z.object({
|
|
32
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
33
|
+
})
|
|
34
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_list_result$schema = z.union([z.object({
|
|
35
|
+
'ok': z.literal(true).readonly(),
|
|
36
|
+
'value': z.object({
|
|
37
|
+
'items': z.array(z.object({
|
|
38
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
39
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
40
|
+
'note': z.string().readonly().optional(),
|
|
41
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
42
|
+
'createdAt': z.number().readonly(),
|
|
43
|
+
'updatedAt': z.number().readonly(),
|
|
44
|
+
})).readonly(),
|
|
45
|
+
}).readonly(),
|
|
46
|
+
}), z.object({
|
|
47
|
+
'ok': z.literal(false).readonly(),
|
|
48
|
+
'error': z.object({
|
|
49
|
+
'code': z.literal("session-not-found").readonly(),
|
|
50
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
51
|
+
}).readonly(),
|
|
52
|
+
})])
|
|
53
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_put_parameter_0$schema = z.object({
|
|
54
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
55
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
56
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
57
|
+
'note': z.string().readonly().optional(),
|
|
58
|
+
'ifVersion': z.union([z.literal(null), z.intersection(z.string(), z.unknown())]).readonly(),
|
|
59
|
+
})
|
|
60
|
+
const _deepseek_ai_dsh_message_feedback_messageFeedback_put_result$schema = z.union([z.object({
|
|
61
|
+
'ok': z.literal(true).readonly(),
|
|
62
|
+
'value': z.object({
|
|
63
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
64
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
65
|
+
'note': z.string().readonly().optional(),
|
|
66
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
67
|
+
'createdAt': z.number().readonly(),
|
|
68
|
+
'updatedAt': z.number().readonly(),
|
|
69
|
+
}).readonly(),
|
|
70
|
+
}), z.object({
|
|
71
|
+
'ok': z.literal(false).readonly(),
|
|
72
|
+
'error': z.union([z.object({
|
|
73
|
+
'code': z.literal("session-not-found").readonly(),
|
|
74
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
75
|
+
}), z.object({
|
|
76
|
+
'code': z.literal("target-not-found").readonly(),
|
|
77
|
+
'sessionId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
78
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
79
|
+
}), z.object({
|
|
80
|
+
'code': z.literal("version-conflict").readonly(),
|
|
81
|
+
'current': z.union([z.literal(null), z.object({
|
|
82
|
+
'messageId': z.intersection(z.string(), z.unknown()).readonly(),
|
|
83
|
+
'rating': z.union([z.literal("positive"), z.literal("negative")]).readonly(),
|
|
84
|
+
'note': z.string().readonly().optional(),
|
|
85
|
+
'version': z.intersection(z.string(), z.unknown()).readonly(),
|
|
86
|
+
'createdAt': z.number().readonly(),
|
|
87
|
+
'updatedAt': z.number().readonly(),
|
|
88
|
+
})]).readonly(),
|
|
89
|
+
}), z.object({
|
|
90
|
+
'code': z.literal("note-blank").readonly(),
|
|
91
|
+
}), z.object({
|
|
92
|
+
'code': z.literal("note-too-large").readonly(),
|
|
93
|
+
'maxBytes': z.number().readonly(),
|
|
94
|
+
'actualBytes': z.number().readonly(),
|
|
95
|
+
})]).readonly(),
|
|
96
|
+
})])
|
|
97
|
+
|
|
98
|
+
export const TYPERT_REMOTE = {
|
|
99
|
+
package: '@deepseek-ai/dsh-message-feedback',
|
|
100
|
+
descriptors: [
|
|
101
|
+
{
|
|
102
|
+
id: '@deepseek-ai/dsh-message-feedback#messageFeedback/delete',
|
|
103
|
+
service: 'messageFeedback',
|
|
104
|
+
namespace: 'messageFeedback',
|
|
105
|
+
method: 'delete',
|
|
106
|
+
invocation: { kind: 'direct' },
|
|
107
|
+
parameters: [
|
|
108
|
+
{
|
|
109
|
+
name: 'request',
|
|
110
|
+
wire: 'request',
|
|
111
|
+
source: 'json',
|
|
112
|
+
codec: {
|
|
113
|
+
mode: 'strict',
|
|
114
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackDeleteRequest',
|
|
115
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_delete_parameter_0$schema,
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
result: {
|
|
120
|
+
mode: 'strict',
|
|
121
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackDeleteResult',
|
|
122
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_delete_result$schema,
|
|
123
|
+
},
|
|
124
|
+
sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":272,"column":3},
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
id: '@deepseek-ai/dsh-message-feedback#messageFeedback/list',
|
|
128
|
+
service: 'messageFeedback',
|
|
129
|
+
namespace: 'messageFeedback',
|
|
130
|
+
method: 'list',
|
|
131
|
+
invocation: { kind: 'direct' },
|
|
132
|
+
parameters: [
|
|
133
|
+
{
|
|
134
|
+
name: 'request',
|
|
135
|
+
wire: 'request',
|
|
136
|
+
source: 'json',
|
|
137
|
+
codec: {
|
|
138
|
+
mode: 'strict',
|
|
139
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackListRequest',
|
|
140
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_list_parameter_0$schema,
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
],
|
|
144
|
+
result: {
|
|
145
|
+
mode: 'strict',
|
|
146
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackListResult',
|
|
147
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_list_result$schema,
|
|
148
|
+
},
|
|
149
|
+
sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":190,"column":9},
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
id: '@deepseek-ai/dsh-message-feedback#messageFeedback/put',
|
|
153
|
+
service: 'messageFeedback',
|
|
154
|
+
namespace: 'messageFeedback',
|
|
155
|
+
method: 'put',
|
|
156
|
+
invocation: { kind: 'direct' },
|
|
157
|
+
parameters: [
|
|
158
|
+
{
|
|
159
|
+
name: 'request',
|
|
160
|
+
wire: 'request',
|
|
161
|
+
source: 'json',
|
|
162
|
+
codec: {
|
|
163
|
+
mode: 'strict',
|
|
164
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackPutRequest',
|
|
165
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_put_parameter_0$schema,
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
result: {
|
|
170
|
+
mode: 'strict',
|
|
171
|
+
typeSymbol: '@deepseek-ai/dsh-message-feedback/types#MessageFeedbackPutResult',
|
|
172
|
+
schema: _deepseek_ai_dsh_message_feedback_messageFeedback_put_result$schema,
|
|
173
|
+
},
|
|
174
|
+
sourceLocation: {"file":"packages/feedback/message-feedback/src/index.ts","line":206,"column":3},
|
|
175
|
+
},
|
|
176
|
+
],
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
export default TYPERT_REMOTE
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Durable, lifecycle-bound feedback for finalized assistant messages.
|
|
3
|
+
* @module @deepseek-ai/dsh-message-feedback
|
|
4
|
+
*/
|
|
5
|
+
import { Context, Service } from '@deepseek-ai/cordis';
|
|
6
|
+
import s from '@deepseek-ai/schemastery';
|
|
7
|
+
import { GatewayService } from '@deepseek-ai/dsh-type-meta';
|
|
8
|
+
import type { MessageFeedbackDeleteRequest, MessageFeedbackDeleteResult, MessageFeedbackListRequest, MessageFeedbackListResult, MessageFeedbackPutRequest, MessageFeedbackPutResult } from './types.ts';
|
|
9
|
+
export type * from './types.ts';
|
|
10
|
+
export { messageFeedbackDomainSpec, messageFeedbackItemSchema, messageFeedbackRatingSchema, messageFeedbackRowSchema, messageFeedbackSessionIdentitySchema, messageFeedbackVersionSchema, } from './spec.ts';
|
|
11
|
+
export type { MessageFeedbackRow, MessageFeedbackSessionIdentity } from './spec.ts';
|
|
12
|
+
/** Required deployment policy for optional notes. */
|
|
13
|
+
export interface Config {
|
|
14
|
+
/** Maximum UTF-8 byte length accepted for one note. */
|
|
15
|
+
readonly maxNoteBytes: number;
|
|
16
|
+
}
|
|
17
|
+
declare module '@deepseek-ai/cordis' {
|
|
18
|
+
interface Context {
|
|
19
|
+
messageFeedback: MessageFeedbackService;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Storage-domain sidecar service. It inspects persisted Session history and
|
|
24
|
+
* never creates or resumes an Agent or Session.
|
|
25
|
+
*/
|
|
26
|
+
export declare class MessageFeedbackService extends GatewayService {
|
|
27
|
+
static inject: string[];
|
|
28
|
+
/** Loader validation for the required note-size policy. */
|
|
29
|
+
static Config: s<Config>;
|
|
30
|
+
private readonly maxNoteBytes;
|
|
31
|
+
private table?;
|
|
32
|
+
private readonly operationTails;
|
|
33
|
+
private mutationAdmissionOpen;
|
|
34
|
+
/**
|
|
35
|
+
* @param ctx - Host context carrying persistence and the storage-domain form.
|
|
36
|
+
* @param config - Required note-size policy.
|
|
37
|
+
*/
|
|
38
|
+
constructor(ctx: Context, config: Config);
|
|
39
|
+
/** Open and own the one message-feedback sidecar domain. */
|
|
40
|
+
protected [Service.init](): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Read feedback belonging to the current persisted Session lifecycle.
|
|
43
|
+
* A stale row from a reused Session id is invisible.
|
|
44
|
+
* @param request - Session identity to inspect and list.
|
|
45
|
+
* @returns current immutable items or `session-not-found`.
|
|
46
|
+
*/
|
|
47
|
+
list(request: MessageFeedbackListRequest): Promise<MessageFeedbackListResult>;
|
|
48
|
+
/**
|
|
49
|
+
* Create or replace feedback for one derived append-origin assistant
|
|
50
|
+
* message. Every request must match the addressed item's current version;
|
|
51
|
+
* a matching no-op returns the stored item without changing its revision.
|
|
52
|
+
* @param request - target, desired value, and observed item version.
|
|
53
|
+
* @returns the committed item or an explicit business failure.
|
|
54
|
+
*/
|
|
55
|
+
put(request: MessageFeedbackPutRequest): Promise<MessageFeedbackPutResult>;
|
|
56
|
+
/**
|
|
57
|
+
* Delete one feedback item. Absence is successful regardless of the
|
|
58
|
+
* supplied version; an existing item requires an exact version match.
|
|
59
|
+
* @param request - Session, message, and observed item version.
|
|
60
|
+
* @returns the stable absent postcondition, or an explicit failure.
|
|
61
|
+
*/
|
|
62
|
+
delete(request: MessageFeedbackDeleteRequest): Promise<MessageFeedbackDeleteResult>;
|
|
63
|
+
/**
|
|
64
|
+
* Resolve a live owner directly; otherwise use the storage catalog as the
|
|
65
|
+
* existence authority before inspecting the log. Inspection failures for a
|
|
66
|
+
* catalogued Session remain infrastructure failures rather than being
|
|
67
|
+
* guessed into the business `session-not-found` branch.
|
|
68
|
+
*/
|
|
69
|
+
private inspectSession;
|
|
70
|
+
/** Require the exact finalized append-origin assistant message projection. */
|
|
71
|
+
private hasFeedbackTarget;
|
|
72
|
+
/**
|
|
73
|
+
* Put the target log prefix behind a durability barrier before its sidecar.
|
|
74
|
+
* A live owner flushes through the SessionStore's canonical checkpoint; a
|
|
75
|
+
* cold owner is re-read from the physical durable prefix.
|
|
76
|
+
*/
|
|
77
|
+
private ensureTargetDurable;
|
|
78
|
+
/** Validate optional-note semantics and the configured complete UTF-8 byte bound. */
|
|
79
|
+
private resolveNote;
|
|
80
|
+
/** Return the authoritative item needed to reconcile one failed comparison. */
|
|
81
|
+
private versionConflict;
|
|
82
|
+
/** Queue a complete read/compare/write mutation behind this Session's prior mutation. */
|
|
83
|
+
private enqueue;
|
|
84
|
+
/** Resolve the initialized durable table or fail a broken service lifecycle. */
|
|
85
|
+
private requireTable;
|
|
86
|
+
}
|
|
87
|
+
export default MessageFeedbackService;
|
|
88
|
+
//# sourceMappingURL=index.d.ts.map
|