@fangyb/ahchat-bridge 0.1.43 → 0.1.45
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/dist/cli.cjs +32899 -18029
- package/dist/feedbackWorkerCli.cjs +122 -0
- package/dist/index.js +25899 -11269
- package/dist/seedanceMcpCli.cjs +37 -5
- package/dist/seedreamMcpCli.cjs +2411 -94
- package/package.json +1 -1
|
@@ -5884,6 +5884,28 @@ init_cjs_shims();
|
|
|
5884
5884
|
// ../shared/src/types/index.ts
|
|
5885
5885
|
init_cjs_shims();
|
|
5886
5886
|
|
|
5887
|
+
// ../shared/src/types/backgroundTask.ts
|
|
5888
|
+
init_cjs_shims();
|
|
5889
|
+
var BACKGROUND_TASK_STATUSES = [
|
|
5890
|
+
"queued",
|
|
5891
|
+
"running",
|
|
5892
|
+
"completed",
|
|
5893
|
+
"failed",
|
|
5894
|
+
"interrupted"
|
|
5895
|
+
];
|
|
5896
|
+
var BACKGROUND_TASK_KINDS = [
|
|
5897
|
+
"external_recoverable",
|
|
5898
|
+
"local_ephemeral"
|
|
5899
|
+
];
|
|
5900
|
+
var BACKGROUND_TASK_RUNNERS = [
|
|
5901
|
+
"seedance",
|
|
5902
|
+
"seedream",
|
|
5903
|
+
"mcp_tool_poll",
|
|
5904
|
+
"generic_external_poll",
|
|
5905
|
+
"local_process",
|
|
5906
|
+
"agent_subsession"
|
|
5907
|
+
];
|
|
5908
|
+
|
|
5887
5909
|
// ../shared/src/types/usage.ts
|
|
5888
5910
|
init_cjs_shims();
|
|
5889
5911
|
|
|
@@ -5969,6 +5991,18 @@ function assertOptionalNumberPayloadField(type, payload, field) {
|
|
|
5969
5991
|
if (payload[field] === void 0) return;
|
|
5970
5992
|
assertNumberPayloadField(type, payload, field);
|
|
5971
5993
|
}
|
|
5994
|
+
function assertOptionalNullableNumberPayloadField(type, payload, field) {
|
|
5995
|
+
if (payload[field] === void 0 || payload[field] === null) return;
|
|
5996
|
+
assertNumberPayloadField(type, payload, field);
|
|
5997
|
+
}
|
|
5998
|
+
function assertOptionalStringPayloadField(type, payload, field) {
|
|
5999
|
+
if (payload[field] === void 0) return;
|
|
6000
|
+
assertStringPayloadField(type, payload, field);
|
|
6001
|
+
}
|
|
6002
|
+
function assertOptionalNullableStringPayloadField(type, payload, field) {
|
|
6003
|
+
if (payload[field] === void 0 || payload[field] === null) return;
|
|
6004
|
+
assertStringPayloadField(type, payload, field);
|
|
6005
|
+
}
|
|
5972
6006
|
function assertNullableStringPayloadField(type, payload, field) {
|
|
5973
6007
|
if (payload[field] === null) return;
|
|
5974
6008
|
assertStringPayloadField(type, payload, field);
|
|
@@ -6062,6 +6096,18 @@ function validateWSMessageShape(msg) {
|
|
|
6062
6096
|
]);
|
|
6063
6097
|
assertArrayPayloadField(type, payload, "contentBlocks");
|
|
6064
6098
|
assertRecordPayloadField(type, payload, "metadata");
|
|
6099
|
+
assertOptionalStringPayloadField(type, payload, "replyToId");
|
|
6100
|
+
return;
|
|
6101
|
+
}
|
|
6102
|
+
case "agent:workdir_file_attachment": {
|
|
6103
|
+
assertPayloadRecord(type, payload);
|
|
6104
|
+
validateRequiredStrings(type, payload, ["ackId", "agentId", "conversationId", "filePath", "traceId"]);
|
|
6105
|
+
if (payload.toolUseId !== void 0) assertStringPayloadField(type, payload, "toolUseId");
|
|
6106
|
+
if (payload.relativePath !== void 0) assertStringPayloadField(type, payload, "relativePath");
|
|
6107
|
+
if (payload.fileName !== void 0) assertStringPayloadField(type, payload, "fileName");
|
|
6108
|
+
if (payload.mimeType !== void 0) assertStringPayloadField(type, payload, "mimeType");
|
|
6109
|
+
if (payload.size !== void 0) assertOptionalNumberPayloadField(type, payload, "size");
|
|
6110
|
+
assertOptionalStringPayloadOneOf(type, payload, "attachmentSource", ["generated_asset_auto", "agent_explicit_send"]);
|
|
6065
6111
|
return;
|
|
6066
6112
|
}
|
|
6067
6113
|
case "agent:workdir_file_attachment": {
|
|
@@ -6090,6 +6136,9 @@ function validateWSMessageShape(msg) {
|
|
|
6090
6136
|
if ("workdirSignals" in payload && payload.workdirSignals !== void 0) {
|
|
6091
6137
|
assertWorkdirSignalsPayloadField(type, payload, "workdirSignals");
|
|
6092
6138
|
}
|
|
6139
|
+
if ("metadata" in payload && payload.metadata !== void 0) {
|
|
6140
|
+
assertRecordPayloadField(type, payload, "metadata");
|
|
6141
|
+
}
|
|
6093
6142
|
return;
|
|
6094
6143
|
}
|
|
6095
6144
|
case "agent:turn_complete": {
|
|
@@ -6127,6 +6176,68 @@ function validateWSMessageShape(msg) {
|
|
|
6127
6176
|
assertNullableStringPayloadField(type, payload, "canonicalAddress");
|
|
6128
6177
|
return;
|
|
6129
6178
|
}
|
|
6179
|
+
case "background_task:dispatch": {
|
|
6180
|
+
assertPayloadRecord(type, payload);
|
|
6181
|
+
validateRequiredStrings(type, payload, [
|
|
6182
|
+
"taskId",
|
|
6183
|
+
"title",
|
|
6184
|
+
"description",
|
|
6185
|
+
"kind",
|
|
6186
|
+
"runner",
|
|
6187
|
+
"status",
|
|
6188
|
+
"agentId",
|
|
6189
|
+
"conversationId",
|
|
6190
|
+
"sourceMessageId",
|
|
6191
|
+
"scopeKey",
|
|
6192
|
+
"createdAt",
|
|
6193
|
+
"updatedAt"
|
|
6194
|
+
]);
|
|
6195
|
+
assertStringPayloadOneOf(type, payload, "kind", BACKGROUND_TASK_KINDS);
|
|
6196
|
+
assertStringPayloadOneOf(type, payload, "runner", BACKGROUND_TASK_RUNNERS);
|
|
6197
|
+
assertStringPayloadOneOf(type, payload, "status", BACKGROUND_TASK_STATUSES);
|
|
6198
|
+
assertOptionalNullableStringPayloadField(type, payload, "groupId");
|
|
6199
|
+
assertOptionalNullableStringPayloadField(type, payload, "bridgeKey");
|
|
6200
|
+
assertOptionalNullableStringPayloadField(type, payload, "externalTaskId");
|
|
6201
|
+
assertOptionalNullableStringPayloadField(type, payload, "inputJson");
|
|
6202
|
+
assertOptionalNullableStringPayloadField(type, payload, "traceId");
|
|
6203
|
+
return;
|
|
6204
|
+
}
|
|
6205
|
+
case "background_task:ack": {
|
|
6206
|
+
assertPayloadRecord(type, payload);
|
|
6207
|
+
validateRequiredStrings(type, payload, ["taskId", "agentId", "traceId", "receivedAt"]);
|
|
6208
|
+
return;
|
|
6209
|
+
}
|
|
6210
|
+
case "background_task:status": {
|
|
6211
|
+
assertPayloadRecord(type, payload);
|
|
6212
|
+
validateRequiredStrings(type, payload, [
|
|
6213
|
+
"taskId",
|
|
6214
|
+
"status",
|
|
6215
|
+
"agentId",
|
|
6216
|
+
"conversationId",
|
|
6217
|
+
"traceId",
|
|
6218
|
+
"updatedAt"
|
|
6219
|
+
]);
|
|
6220
|
+
assertStringPayloadOneOf(type, payload, "status", BACKGROUND_TASK_STATUSES);
|
|
6221
|
+
assertOptionalNullableStringPayloadField(type, payload, "groupId");
|
|
6222
|
+
assertOptionalNullableStringPayloadField(type, payload, "outputSummary");
|
|
6223
|
+
assertOptionalNullableStringPayloadField(type, payload, "outputDetail");
|
|
6224
|
+
assertOptionalNullableStringPayloadField(type, payload, "errorMessage");
|
|
6225
|
+
assertOptionalNullableStringPayloadField(type, payload, "externalTaskId");
|
|
6226
|
+
return;
|
|
6227
|
+
}
|
|
6228
|
+
case "background_task:changed": {
|
|
6229
|
+
assertPayloadRecord(type, payload);
|
|
6230
|
+
assertRecordPayloadField(type, payload, "task");
|
|
6231
|
+
const task = payload.task;
|
|
6232
|
+
validateRequiredStrings(type, task, ["id", "title", "status", "agentId", "createdAt", "updatedAt"]);
|
|
6233
|
+
assertStringPayloadOneOf(type, task, "status", BACKGROUND_TASK_STATUSES);
|
|
6234
|
+
assertOptionalStringPayloadField(type, task, "agentName");
|
|
6235
|
+
assertOptionalNullableNumberPayloadField(type, task, "durationMs");
|
|
6236
|
+
assertOptionalNullableStringPayloadField(type, task, "startedAt");
|
|
6237
|
+
assertOptionalNullableStringPayloadField(type, task, "completedAt");
|
|
6238
|
+
assertOptionalNullableStringPayloadField(type, payload, "traceId");
|
|
6239
|
+
return;
|
|
6240
|
+
}
|
|
6130
6241
|
default:
|
|
6131
6242
|
return;
|
|
6132
6243
|
}
|
|
@@ -7724,6 +7835,8 @@ var OUTBOX_CRITICAL_TYPES = /* @__PURE__ */ new Set([
|
|
|
7724
7835
|
"artifact:created",
|
|
7725
7836
|
"agent:todos_update",
|
|
7726
7837
|
"feedback:analysis_result",
|
|
7838
|
+
"background_task:ack",
|
|
7839
|
+
"background_task:status",
|
|
7727
7840
|
"bridge:resume_reply_session_response"
|
|
7728
7841
|
]);
|
|
7729
7842
|
var OUTBOX_MAX_ENTRIES = 300;
|
|
@@ -7965,6 +8078,15 @@ var ServerConnector = class {
|
|
|
7965
8078
|
});
|
|
7966
8079
|
return;
|
|
7967
8080
|
}
|
|
8081
|
+
case "background_task:dispatch":
|
|
8082
|
+
case "background_task:changed": {
|
|
8083
|
+
if (this.onServerPush) {
|
|
8084
|
+
void Promise.resolve(this.onServerPush(msg)).catch((err) => {
|
|
8085
|
+
logger2.error("onServerPush handler failed", { error: err, type: msg.type });
|
|
8086
|
+
});
|
|
8087
|
+
}
|
|
8088
|
+
return;
|
|
8089
|
+
}
|
|
7968
8090
|
case "session:terminated": {
|
|
7969
8091
|
logger2.warn("Session terminated by server, exiting bridge process", {
|
|
7970
8092
|
reason: msg.payload.reason
|