Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
import { beforeEach, describe, expect, it } from "vitest";
import { setActivePluginRegistry } from "../../plugins/runtime.js";
import { createSessionConversationTestRegistry } from "../../test-utils/session-conversation-registry.js";
import { resolveAnnounceTargetFromKey } from "./sessions-send-helpers.js";
describe("resolveAnnounceTargetFromKey", () => {
beforeEach(() => {
setActivePluginRegistry(createSessionConversationTestRegistry());
});
it("lets plugins own session-derived target shapes", () => {
expect(resolveAnnounceTargetFromKey("agent:main:discord:group:dev")).toEqual({
channel: "discord",
to: "channel:dev",
threadId: undefined,
});
expect(resolveAnnounceTargetFromKey("agent:main:slack:group:C123")).toEqual({
channel: "slack",
to: "channel:C123",
threadId: undefined,
});
});
it("keeps generic topic extraction and plugin normalization for other channels", () => {
expect(resolveAnnounceTargetFromKey("agent:main:telegram:group:-100123:topic:99")).toEqual({
channel: "telegram",
to: "-100123",
threadId: "99",
});
});
it("preserves decimal thread ids for Slack-style session keys", () => {
expect(
resolveAnnounceTargetFromKey("agent:main:slack:channel:general:thread:1699999999.0001"),
).toEqual({
channel: "slack",
to: "channel:general",
threadId: "1699999999.0001",
});
});
it("preserves colon-delimited matrix ids for channel and thread targets", () => {
expect(
resolveAnnounceTargetFromKey(
"agent:main:matrix:channel:!room:example.org:thread:$AbC123:example.org",
),
).toEqual({
channel: "matrix",
to: "channel:!room:example.org",
threadId: "$AbC123:example.org",
});
});
it("preserves feishu conversation ids that embed :topic: in the base id", () => {
expect(
resolveAnnounceTargetFromKey(
"agent:main:feishu:group:oc_group_chat:topic:om_topic_root:sender:ou_topic_user",
),
).toEqual({
channel: "feishu",
to: "oc_group_chat:topic:om_topic_root:sender:ou_topic_user",
threadId: undefined,
});
});
});
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-04-27)
¤
*© Formatika GbR, Deutschland