
















@@ -28,6 +28,7 @@ const RESULT_ENVELOPE_KEYS = [
2828const BROADCAST_SEND_ENVELOPE_KEYS = ["payload", "result", "sendResult", "toolResult"];
2929const PARTIAL_DELIVERY_ENVELOPE_KEYS = [...RESULT_ENVELOPE_KEYS, "error", "cause"];
3030const SESSIONS_SEND_DELIVERY_STATUSES = new Set(["accepted", "ok"]);
31+const BARE_OK_DELIVERY_STATUS = "ok";
3132function asRecord(value: unknown): Record<string, unknown> {
3233return value && typeof value === "object" && !Array.isArray(value)
3334 ? (value as Record<string, unknown>)
@@ -53,6 +54,14 @@ function normalizeStatus(value: unknown): string | undefined {
5354return typeof value === "string" ? value.trim().toLowerCase() : undefined;
5455}
555657+function isBareOkDeliveryStatus(value: unknown): boolean {
58+return normalizeStatus(value) === BARE_OK_DELIVERY_STATUS;
59+}
60+61+function isBareSentDeliveryStatus(value: unknown): boolean {
62+return normalizeStatus(value) === SENT_DELIVERY_STATUS;
63+}
64+5665function parseJsonRecord(value: string): Record<string, unknown> | undefined {
5766try {
5867const parsed = JSON.parse(value);
@@ -125,6 +134,9 @@ function deliveryEnvelopeHasCreatedConversationId(value: unknown, depth = 0): bo
125134}
126135127136function deliveryEnvelopeIndicatesOk(value: unknown, depth = 0): boolean {
137+if (isBareOkDeliveryStatus(value)) {
138+return true;
139+}
128140if (!value || typeof value !== "object" || depth > 4) {
129141return false;
130142}
@@ -140,6 +152,9 @@ function deliveryEnvelopeIndicatesOk(value: unknown, depth = 0): boolean {
140152if (parsed && deliveryEnvelopeIndicatesOk(parsed, depth + 1)) {
141153return true;
142154}
155+if (isBareOkDeliveryStatus(record.text)) {
156+return true;
157+}
143158}
144159const content = record.content;
145160if (
@@ -328,6 +343,9 @@ function deliveryEnvelopeIndicatesDryRun(value: unknown, depth = 0): boolean {
328343}
329344330345function deliveryEnvelopeIndicatesDelivered(value: unknown, depth = 0): boolean {
346+if (isBareSentDeliveryStatus(value)) {
347+return true;
348+}
331349if (!value || typeof value !== "object" || depth > 4) {
332350return false;
333351}
@@ -348,6 +366,9 @@ function deliveryEnvelopeIndicatesDelivered(value: unknown, depth = 0): boolean
348366if (parsed && deliveryEnvelopeIndicatesDelivered(parsed, depth + 1)) {
349367return true;
350368}
369+if (isBareSentDeliveryStatus(record.text)) {
370+return true;
371+}
351372}
352373353374const content = record.content;
@@ -482,6 +503,14 @@ export function isDeliveredMessagingToolResult(params: {
482503) {
483504return true;
484505}
506+if (
507+deliveryEnvelopeIndicatesNonDelivery(params.result) ||
508+deliveryEnvelopeIndicatesNonDelivery(params.hookResult) ||
509+deliveryEnvelopeIndicatesNoOp(params.result) ||
510+deliveryEnvelopeIndicatesNoOp(params.hookResult)
511+) {
512+return false;
513+}
485514if (normalizedToolName === SESSIONS_SEND_TOOL_NAME) {
486515return (
487516deliveryEnvelopeIndicatesSessionsSendAccepted(params.result) ||
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。