Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
import { describe, expect, it } from "vitest";
import type { OpenClawConfig } from "../../config/config.js";
import { resolveFollowupDeliveryPayloads } from "./followup-delivery.js";
const baseConfig = {} as OpenClawConfig;
describe("resolveFollowupDeliveryPayloads", () => {
it("drops heartbeat ack payloads without media", () => {
expect(
resolveFollowupDeliveryPayloads({
cfg: baseConfig,
payloads: [{ text: "HEARTBEAT_OK" }],
}),
).toEqual([]);
});
it("keeps media payloads when stripping heartbeat ack text", () => {
expect(
resolveFollowupDeliveryPayloads({
cfg: baseConfig,
payloads: [{ text: "HEARTBEAT_OK", mediaUrl: "/tmp/image.png" }],
}),
).toEqual([{ text: "", mediaUrl: "/tmp/image.png" }]);
});
it("drops text payloads already sent via messaging tool", () => {
expect(
resolveFollowupDeliveryPayloads({
cfg: baseConfig,
payloads: [{ text: "hello world!" }],
sentTexts: ["hello world!"],
}),
).toEqual([]);
});
it("drops media payloads already sent via messaging tool", () => {
expect(
resolveFollowupDeliveryPayloads({
cfg: baseConfig,
payloads: [{ mediaUrl: "/tmp/img.png" }],
sentMediaUrls: ["/tmp/img.png"],
}),
).toEqual([{ mediaUrl: undefined, mediaUrls: undefined }]);
});
it("suppresses replies when a messaging tool already sent to the same provider and target", () => {
expect(
resolveFollowupDeliveryPayloads({
cfg: baseConfig,
payloads: [{ text: "hello world!" }],
messageProvider: "slack",
originatingTo: "channel:C1",
sentTargets: [{ tool: "slack", provider: "slack", to: "channel:C1" }],
}),
).toEqual([]);
});
it("suppresses replies when originating channel resolves the provider", () => {
expect(
resolveFollowupDeliveryPayloads({
cfg: baseConfig,
payloads: [{ text: "hello world!" }],
messageProvider: "heartbeat",
originatingChannel: "telegram",
originatingTo: "268300329",
sentTargets: [{ tool: "telegram", provider: "telegram", to: "268300329" }],
}),
).toEqual([]);
});
});
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-04-27)
¤
*© Formatika GbR, Deutschland