v0.22.1
2026-05-14
Bug Fixes
- [x] CI lint failure:
packages/server-core/src/routes/entityAccess.tsdeclared an unusedEntityTypetype alias, which tripped@typescript-eslint/no-unused-varsas an error and failed thelint-and-testjob. Removed the unused alias. (TheUnexpected anywarnings in the same lint output are pre-existing and non-blocking.) - [x] Hotfix: production
GET /api/modules/genai/modelswas 404 because the genai server router never mounted. Root cause:scripts/install-hosted-modules.shcopied only$PKG_DIRfrom thenpm installtemp dir and discarded the siblingnode_modules/containing the module's runtime deps.@purple-cat-games/genaidepends onzod(regular dep, not a peer), andzodis neither in pnpm-workspace.yaml'spublicHoistPattern(onlyexpressand@purple-cat/*are) nor a direct dep ofapps/web/server-coreat a versiongenaiaccepts. At runtimeimport { z } from 'zod'indist/server/index.jsthrewCannot find package 'zod';loadServerEntry(packages/server-core/src/modules/index.ts) caught and logged the error and returnednull, so the genai router was silently skipped duringstart().system8happened to work because it only importsexpress(a hoisted peer). Fix: haveinstall-hosted-modules.shalso copy the siblingnode_modules/entries (excluding the module's own scope dir) into$DEST/node_modules/, making each hosted module self-contained at runtime. Generalizes to any future module with non-peer runtime deps. Added regression tests inscripts/install-hosted-modules.test.tspinning the bundling logic.