mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 13:00:44 +00:00
fix(release): reject staged runtime deps in packs
This commit is contained in:
@@ -434,10 +434,12 @@ describe("collectForbiddenPackPaths", () => {
|
||||
expect(
|
||||
collectForbiddenPackPaths([
|
||||
"dist/index.js",
|
||||
"dist/extensions/browser/.OpenClaw-Install-Stage/package.json",
|
||||
"dist/extensions/codex/.openclaw-runtime-deps-backup-node_modules-old/zod/index.js",
|
||||
"dist/extensions/discord/.openclaw-runtime-deps-stamp.json",
|
||||
]),
|
||||
).toEqual([
|
||||
"dist/extensions/browser/.OpenClaw-Install-Stage/package.json",
|
||||
"dist/extensions/codex/.openclaw-runtime-deps-backup-node_modules-old/zod/index.js",
|
||||
"dist/extensions/discord/.openclaw-runtime-deps-stamp.json",
|
||||
]);
|
||||
|
||||
@@ -35,6 +35,7 @@ import {
|
||||
shouldUseManagedGatewayForInstallerRuntime,
|
||||
shouldUseManagedGatewayService,
|
||||
verifyDevUpdateStatus,
|
||||
writePackageDistInventoryForCandidate,
|
||||
} from "../../scripts/openclaw-cross-os-release-checks.ts";
|
||||
|
||||
describe("scripts/openclaw-cross-os-release-checks", () => {
|
||||
@@ -418,6 +419,30 @@ describe("scripts/openclaw-cross-os-release-checks", () => {
|
||||
}
|
||||
});
|
||||
|
||||
it("rejects bundled runtime-deps staging debris before candidate inventory generation", async () => {
|
||||
const packageRoot = mkdtempSync(join(tmpdir(), "openclaw-cross-os-stage-debris-"));
|
||||
try {
|
||||
mkdirSync(
|
||||
join(packageRoot, "dist", "Extensions", "demo", ".OpenClaw-Install-Stage", "node_modules"),
|
||||
{ recursive: true },
|
||||
);
|
||||
writeFileSync(
|
||||
join(packageRoot, "dist", "Extensions", "demo", ".OpenClaw-Install-Stage", "package.json"),
|
||||
"{}\n",
|
||||
"utf8",
|
||||
);
|
||||
|
||||
await expect(
|
||||
writePackageDistInventoryForCandidate({
|
||||
sourceDir: packageRoot,
|
||||
logPath: join(packageRoot, "npm-pack-dry-run.log"),
|
||||
}),
|
||||
).rejects.toThrow("unexpected bundled-runtime-deps install staging debris");
|
||||
} finally {
|
||||
rmSync(packageRoot, { recursive: true, force: true });
|
||||
}
|
||||
});
|
||||
|
||||
it("accepts a git main dev-channel update status payload", () => {
|
||||
expect(() =>
|
||||
verifyDevUpdateStatus(
|
||||
|
||||
Reference in New Issue
Block a user