…stack chunk group
objectstack's build-console.sh always injects its own client through
OBJECTSTACK_CLIENT_DIST, from a workspace path the vendor-objectstack test
does not match. Since #9488 made data-adapter non-recursive, the client
fell into `framework`, closing a framework <-> data-adapter import cycle;
the client ships as CJS, so data-adapter's top-level require ran before
`framework` defined it and the console died at boot with
"TypeError: u is not a function" (measured on 9f0c84a).
widenVendorChunkTestForClient widens the group's test with the injected
package directory, the same way the spec hook already does for an injected
spec. With it, chunk-membership.json reads client -> vendor-objectstack and
the console boots.
Claude-Session: https://claude.ai/code/session_local_f929252f-7e71-4327-b98b-bd46424b5e05
Co-authored-by: Claude <noreply@anthropic.com>
Fixes #10920
What broke
objectstack's
build-console.shalways setsOBJECTSTACK_CLIENT_DISTto the framework's ownpackages/client. That path is outsidenode_modules, so thevendor-objectstackgroup test never matched the injected client. Before #9488 the recursivedata-adaptergroup absorbed the client anyway, which hid the gap. Once #9488 madedata-adapternon-recursive, the client landed inframework.frameworkimportsdata-adapter, throughpackages/react'serror-message.ts.data-adapterthenrequires the CJS client fromframeworkat its top level, beforeframeworkhas defined it. On9f0c84a44the console built this way stays on the splash screen withTypeError: u is not a function.The fix
widenVendorChunkTestForClientwidens the group's test with the injected client's package directory. The spec hook already does the same for an injected spec. When nothing is injected, the test is returned unchanged, so production and CI builds do not move.Evidence
vendorObjectstackTestwired back to the bare expression, only the config-level case fails (1 red, 21 green). That case is the one that pins the wiring.pnpm exec vitest run scripts/__tests__/vite-objectstack-client-dist.test.ts: 22 passed.pnpm type-check:scriptsandpnpm type-check:vitest-config: clean.node scripts/check-changeset-presence.mjs: no changeset is owed, because no published source moved.9f0c84a44:chunk-membership.jsonreadsclient: { "vendor-objectstack": 1 }, the console boots to/login, and a 95-surface sweep of the showcase and Setup apps shows no page errors.Generated by Claude Code