@my-life-buddies/buddy-runtime 0.24.0-dev.3 → 0.24.0-dev.5
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.md +55 -113
- package/dist/conversation/agent.d.ts +1 -7
- package/dist/conversation/agent.d.ts.map +1 -1
- package/dist/conversation/agent.js +6 -64
- package/dist/conversation/agent.js.map +1 -1
- package/dist/conversation/index.d.ts +20 -7
- package/dist/conversation/index.d.ts.map +1 -1
- package/dist/conversation/index.js +221 -36
- package/dist/conversation/index.js.map +1 -1
- package/dist/conversation/mlbMessageAgentMessageConverter.js +1 -1
- package/dist/conversation/mlbMessageAgentMessageConverter.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mlbClient.d.ts +39 -6
- package/dist/mlbClient.d.ts.map +1 -1
- package/dist/mlbClient.js +79 -34
- package/dist/mlbClient.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +21 -77
- package/dist/server.js.map +1 -1
- package/dist/tools/hybridSearch.d.ts +14 -0
- package/dist/tools/hybridSearch.d.ts.map +1 -0
- package/dist/tools/hybridSearch.js +66 -0
- package/dist/tools/hybridSearch.js.map +1 -0
- package/dist/tools/widget.d.ts +1 -1
- package/dist/tools/widget.d.ts.map +1 -1
- package/dist/tools/widget.js +10 -11
- package/dist/tools/widget.js.map +1 -1
- package/dist/types.d.ts +47 -23
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/services/cache.d.ts +0 -15
- package/dist/services/cache.d.ts.map +0 -1
- package/dist/services/cache.js +0 -58
- package/dist/services/cache.js.map +0 -1
- package/dist/services/manifest.d.ts +0 -3
- package/dist/services/manifest.d.ts.map +0 -1
- package/dist/services/manifest.js +0 -19
- package/dist/services/manifest.js.map +0 -1
- package/dist/services/session.d.ts +0 -10
- package/dist/services/session.d.ts.map +0 -1
- package/dist/services/session.js +0 -57
- package/dist/services/session.js.map +0 -1
- package/dist/services/types.d.ts +0 -122
- package/dist/services/types.d.ts.map +0 -1
- package/dist/services/types.js +0 -2
- package/dist/services/types.js.map +0 -1
- package/dist/tools/service.d.ts +0 -18
- package/dist/tools/service.d.ts.map +0 -1
- package/dist/tools/service.js +0 -25
- package/dist/tools/service.js.map +0 -1
package/dist/mlbClient.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BuddyEvent, BuddyLogger, DataRequirementDeclaration, DatasetAccessResult, MemoryEntry, MLBMessageToWrite, PullResponse, Widget, WidgetRecord, WidgetSummary } from "./types.ts";
|
|
2
|
-
import type { ProactiveRun, ProactiveSkip, ProactiveSubscription, ProactiveSubscriptionRequest } from "./types.ts";
|
|
2
|
+
import type { ProactiveRun, ProactiveSkip, ProactiveSubscription, ProactiveSubscriptionRequest, WidgetChangeRun } from "./types.ts";
|
|
3
3
|
export interface MLBClientOptions {
|
|
4
4
|
/** 网关地址,如 http://localhost:8788;末尾带不带斜杠都行 */
|
|
5
5
|
gatewayUrl: string;
|
|
@@ -16,6 +16,36 @@ export type WriteResult = {
|
|
|
16
16
|
status: number;
|
|
17
17
|
body: string;
|
|
18
18
|
};
|
|
19
|
+
export interface HybridSearchRequest {
|
|
20
|
+
query: string;
|
|
21
|
+
scope: "all" | "xhs" | "web";
|
|
22
|
+
/** 每个启用来源的结果上限。 */
|
|
23
|
+
limit: number;
|
|
24
|
+
includeComments: boolean;
|
|
25
|
+
includeWebContent: boolean;
|
|
26
|
+
}
|
|
27
|
+
export type HybridSearchResult = {
|
|
28
|
+
source: "xhs";
|
|
29
|
+
title: string;
|
|
30
|
+
content: string;
|
|
31
|
+
/** 只保留评论正文;不包含评论者等用户信息。 */
|
|
32
|
+
comments?: string[];
|
|
33
|
+
} | {
|
|
34
|
+
source: "web";
|
|
35
|
+
id: string;
|
|
36
|
+
title: string;
|
|
37
|
+
url: string;
|
|
38
|
+
content: string;
|
|
39
|
+
snippet?: string;
|
|
40
|
+
publishedAt?: string;
|
|
41
|
+
siteName?: string;
|
|
42
|
+
};
|
|
43
|
+
export interface HybridSearchResponse {
|
|
44
|
+
version: 1;
|
|
45
|
+
query: string;
|
|
46
|
+
results: HybridSearchResult[];
|
|
47
|
+
truncated: boolean;
|
|
48
|
+
}
|
|
19
49
|
/** 小挂件类型目录里一个模块的声明 */
|
|
20
50
|
export interface WidgetModuleDecl {
|
|
21
51
|
description?: string;
|
|
@@ -44,7 +74,7 @@ export interface WidgetType {
|
|
|
44
74
|
* package.json(测试机上的 fitness-buddy 就是这样,它那份没有 version 字段)。常量会被打包器原样搬走。
|
|
45
75
|
* 发版时由 scripts/release.ts 连同 package.json 一起改,scripts/check-publish.ts 在 npm publish 前比对两处是否一致。
|
|
46
76
|
*/
|
|
47
|
-
export declare const RUNTIME_VERSION = "0.24.0-dev.
|
|
77
|
+
export declare const RUNTIME_VERSION = "0.24.0-dev.5";
|
|
48
78
|
export declare const MAX_DATASETS_PER_QUERY = 8;
|
|
49
79
|
export declare const MAX_DATA_ACCESS_RESPONSE_BYTES: number;
|
|
50
80
|
/** 不向模型暴露服务端原文、凭据或临时媒体地址。写入失败不自动重试。 */
|
|
@@ -53,8 +83,6 @@ export declare class PlatformRequestError extends Error {
|
|
|
53
83
|
constructor(status?: number);
|
|
54
84
|
}
|
|
55
85
|
export declare class MLBClient {
|
|
56
|
-
/** 商业化接口:只走平台鉴权通道,写入不自动重试,不读取任意回跳 URL。 */
|
|
57
|
-
serviceCall<T>(method: string, path: string, body?: unknown, signal?: AbortSignal): Promise<T>;
|
|
58
86
|
private readonly base;
|
|
59
87
|
private readonly token;
|
|
60
88
|
private readonly log;
|
|
@@ -148,6 +176,11 @@ export declare class MLBClient {
|
|
|
148
176
|
* 私聊不传 memberId;群聊传消息前缀里的稳定 memberId。非 2xx、坏 JSON 或响应缺 datasets 都 throw。
|
|
149
177
|
*/
|
|
150
178
|
queryDataAccess(convoKey: string, datasets: string[], memberId?: string, signal?: AbortSignal): Promise<DatasetAccessResult[]>;
|
|
179
|
+
/**
|
|
180
|
+
* POST /internal/v1/search/hybrid:在平台侧搜索小红书笔记、站外网页或两者。
|
|
181
|
+
* 上游地址与调优参数不交给搭子;平台回稳定的 source 判别结果。非 2xx、坏 JSON或坏协议都 throw。
|
|
182
|
+
*/
|
|
183
|
+
hybridSearch(convoKey: string, input: HybridSearchRequest, signal?: AbortSignal): Promise<HybridSearchResponse>;
|
|
151
184
|
claimProactiveRun(runId: string): Promise<ProactiveRun>;
|
|
152
185
|
subscribeProactive(sessionId: string, key: string, request: ProactiveSubscriptionRequest, signal?: AbortSignal): Promise<ProactiveSubscription>;
|
|
153
186
|
listProactive(sessionId: string, signal?: AbortSignal): Promise<ProactiveSubscription[]>;
|
|
@@ -159,6 +192,8 @@ export declare class MLBClient {
|
|
|
159
192
|
action: "failed";
|
|
160
193
|
reasonCode: string;
|
|
161
194
|
}): Promise<void>;
|
|
195
|
+
claimWidgetChangeRun(runId: string): Promise<WidgetChangeRun>;
|
|
196
|
+
finishWidgetChangeRun(runId: string, capabilityToken: string, outcome: "reply" | "silent" | "failed"): Promise<void>;
|
|
162
197
|
/** GET /internal/v1/system-prompt?convoKey=:这场会话的平台 system prompt(私聊与群各一版),拼在开发者的前面。非 2xx、响应体没有 systemPrompt 字符串都 throw */
|
|
163
198
|
systemPrompt(convoKey: string): Promise<string>;
|
|
164
199
|
/** memory 接口共用:2xx 回解析后的响应体;非 2xx throw 平台错误体的 error 字段(超配额、key 不合法都在这);网络错误、超时原样 throw */
|
|
@@ -171,11 +206,9 @@ export declare class EventStream {
|
|
|
171
206
|
private readonly token;
|
|
172
207
|
private readonly log;
|
|
173
208
|
private readonly onEvent;
|
|
174
|
-
private readonly onConnected;
|
|
175
209
|
private run;
|
|
176
210
|
constructor(options: MLBClientOptions & {
|
|
177
211
|
onEvent: (event: BuddyEvent) => void;
|
|
178
|
-
onConnected?: () => void;
|
|
179
212
|
});
|
|
180
213
|
/** 连上 GET /internal/v1/events 并一直保持;已经在跑就不重复起。不会 throw,连不上在后台退避重连 */
|
|
181
214
|
start(): void;
|
package/dist/mlbClient.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mlbClient.d.ts","sourceRoot":"","sources":["../src/mlbClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mlbClient.d.ts","sourceRoot":"","sources":["../src/mlbClient.ts"],"names":[],"mappings":"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"}
|
package/dist/mlbClient.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// 管:拼请求路径与 query、每个请求带 Authorization: Bearer 令牌、解响应体、把非 2xx 分成「拒绝」与「该重试」;
|
|
3
3
|
// GET /internal/v1/events 的 SSE 长连——连接时报上运行时版本号、手工切帧解析、过滤掉心跳与 data-access、校验 convoKey 与 runId、
|
|
4
4
|
// 断线退避重连、收到 replaced 或被平台以 4xx 拒绝就停下不再重连、交上层收尾退出。
|
|
5
|
+
// Widget 变更任务的领取、能力凭据提交与一次消费。
|
|
5
6
|
// 不管:会话纪律(什么时候拉、拉到怎么办)、消息形状转换、幂等键分配、模型调用——那些在 conversation/ 目录 / model.ts。
|
|
6
7
|
import { errorText } from "./log.js";
|
|
7
8
|
/**
|
|
@@ -10,7 +11,7 @@ import { errorText } from "./log.js";
|
|
|
10
11
|
* package.json(测试机上的 fitness-buddy 就是这样,它那份没有 version 字段)。常量会被打包器原样搬走。
|
|
11
12
|
* 发版时由 scripts/release.ts 连同 package.json 一起改,scripts/check-publish.ts 在 npm publish 前比对两处是否一致。
|
|
12
13
|
*/
|
|
13
|
-
export const RUNTIME_VERSION = "0.24.0-dev.
|
|
14
|
+
export const RUNTIME_VERSION = "0.24.0-dev.5";
|
|
14
15
|
/** 除事件流以外的请求都限时 30 秒:卡死的请求超时后按网络错误处理,调用方决定重不重发 */
|
|
15
16
|
const REQUEST_TIMEOUT_MS = 30_000;
|
|
16
17
|
export const MAX_DATASETS_PER_QUERY = 8;
|
|
@@ -34,26 +35,6 @@ export class PlatformRequestError extends Error {
|
|
|
34
35
|
}
|
|
35
36
|
}
|
|
36
37
|
export class MLBClient {
|
|
37
|
-
/** 商业化接口:只走平台鉴权通道,写入不自动重试,不读取任意回跳 URL。 */
|
|
38
|
-
async serviceCall(method, path, body, signal) {
|
|
39
|
-
if (!/^\/(services|service-offers|service-credentials|service-events)(?:[/?]|$)/u.test(path))
|
|
40
|
-
throw new Error("无效的服务接口");
|
|
41
|
-
const timed = AbortSignal.any([AbortSignal.timeout(REQUEST_TIMEOUT_MS), ...(signal ? [signal] : [])]);
|
|
42
|
-
try {
|
|
43
|
-
const response = await fetch(`${this.base}${path}`, { method, headers: { Authorization: `Bearer ${this.token}`, "Content-Type": "application/json" }, body: body === undefined ? undefined : JSON.stringify(body), signal: timed, redirect: "error" });
|
|
44
|
-
if (!response.ok) {
|
|
45
|
-
await response.body?.cancel();
|
|
46
|
-
throw new PlatformRequestError(response.status);
|
|
47
|
-
}
|
|
48
|
-
const bytes = await readLimited(response, 1024 * 1024);
|
|
49
|
-
timed.throwIfAborted();
|
|
50
|
-
return JSON.parse(Buffer.from(bytes).toString("utf8"));
|
|
51
|
-
}
|
|
52
|
-
catch (error) {
|
|
53
|
-
signal?.throwIfAborted();
|
|
54
|
-
throw error instanceof PlatformRequestError ? error : new PlatformRequestError();
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
38
|
base;
|
|
58
39
|
token;
|
|
59
40
|
log;
|
|
@@ -256,6 +237,27 @@ export class MLBClient {
|
|
|
256
237
|
throw new Error("DataAccess 响应体里没有 datasets 数组");
|
|
257
238
|
return result;
|
|
258
239
|
}
|
|
240
|
+
/**
|
|
241
|
+
* POST /internal/v1/search/hybrid:在平台侧搜索小红书笔记、站外网页或两者。
|
|
242
|
+
* 上游地址与调优参数不交给搭子;平台回稳定的 source 判别结果。非 2xx、坏 JSON或坏协议都 throw。
|
|
243
|
+
*/
|
|
244
|
+
async hybridSearch(convoKey, input, signal) {
|
|
245
|
+
const reply = await this.call("POST", "/search/hybrid", { convoKey, ...input }, signal);
|
|
246
|
+
if (!reply.ok)
|
|
247
|
+
throw new PlatformRequestError(reply.status);
|
|
248
|
+
if (Buffer.byteLength(reply.text, "utf8") > 64 * 1024)
|
|
249
|
+
throw new Error("混合搜索响应超过 65536 字节");
|
|
250
|
+
let parsed;
|
|
251
|
+
try {
|
|
252
|
+
parsed = JSON.parse(reply.text);
|
|
253
|
+
}
|
|
254
|
+
catch {
|
|
255
|
+
throw new Error("混合搜索响应体不是 JSON");
|
|
256
|
+
}
|
|
257
|
+
if (!validHybridSearchResponse(parsed))
|
|
258
|
+
throw new Error("混合搜索响应格式无效");
|
|
259
|
+
return parsed;
|
|
260
|
+
}
|
|
259
261
|
async claimProactiveRun(runId) {
|
|
260
262
|
const reply = await this.call("GET", `/proactive/runs/${seg(runId)}`);
|
|
261
263
|
if (!reply.ok)
|
|
@@ -309,6 +311,17 @@ export class MLBClient {
|
|
|
309
311
|
if (!reply.ok)
|
|
310
312
|
throw new PlatformRequestError(reply.status);
|
|
311
313
|
}
|
|
314
|
+
async claimWidgetChangeRun(runId) {
|
|
315
|
+
const reply = await this.call("GET", `/widget-change/runs/${seg(runId)}`);
|
|
316
|
+
if (!reply.ok)
|
|
317
|
+
throw new PlatformRequestError(reply.status);
|
|
318
|
+
return JSON.parse(reply.text);
|
|
319
|
+
}
|
|
320
|
+
async finishWidgetChangeRun(runId, capabilityToken, outcome) {
|
|
321
|
+
const reply = await this.call("POST", `/widget-change/runs/${seg(runId)}/result`, { capabilityToken, outcome });
|
|
322
|
+
if (!reply.ok)
|
|
323
|
+
throw new PlatformRequestError(reply.status);
|
|
324
|
+
}
|
|
312
325
|
/** GET /internal/v1/system-prompt?convoKey=:这场会话的平台 system prompt(私聊与群各一版),拼在开发者的前面。非 2xx、响应体没有 systemPrompt 字符串都 throw */
|
|
313
326
|
async systemPrompt(convoKey) {
|
|
314
327
|
const reply = await this.call("GET", `/system-prompt?${new URLSearchParams({ convoKey })}`);
|
|
@@ -351,6 +364,36 @@ function timestampsOf(text) {
|
|
|
351
364
|
return [];
|
|
352
365
|
}
|
|
353
366
|
}
|
|
367
|
+
function validHybridSearchResponse(value) {
|
|
368
|
+
if (typeof value !== "object" || value === null || Array.isArray(value))
|
|
369
|
+
return false;
|
|
370
|
+
const response = value;
|
|
371
|
+
if (response.version !== 1 || typeof response.query !== "string" || typeof response.truncated !== "boolean" || !Array.isArray(response.results))
|
|
372
|
+
return false;
|
|
373
|
+
return response.results.every((item) => {
|
|
374
|
+
if (typeof item !== "object" || item === null || Array.isArray(item))
|
|
375
|
+
return false;
|
|
376
|
+
const result = item;
|
|
377
|
+
if (result.source === "xhs") {
|
|
378
|
+
if (!onlyKeys(result, ["source", "title", "content", "comments"]))
|
|
379
|
+
return false;
|
|
380
|
+
return typeof result.title === "string" && typeof result.content === "string"
|
|
381
|
+
&& (result.comments === undefined || (Array.isArray(result.comments) && result.comments.every((comment) => typeof comment === "string")));
|
|
382
|
+
}
|
|
383
|
+
if (result.source === "web") {
|
|
384
|
+
if (!onlyKeys(result, ["source", "id", "title", "url", "content", "snippet", "publishedAt", "siteName"]))
|
|
385
|
+
return false;
|
|
386
|
+
return typeof result.id === "string" && typeof result.title === "string"
|
|
387
|
+
&& typeof result.url === "string" && typeof result.content === "string"
|
|
388
|
+
&& [result.snippet, result.publishedAt, result.siteName].every((field) => field === undefined || typeof field === "string");
|
|
389
|
+
}
|
|
390
|
+
return false;
|
|
391
|
+
});
|
|
392
|
+
}
|
|
393
|
+
function onlyKeys(value, allowed) {
|
|
394
|
+
const keys = new Set(allowed);
|
|
395
|
+
return Object.keys(value).every((key) => keys.has(key));
|
|
396
|
+
}
|
|
354
397
|
function seg(value) {
|
|
355
398
|
return encodeURIComponent(value);
|
|
356
399
|
}
|
|
@@ -403,14 +446,12 @@ export class EventStream {
|
|
|
403
446
|
token;
|
|
404
447
|
log;
|
|
405
448
|
onEvent;
|
|
406
|
-
onConnected;
|
|
407
449
|
run;
|
|
408
450
|
constructor(options) {
|
|
409
451
|
this.base = baseUrlOf(options.gatewayUrl);
|
|
410
452
|
this.token = options.token;
|
|
411
453
|
this.log = options.log;
|
|
412
454
|
this.onEvent = options.onEvent;
|
|
413
|
-
this.onConnected = options.onConnected;
|
|
414
455
|
}
|
|
415
456
|
/** 连上 GET /internal/v1/events 并一直保持;已经在跑就不重复起。不会 throw,连不上在后台退避重连 */
|
|
416
457
|
start() {
|
|
@@ -482,7 +523,6 @@ export class EventStream {
|
|
|
482
523
|
}
|
|
483
524
|
attempt.opened = true;
|
|
484
525
|
this.log.info("事件流已连上");
|
|
485
|
-
this.onConnected?.();
|
|
486
526
|
const reader = res.body.getReader();
|
|
487
527
|
const decoder = new TextDecoder();
|
|
488
528
|
let buffer = "";
|
|
@@ -540,16 +580,7 @@ export class EventStream {
|
|
|
540
580
|
}
|
|
541
581
|
return;
|
|
542
582
|
}
|
|
543
|
-
if (name
|
|
544
|
-
try {
|
|
545
|
-
this.onEvent({ type: "commerce" });
|
|
546
|
-
}
|
|
547
|
-
catch (e) {
|
|
548
|
-
this.log.warn("服务事件处理失败", { error: errorText(e) });
|
|
549
|
-
}
|
|
550
|
-
return;
|
|
551
|
-
}
|
|
552
|
-
if (name !== "message" && name !== "delete" && name !== "welcome" && name !== "proactive") {
|
|
583
|
+
if (name !== "message" && name !== "delete" && name !== "welcome" && name !== "proactive" && name !== "widget-change") {
|
|
553
584
|
this.log.warn("事件流收到不认识的事件,丢弃", { event: name });
|
|
554
585
|
return;
|
|
555
586
|
}
|
|
@@ -575,6 +606,20 @@ export class EventStream {
|
|
|
575
606
|
}
|
|
576
607
|
return;
|
|
577
608
|
}
|
|
609
|
+
if (name === "widget-change") {
|
|
610
|
+
const object = typeof payload === "object" && payload !== null ? payload : {};
|
|
611
|
+
if (typeof object.notificationId !== "string" || !/^wcn_[a-f0-9]{24}$/.test(object.notificationId) || typeof object.convoKey !== "string" || !CONVO_KEY.test(object.convoKey)) {
|
|
612
|
+
this.log.warn("widget-change 事件不合法,丢弃");
|
|
613
|
+
return;
|
|
614
|
+
}
|
|
615
|
+
try {
|
|
616
|
+
this.onEvent({ type: "widget-change", runId: object.notificationId, convoKey: object.convoKey });
|
|
617
|
+
}
|
|
618
|
+
catch (e) {
|
|
619
|
+
this.log.warn("onEvent 抛错", { event: name, error: errorText(e) });
|
|
620
|
+
}
|
|
621
|
+
return;
|
|
622
|
+
}
|
|
578
623
|
const convoKey = typeof payload === "object" && payload !== null ? payload.convoKey : undefined;
|
|
579
624
|
if (typeof convoKey !== "string" || !CONVO_KEY.test(convoKey)) {
|
|
580
625
|
this.log.warn("事件里的 convoKey 不合法,丢弃", { event: name, convoKey });
|
package/dist/mlbClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mlbClient.js","sourceRoot":"","sources":["../src/mlbClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mlbClient.js","sourceRoot":"","sources":["../src/mlbClient.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAc,YAAY,EAAe,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAwF3F,qBAAa,WAAW;IACvB,iDAAiD;WACpC,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC;CA8KnE"}
|
package/dist/server.js
CHANGED
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
// 管:读搭子 id(工程 package.json 的 buddyId 字段)与令牌(环境变量 BUDDY_TOKEN),缺一个就启动失败、定网关地址(缺省连 ecs-test,开发者不用填,设了环境变量 MLB_GATEWAY_URL 才覆盖)、
|
|
3
3
|
// 建日志 / MLBClient、先连上事件流再做启动准备(注册 data-access.json 声明、读一次 resources/ 目录里的资料、把 widgets/ 目录里的小挂件逐个上传平台,任一上传失败都启动失败;
|
|
4
4
|
// 准备做完之前收到的事件先攒着)、按会话键管一张 ConversationHandle 表、
|
|
5
|
-
// 把事件流的 message / welcome / delete
|
|
5
|
+
// 把事件流的 message / welcome / delete / widget-change 分发给对应会话,领取并提交一次性 Widget 变更任务、收到 replaced(同一身份有新的进程连上了平台)或 rejected(平台以 4xx 拒了这条事件流)就收尾并退出进程、
|
|
6
6
|
// 每 60 秒淘汰不忙且 30 分钟没消息的会话(淘汰前历史超过触发线的拍快照、回收后在后台压缩写回,见 conversation/compaction.ts)、stop 时把一切收掉。
|
|
7
|
-
//
|
|
8
|
-
// 不管:会话里的纪律(conversation/ 目录)、协议细节(mlbClient.ts)、服务履约判断。没有 HTTP 面、没有会话列表。
|
|
7
|
+
// 不管:会话里的纪律(conversation/ 目录)、协议细节(mlbClient.ts)。没有 HTTP 面、没有会话列表。
|
|
9
8
|
import { existsSync, readFileSync } from "node:fs";
|
|
10
9
|
import { dirname, join, resolve } from "node:path";
|
|
11
10
|
import { compactConversation } from "./conversation/compaction.js";
|
|
@@ -16,7 +15,6 @@ import { streamFn } from "./model.js";
|
|
|
16
15
|
import { loadResources } from "./tools/resource.js";
|
|
17
16
|
import { loadWidgets } from "./tools/widget.js";
|
|
18
17
|
import { DATA_ACCESS_CONFIG_FILE, loadDataAccessRequirements } from "./dataAccessRequirements.js";
|
|
19
|
-
import { loadServices, SERVICE_CONFIG_FILE } from "./services/manifest.js";
|
|
20
18
|
/** 缺省连的网关:测试环境 ecs-test。环境变量 MLB_GATEWAY_URL 有值时以它为准 */
|
|
21
19
|
const DEFAULT_GATEWAY_URL = "http://47.116.168.81:8788";
|
|
22
20
|
/** 资料目录:搭子目录下的 resources/(搭子目录怎么定见 buddyDir) */
|
|
@@ -119,6 +117,7 @@ export class BuddyServer {
|
|
|
119
117
|
throw new Error("缺少环境变量 BUDDY_TOKEN:搭子令牌,平台托管时自动注入,本地写在工程的 .env 里");
|
|
120
118
|
const gatewayUrl = process.env.MLB_GATEWAY_URL || DEFAULT_GATEWAY_URL;
|
|
121
119
|
const log = createLogger(buddyId);
|
|
120
|
+
log.warn("conversation.widget.delete 与 conversation.tools.widget_delete 已废弃:平台不再允许删除整个 Widget,请改用记录级 deleteRecord / widget_delete_record");
|
|
122
121
|
const client = new MLBClient({ gatewayUrl, token, log });
|
|
123
122
|
// 事件流先连上、再做准备:平台立刻知道这只搭子活着,也立刻拿到连接时报的运行时版本号——版本不合就在这一步被
|
|
124
123
|
// 4xx 拒掉,一份声明都不会传上去。准备做完之前来的事件先攒着:那时 widgetTypes / resources 还没备齐,
|
|
@@ -134,10 +133,7 @@ export class BuddyServer {
|
|
|
134
133
|
else
|
|
135
134
|
pending.push(event);
|
|
136
135
|
};
|
|
137
|
-
|
|
138
|
-
let connectedBeforeReady = false;
|
|
139
|
-
let onConnected = () => { connectedBeforeReady = true; };
|
|
140
|
-
const stream = new EventStream({ gatewayUrl, token, log, onEvent: (event) => dispatch(event), onConnected: () => onConnected() });
|
|
136
|
+
const stream = new EventStream({ gatewayUrl, token, log, onEvent: (event) => dispatch(event) });
|
|
141
137
|
stream.start();
|
|
142
138
|
const { dataRequirements, resources, widgetTypes } = await prepare(dir, client, log).catch((e) => {
|
|
143
139
|
// 准备失败要连流一起停:留下一条活着的连接,进程就退不掉——start 抛出后搭子工程的 start.mjs 拿不到
|
|
@@ -150,21 +146,10 @@ export class BuddyServer {
|
|
|
150
146
|
log.error(`${fatal},退出`);
|
|
151
147
|
process.exit(1);
|
|
152
148
|
}
|
|
153
|
-
const hasServiceFile = existsSync(join(dir, SERVICE_CONFIG_FILE));
|
|
154
|
-
let services;
|
|
155
|
-
try {
|
|
156
|
-
services = loadServices(dir);
|
|
157
|
-
}
|
|
158
|
-
catch (error) {
|
|
159
|
-
log.error("服务声明读取失败,不影响搭子启动;本次声明未提交", { file: SERVICE_CONFIG_FILE, error: errorText(error) });
|
|
160
|
-
}
|
|
161
149
|
const conversations = new Map();
|
|
162
150
|
const deleted = new Set();
|
|
163
151
|
const proactiveTasks = new Map();
|
|
164
|
-
|
|
165
|
-
let commerceAgain = false;
|
|
166
|
-
let serviceSubmission;
|
|
167
|
-
const submissionAbort = new AbortController();
|
|
152
|
+
const widgetChangeTasks = new Map();
|
|
168
153
|
let stopped = false;
|
|
169
154
|
/** 拿到这个键的会话;没有或已退役就新起一场 */
|
|
170
155
|
const conversationOf = (key) => {
|
|
@@ -200,48 +185,9 @@ export class BuddyServer {
|
|
|
200
185
|
log.info("会话退役", { convoKey: key, reason });
|
|
201
186
|
void conversation.close();
|
|
202
187
|
};
|
|
203
|
-
const drainCommerce = () => {
|
|
204
|
-
if (stopped)
|
|
205
|
-
return;
|
|
206
|
-
if (commerceTask) {
|
|
207
|
-
commerceAgain = true;
|
|
208
|
-
return;
|
|
209
|
-
}
|
|
210
|
-
commerceTask = (async () => {
|
|
211
|
-
do {
|
|
212
|
-
commerceAgain = false;
|
|
213
|
-
const response = await client.serviceCall("GET", "/service-events");
|
|
214
|
-
let acknowledged = 0;
|
|
215
|
-
for (const event of response.events) {
|
|
216
|
-
if (stopped)
|
|
217
|
-
return;
|
|
218
|
-
if (event.type !== "credential_created" && event.type !== "credential_changed")
|
|
219
|
-
continue;
|
|
220
|
-
try {
|
|
221
|
-
// 服务事件只恢复私聊;误投群聊的事件确认后丢弃,不建立群聊付费上下文。
|
|
222
|
-
if (event.convoKey.startsWith("p_") && !deleted.has(event.convoKey))
|
|
223
|
-
await conversationOf(event.convoKey).handleServiceEvent(event);
|
|
224
|
-
await client.serviceCall("POST", `/service-events/${encodeURIComponent(event.eventId)}/ack`, {});
|
|
225
|
-
acknowledged++;
|
|
226
|
-
}
|
|
227
|
-
catch (error) {
|
|
228
|
-
// 保留失败事件供心跳重试,单个创作者回调失败不阻塞其他用户。
|
|
229
|
-
log.warn("服务事件暂未确认", { eventId: event.eventId, error: errorText(error) });
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
if (response.events.length >= 100 && acknowledged > 0)
|
|
233
|
-
commerceAgain = true;
|
|
234
|
-
} while (commerceAgain && !stopped);
|
|
235
|
-
})().catch(error => log.warn("服务事件未完成,等待重放", { error: errorText(error) }))
|
|
236
|
-
.finally(() => { commerceTask = undefined; });
|
|
237
|
-
};
|
|
238
188
|
const onEvent = (event) => {
|
|
239
189
|
if (stopped)
|
|
240
190
|
return;
|
|
241
|
-
if (event.type === "commerce") {
|
|
242
|
-
drainCommerce();
|
|
243
|
-
return;
|
|
244
|
-
}
|
|
245
191
|
if (event.type === "replaced") {
|
|
246
192
|
// 同一身份只能有一个进程连着平台。被顶掉的进程要退出,不能只断事件流留着:
|
|
247
193
|
// 托管进程还活着,平台就不会重拉它记着的那一个;本地多开的进程由开发者决定留哪个
|
|
@@ -279,6 +225,21 @@ export class BuddyServer {
|
|
|
279
225
|
proactiveTasks.set(event.runId, task);
|
|
280
226
|
return;
|
|
281
227
|
}
|
|
228
|
+
if (event.type === "widget-change") {
|
|
229
|
+
if (widgetChangeTasks.has(event.runId))
|
|
230
|
+
return;
|
|
231
|
+
const task = (async () => {
|
|
232
|
+
const run = await client.claimWidgetChangeRun(event.runId);
|
|
233
|
+
if (stopped || deleted.has(run.sessionId)) {
|
|
234
|
+
await client.finishWidgetChangeRun(run.runId, run.capabilityToken, "failed");
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
const outcome = await conversationOf(run.sessionId).runWidgetChange(run);
|
|
238
|
+
await client.finishWidgetChangeRun(run.runId, run.capabilityToken, outcome);
|
|
239
|
+
})().catch(() => log.warn("Widget 变更 Run 未完成,等待平台恢复", { runId: event.runId })).finally(() => widgetChangeTasks.delete(event.runId));
|
|
240
|
+
widgetChangeTasks.set(event.runId, task);
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
282
243
|
if (event.type === "delete") {
|
|
283
244
|
deleted.add(event.convoKey);
|
|
284
245
|
dropConversation(event.convoKey, "delete");
|
|
@@ -316,7 +277,6 @@ export class BuddyServer {
|
|
|
316
277
|
const stop = async () => {
|
|
317
278
|
stopped = true;
|
|
318
279
|
stream.stop();
|
|
319
|
-
submissionAbort.abort();
|
|
320
280
|
clearInterval(sweeper);
|
|
321
281
|
for (const abort of compactions.values())
|
|
322
282
|
abort.abort();
|
|
@@ -324,29 +284,13 @@ export class BuddyServer {
|
|
|
324
284
|
conversations.clear();
|
|
325
285
|
await Promise.all(closing);
|
|
326
286
|
await Promise.all(proactiveTasks.values());
|
|
327
|
-
await
|
|
328
|
-
await serviceSubmission;
|
|
287
|
+
await Promise.all(widgetChangeTasks.values());
|
|
329
288
|
log.info("搭子已停止", { buddyId });
|
|
330
289
|
};
|
|
331
290
|
// 机器搭好了:事件改为直接处理,准备期间攒下的按到达顺序补上
|
|
332
|
-
onConnected = () => {
|
|
333
|
-
for (const conversation of conversations.values())
|
|
334
|
-
conversation.invalidateCredential();
|
|
335
|
-
if (hasServiceFile)
|
|
336
|
-
drainCommerce();
|
|
337
|
-
};
|
|
338
291
|
dispatch = onEvent;
|
|
339
292
|
for (const event of pending.splice(0))
|
|
340
293
|
onEvent(event);
|
|
341
|
-
if (connectedBeforeReady)
|
|
342
|
-
onConnected();
|
|
343
|
-
if (services !== undefined) {
|
|
344
|
-
serviceSubmission = client.serviceCall("PUT", "/services", services, submissionAbort.signal)
|
|
345
|
-
.then(() => { if (!stopped)
|
|
346
|
-
log.info("服务声明已提交,需平台审核后可售卖"); })
|
|
347
|
-
.catch(error => { if (!stopped)
|
|
348
|
-
log.error("服务声明提交失败,不影响搭子运行;已审核版本与已购凭证保持不变", { error: errorText(error) }); });
|
|
349
|
-
}
|
|
350
294
|
log.info("搭子已启动", { buddyId, gatewayUrl });
|
|
351
295
|
return { stop };
|
|
352
296
|
}
|