问题 @objectstack/console@11.5.0 运行时报:
The connected @objectstack/client does not support async import jobs.
原因:scripts/build-console.sh 在 objectui 树里 pnpm install --frozen-lockfile 后直接构建,console bundle 里的 @objectstack/client 版本完全由 objectui 的 lockfile 决定。发布 11.5.0 时 objectui lockfile 锁的是 client 11.2.0(新 client 当时还没发到 npm,objectui 不可能提前锁到它),于是发布出去的 console = 新导入 UI + 旧 client(无 data.createImportJob),前端探测失败直接抛错。已在实际项目 os-tianshun-ehr 复现并逐环验证(served dist 中 import/jobs 出现 0 次)。
这是结构性问题:凡是某个版本给 client 加新 API 且 UI 依赖它,按现状都得「发 framework → objectui bump pin → framework 再发一版」两段式,永远慢一拍。
解决方案 build-console.sh 构建 console 前:
校验 pinned objectui 的 apps/console/vite.config.ts 存在 OBJECTSTACK_CLIENT_DIST 钩子(objectui main 已有),没有则报错退出而不是静默漂移; 必要时先构建本仓库 packages/client 的 dist; export OBJECTSTACK_CLIENT_DIST=<framework>/packages/client,让 vite 把本仓库、本版本的 client 打进 console bundle;默认构建命令加 --force,避免 turbo 缓存返回未注入的旧产物(objectui 侧同步在 turbo.json 声明该 env,见 fix(deps): bump @objectstack/client 到 ^11.5.0,修复 console 产物打包旧 client 导致异步导入不可用 objectui#2146 )。 之后 console 的 client 永远与 framework 发布版本一致,一趟发版;本次直接以现有 .objectui-sha(1432efe81)重打 dist 发 @objectstack/console@11.5.1 即可修复线上问题。
问题
@objectstack/console@11.5.0运行时报:原因:
scripts/build-console.sh在 objectui 树里pnpm install --frozen-lockfile后直接构建,console bundle 里的@objectstack/client版本完全由 objectui 的 lockfile 决定。发布 11.5.0 时 objectui lockfile 锁的是 client 11.2.0(新 client 当时还没发到 npm,objectui 不可能提前锁到它),于是发布出去的 console = 新导入 UI + 旧 client(无data.createImportJob),前端探测失败直接抛错。已在实际项目 os-tianshun-ehr 复现并逐环验证(served dist 中import/jobs出现 0 次)。这是结构性问题:凡是某个版本给 client 加新 API 且 UI 依赖它,按现状都得「发 framework → objectui bump pin → framework 再发一版」两段式,永远慢一拍。
解决方案
build-console.sh构建 console 前:apps/console/vite.config.ts存在OBJECTSTACK_CLIENT_DIST钩子(objectui main 已有),没有则报错退出而不是静默漂移;packages/client的 dist;export OBJECTSTACK_CLIENT_DIST=<framework>/packages/client,让 vite 把本仓库、本版本的 client 打进 console bundle;--force,避免 turbo 缓存返回未注入的旧产物(objectui 侧同步在 turbo.json 声明该 env,见 fix(deps): bump @objectstack/client 到 ^11.5.0,修复 console 产物打包旧 client 导致异步导入不可用 objectui#2146)。之后 console 的 client 永远与 framework 发布版本一致,一趟发版;本次直接以现有
.objectui-sha(1432efe81)重打 dist 发@objectstack/console@11.5.1即可修复线上问题。