fix(release): include Tasks and complete Git-installable module composition

This commit is contained in:
2026-09-08 02:06:35 +02:00
parent 32c70a4657
commit c209b3c27d
5 changed files with 46 additions and 24 deletions
@@ -39,6 +39,18 @@ const layoutStyles = read("src/styles/layout.css");
const authGateStyles = read("src/styles/auth-gate.css");
const viteConfig = read("vite.config.ts");
const packageManifest = JSON.parse(read("package.json"));
const defaultModulePackages = [...(viteConfig.match(/const defaultWebModulePackages = \[([\s\S]*?)\];/)?.[1] ?? "")
.matchAll(/"([^"]+)"/g)].map((match) => match[1]);
const declaredModulePackages = Object.keys(packageManifest.dependencies)
.filter((name) => name.startsWith("@govoplan/")).sort();
assert.deepEqual([...defaultModulePackages].sort(), declaredModulePackages,
"every declared module must be discoverable in the default build, including Tasks; explicit permutations cannot hide an omitted descriptor");
assert.match(viteConfig, /if \(configured === undefined\) return defaultWebModulePackages;/,
"only an absent override selects the full default composition");
assert.match(viteConfig, /return configured\.split\(","\)\.map\([\s\S]*?\.filter\(Boolean\)/,
"an explicit empty override still supports a core-only build");
assert.match(viteConfig, /return configuredWebModulePackages\(\)\.filter\(packageInstalled\)/,
"declared modules remain optional when their package is not installed");
// Component presence alone cannot detect a collection toolbar in a left pane.
await import("./test-workspace-collection-actions.mjs");