mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-10 07:10:43 +00:00
test: tighten root dependency audit assertions
This commit is contained in:
@@ -182,18 +182,28 @@ describe("collectRootDependencyOwnershipCheckErrors", () => {
|
||||
scanRoots: ["src", "packages"],
|
||||
});
|
||||
|
||||
expect(records).toMatchObject([
|
||||
expect(records).toEqual([
|
||||
{
|
||||
category: "core_runtime",
|
||||
declaredInExtensions: [],
|
||||
depName: "pdfjs-dist",
|
||||
fileCount: 1,
|
||||
internalizedBundledRuntimeOwners: [],
|
||||
recommendation: "keep at root",
|
||||
sampleFiles: ["src/media/pdf-extract.ts"],
|
||||
sections: ["src"],
|
||||
spec: "^5.0.0",
|
||||
},
|
||||
{
|
||||
category: "core_runtime",
|
||||
declaredInExtensions: [],
|
||||
depName: "sqlite-vec",
|
||||
fileCount: 1,
|
||||
internalizedBundledRuntimeOwners: [],
|
||||
recommendation: "keep at root",
|
||||
sampleFiles: ["packages/memory-host-sdk/src/host/sqlite-vec.ts"],
|
||||
sections: ["packages"],
|
||||
spec: "0.1.9",
|
||||
},
|
||||
]);
|
||||
});
|
||||
@@ -254,16 +264,30 @@ describe("collectRootDependencyOwnershipCheckErrors", () => {
|
||||
|
||||
const records = collectRootDependencyOwnershipAudit({ repoRoot, scanRoots: ["extensions"] });
|
||||
|
||||
expect(records).toMatchObject([
|
||||
expect(records).toEqual([
|
||||
{
|
||||
category: "root_owned_extension_runtime",
|
||||
declaredInExtensions: ["bonjour:dependencies"],
|
||||
depName: "@homebridge/ciao",
|
||||
fileCount: 1,
|
||||
internalizedBundledRuntimeOwners: [],
|
||||
recommendation:
|
||||
"keep at root; the Bonjour runtime is shipped with packaged startup surfaces even though the bundled plugin also declares it",
|
||||
sampleFiles: ["extensions/bonjour/src/advertiser.ts"],
|
||||
sections: ["extensions"],
|
||||
spec: "^1.3.7",
|
||||
},
|
||||
{
|
||||
category: "root_owned_extension_runtime",
|
||||
declaredInExtensions: ["browser:dependencies"],
|
||||
depName: "playwright-core",
|
||||
fileCount: 1,
|
||||
internalizedBundledRuntimeOwners: [],
|
||||
recommendation:
|
||||
"keep at root; the internal browser runtime is shipped with core even though downloadable browser-adjacent plugins also declare it",
|
||||
sampleFiles: ["extensions/browser/src/browser/playwright-core.runtime.ts"],
|
||||
sections: ["extensions"],
|
||||
spec: "1.59.1",
|
||||
},
|
||||
]);
|
||||
expect(collectRootDependencyOwnershipCheckErrors(records)).toStrictEqual([]);
|
||||
@@ -293,12 +317,18 @@ describe("collectRootDependencyOwnershipCheckErrors", () => {
|
||||
|
||||
const records = collectRootDependencyOwnershipAudit({ repoRoot, scanRoots: ["extensions"] });
|
||||
|
||||
expect(records).toMatchObject([
|
||||
expect(records).toEqual([
|
||||
{
|
||||
category: "root_owned_extension_runtime",
|
||||
declaredInExtensions: ["internal:dependencies"],
|
||||
depName: "vendor-sdk",
|
||||
fileCount: 1,
|
||||
internalizedBundledRuntimeOwners: ["internal:dependencies"],
|
||||
recommendation:
|
||||
"keep at root while bundled plugin runtime dependencies are internalized; owners: internal:dependencies",
|
||||
sampleFiles: ["extensions/internal/src/setup.ts"],
|
||||
sections: ["extensions"],
|
||||
spec: "^1.0.0",
|
||||
},
|
||||
]);
|
||||
expect(collectRootDependencyOwnershipCheckErrors(records)).toStrictEqual([]);
|
||||
@@ -328,12 +358,18 @@ describe("collectRootDependencyOwnershipCheckErrors", () => {
|
||||
|
||||
const records = collectRootDependencyOwnershipAudit({ repoRoot, scanRoots: ["extensions"] });
|
||||
|
||||
expect(records).toMatchObject([
|
||||
expect(records).toEqual([
|
||||
{
|
||||
category: "extension_only_localizable",
|
||||
declaredInExtensions: ["externalized:dependencies"],
|
||||
depName: "vendor-sdk",
|
||||
fileCount: 1,
|
||||
internalizedBundledRuntimeOwners: [],
|
||||
recommendation:
|
||||
"remove from root package.json and rely on owning extension manifests plus doctor --fix",
|
||||
sampleFiles: ["extensions/externalized/src/setup.ts"],
|
||||
sections: ["extensions"],
|
||||
spec: "^1.0.0",
|
||||
},
|
||||
]);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user