Files
openclaw/test/scripts/plugin-uninstall-assertions.test.ts
Vincent KocandDallin Romney 07fe26ecf8 fix(release): consolidate frozen target harness contracts (#136761)
* fix(release): consolidate frozen target harness contracts

Keep current targets strict, source-qualify the frozen plugin fixture dialect, and omit only the mobile reconnect lane when the selected Gateway lacks its required iPhone watch-relay capability.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

Co-authored-by: Dallin Romney <dallinromney@gmail.com>

* fix(release): make frozen capability probes pipefail safe

* fix(release): restore frozen core harness dialects

* fix(release): default frozen code-mode catalog mode

* fix(release): bind frozen identity for docker chunks

* fix(release): derive frozen live package mode

* fix(release): materialize frozen bundle MCP client

* fix(release): use frozen typed onboarding contract

* fix(release): make frozen client mount traversable

* fix(release): preserve frozen client module scope

* fix(release): select frozen runtime-context input contract

* fix(release): qualify frozen MCP permission ownership

* fix(release): retain failed Docker harness diagnostics

* test(release): preserve harness cleanup assertion

* Revert "fix(release): qualify frozen MCP permission ownership"

This reverts commit 10028a0837.

---------

Co-authored-by: Dallin Romney <dallinromney@gmail.com>
2026-09-07 13:21:01 -07:00

23 lines
781 B
TypeScript

import { afterEach, describe, expect, it, vi } from "vitest";
import { hasExpectedPluginUninstallConfigState } from "../../scripts/e2e/lib/plugin-uninstall-assertions.mjs";
describe("plugin uninstall assertions", () => {
afterEach(() => vi.unstubAllEnvs());
it("accepts an absent legacy plugin entry but rejects every present falsy residue", () => {
vi.stubEnv("OPENCLAW_FROZEN_TARGET_PLUGIN_UNINSTALL_MODE", "legacy");
expect(hasExpectedPluginUninstallConfigState({ plugins: { entries: {} } }, "fixture")).toBe(
true,
);
for (const entry of [null, false, 0, ""]) {
expect(
hasExpectedPluginUninstallConfigState(
{ plugins: { entries: { fixture: entry } } },
"fixture",
),
).toBe(false);
}
});
});