

























@@ -854,7 +854,8 @@ describe("Invalid engine fallback", () => {
854854name: "missing registration",
855855engineId: uniqueEngineId("does-not-exist"),
856856register: () => undefined,
857-expectedError: "does-not-exist",
857+expectedError: (engineId: string) =>
858+`[context-engine] Context engine "${engineId}" is not registered; falling back to default engine "legacy".`,
858859},
859860{
860861name: "factory throws",
@@ -864,7 +865,8 @@ describe("Invalid engine fallback", () => {
864865throw new Error("plugin version mismatch");
865866});
866867},
867-expectedError: "plugin version mismatch",
868+expectedError: (engineId: string) =>
869+`[context-engine] Context engine "${engineId}" factory threw during resolution: plugin version mismatch; falling back to default engine "legacy".`,
868870},
869871{
870872name: "missing info metadata",
@@ -886,7 +888,8 @@ describe("Invalid engine fallback", () => {
886888}) as unknown as ContextEngine,
887889);
888890},
889-expectedError: "missing info",
891+expectedError: (engineId: string) =>
892+`[context-engine] Context engine "${engineId}" factory returned an invalid ContextEngine: missing info.; falling back to default engine "legacy".`,
890893},
891894{
892895name: "missing lifecycle methods",
@@ -903,15 +906,17 @@ describe("Invalid engine fallback", () => {
903906}) as unknown as ContextEngine,
904907);
905908},
906-expectedError: "missing assemble(), missing compact()",
909+expectedError: (engineId: string) =>
910+`[context-engine] Context engine "${engineId}" factory returned an invalid ContextEngine: missing assemble(), missing compact().; falling back to default engine "legacy".`,
907911},
908912{
909913name: "contract validation throws",
910914engineId: uniqueEngineId("validation-throw"),
911915register: (engineId: string) => {
912916registerContextEngine(engineId, () => 42n as unknown as ContextEngine);
913917},
914-expectedError: "contract validation threw",
918+expectedError: (engineId: string) =>
919+`[context-engine] Context engine "${engineId}" contract validation threw: Do not know how to serialize a BigInt; falling back to default engine "legacy".`,
915920},
916921] as const;
917922@@ -923,7 +928,7 @@ describe("Invalid engine fallback", () => {
923928924929expect(engine.info.id, testCase.name).toBe("legacy");
925930expect(console.error, testCase.name).toHaveBeenCalledWith(
926-expect.stringContaining(testCase.expectedError),
931+testCase.expectedError(testCase.engineId),
927932);
928933}
929934});
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。