


























@@ -95,46 +95,45 @@ describe("listMemoryWikiImportInsights", () => {
9595expect(result.sourceType).toBe("chatgpt");
9696expect(result.totalItems).toBe(2);
9797expect(result.totalClusters).toBe(2);
98-expect(result.clusters[0]).toMatchObject({
99- key: "topic/health",
100- label: "Health",
101- itemCount: 1,
102- highRiskCount: 1,
103- withheldCount: 1,
104- });
105-expect(result.clusters[1]).toMatchObject({
106- key: "topic/travel",
107- label: "Travel",
108- itemCount: 1,
109- preferenceSignalCount: 1,
110- });
111-expect(result.clusters[1]?.items[0]).toMatchObject({
112- title: "BA flight receipts process",
113- riskReasons: [],
114- activeBranchMessages: 0,
115- userMessageCount: 2,
116- assistantMessageCount: 2,
117- firstUserLine: "how do i get receipts?",
118- lastUserLine: "that option does not exist",
119- assistantOpener: "Try the BA receipt request flow first.",
120- summary: "Try the BA receipt request flow first.",
121- candidateSignals: ["prefers direct airline receipts"],
122- correctionSignals: [],
123- preferenceSignals: ["prefers direct airline receipts"],
124- digestStatus: "available",
125- });
98+const healthCluster = result.clusters[0];
99+expect(healthCluster?.key).toBe("topic/health");
100+expect(healthCluster?.label).toBe("Health");
101+expect(healthCluster?.itemCount).toBe(1);
102+expect(healthCluster?.highRiskCount).toBe(1);
103+expect(healthCluster?.withheldCount).toBe(1);
104+105+const travelCluster = result.clusters[1];
106+expect(travelCluster?.key).toBe("topic/travel");
107+expect(travelCluster?.label).toBe("Travel");
108+expect(travelCluster?.itemCount).toBe(1);
109+expect(travelCluster?.preferenceSignalCount).toBe(1);
110+111+const travelItem = travelCluster?.items[0];
112+expect(travelItem?.title).toBe("BA flight receipts process");
113+expect(travelItem?.riskReasons).toEqual([]);
114+expect(travelItem?.activeBranchMessages).toBe(0);
115+expect(travelItem?.userMessageCount).toBe(2);
116+expect(travelItem?.assistantMessageCount).toBe(2);
117+expect(travelItem?.firstUserLine).toBe("how do i get receipts?");
118+expect(travelItem?.lastUserLine).toBe("that option does not exist");
119+expect(travelItem?.assistantOpener).toBe("Try the BA receipt request flow first.");
120+expect(travelItem?.summary).toBe("Try the BA receipt request flow first.");
121+expect(travelItem?.candidateSignals).toEqual(["prefers direct airline receipts"]);
122+expect(travelItem?.correctionSignals).toEqual([]);
123+expect(travelItem?.preferenceSignals).toEqual(["prefers direct airline receipts"]);
124+expect(travelItem?.digestStatus).toBe("available");
125+126126const healthItem = result.clusters
127127.flatMap((cluster) => cluster.items)
128128.find((item) => item.title === "Migraine Medication Advice");
129-expect(healthItem).toMatchObject({
130-summary:
131-"Sensitive health chat withheld from durable-memory extraction because it touches health.",
132-candidateSignals: [],
133-correctionSignals: [],
134-preferenceSignals: [],
135-userMessageCount: 1,
136-assistantMessageCount: 1,
137-});
129+expect(healthItem?.summary).toBe(
130+"Sensitive health chat withheld from durable-memory extraction because it touches health.",
131+);
132+expect(healthItem?.candidateSignals).toEqual([]);
133+expect(healthItem?.correctionSignals).toEqual([]);
134+expect(healthItem?.preferenceSignals).toEqual([]);
135+expect(healthItem?.userMessageCount).toBe(1);
136+expect(healthItem?.assistantMessageCount).toBe(1);
138137expect(healthItem?.firstUserLine).toBeUndefined();
139138expect(healthItem?.lastUserLine).toBeUndefined();
140139expect(healthItem?.assistantOpener).toBeUndefined();
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。