
























@@ -107,13 +107,15 @@ describe("scripts/lib/docker-e2e-plan", () => {
107107bareImage: true,
108108e2eImage: true,
109109functionalImage: true,
110-liveImage: false,
110+liveImage: true,
111111package: true,
112112});
113113expect(plan.credentials).toEqual(["anthropic", "openai"]);
114114expect(plan.lanes.map((lane) => lane.name)).toContain("install-e2e-openai");
115+expect(plan.lanes.map((lane) => lane.name)).toContain("codex-on-demand");
115116expect(plan.lanes.map((lane) => lane.name)).toContain("install-e2e-anthropic");
116117expect(plan.lanes.map((lane) => lane.name)).toContain("mcp-channels");
118+expect(plan.lanes.map((lane) => lane.name)).toContain("live-plugin-tool");
117119expect(plan.lanes.map((lane) => lane.name)).toContain("commitments-safety");
118120expect(plan.lanes.map((lane) => lane.name)).toContain("bundled-plugin-install-uninstall-0");
119121expect(plan.lanes.map((lane) => lane.name)).toContain("bundled-plugin-install-uninstall-23");
@@ -209,7 +211,10 @@ describe("scripts/lib/docker-e2e-plan", () => {
209211releaseChunk: "plugins-runtime-install-h",
210212});
211213212-expect(packageInstallOpenAi.lanes.map((lane) => lane.name)).toEqual(["install-e2e-openai"]);
214+expect(packageInstallOpenAi.lanes.map((lane) => lane.name)).toEqual([
215+"install-e2e-openai",
216+"codex-on-demand",
217+]);
213218expect(packageInstallAnthropic.lanes.map((lane) => lane.name)).toEqual([
214219"install-e2e-anthropic",
215220]);
@@ -314,6 +319,16 @@ describe("scripts/lib/docker-e2e-plan", () => {
314319timeoutMs: 480_000,
315320weight: 2,
316321},
322+{
323+command: "OPENCLAW_SKIP_DOCKER_BUILD=1 pnpm test:docker:live-plugin-tool",
324+imageKind: "live",
325+live: true,
326+name: "live-plugin-tool",
327+resources: ["docker", "live", "live:openai", "npm"],
328+stateScenario: "empty",
329+timeoutMs: 1_200_000,
330+weight: 4,
331+},
317332{
318333command: "OPENCLAW_SKIP_DOCKER_BUILD=1 pnpm test:docker:openwebui",
319334imageKind: "functional",
@@ -324,6 +339,20 @@ describe("scripts/lib/docker-e2e-plan", () => {
324339weight: 5,
325340},
326341]);
342+expect(pluginsRuntimeServices.lanes).toEqual(
343+expect.arrayContaining([
344+expect.objectContaining({
345+name: "cron-mcp-cleanup",
346+stateScenario: "empty",
347+}),
348+expect.objectContaining({
349+live: true,
350+name: "live-plugin-tool",
351+resources: ["docker", "live", "live:openai", "npm"],
352+stateScenario: "empty",
353+}),
354+]),
355+);
327356expect(pluginsRuntimePlugins.lanes.map((lane) => lane.name)).not.toContain(
328357"bundled-plugin-install-uninstall-0",
329358);
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。