The first release attempt failed: npm ci inside node:20-bookworm-slim
rejected the lockfile because (a) it was generated on darwin-arm64 and
only contained darwin native binaries, and (b) eslint-plugin-storybook@9
peers storybook@^9 while we run storybook@10.
Regenerate package-lock.json inside a clean Linux container so
platform-specific natives (lightningcss-linux--gnu, @tailwindcss/oxide-
linux--gnu, @next/swc-linux-*-gnu, etc.) land in the lockfile.
Upgrade eslint-plugin-storybook 9 -> 10.4.1 (released for Storybook 10).
Add @storybook/react and @testing-library/dom as explicit devDeps; the
new transitive hoist depths break top-level imports otherwise.
Drop the stale knip ignore for @storybook/react.
Switch the Dockerfile deps stage from npm ci --ignore-scripts to npm install. The lockfile records sub-tree resolutions inconsistently
between npm 10/11 and darwin/linux; npm install is still bounded by
the lockfile but tolerates the platform-specific reshuffles Next.js
needs at build time.
Copy prisma/ into the deps stage so the project postinstall succeeds
and the explicit npx prisma generate step in the builder stage is
no longer needed.
Fix Docker build: regenerate lockfile on Linux, upgrade Storybook lint plugin
The first release attempt failed: `npm ci` inside `node:20-bookworm-slim`
rejected the lockfile because (a) it was generated on darwin-arm64 and
only contained darwin native binaries, and (b) `eslint-plugin-storybook@9`
peers `storybook@^9` while we run `storybook@10`.
- Regenerate package-lock.json inside a clean Linux container so
platform-specific natives (lightningcss-linux-*-gnu, @tailwindcss/oxide-
linux-*-gnu, @next/swc-linux-*-gnu, etc.) land in the lockfile.
- Upgrade eslint-plugin-storybook 9 -> 10.4.1 (released for Storybook 10).
- Add @storybook/react and @testing-library/dom as explicit devDeps; the
new transitive hoist depths break top-level imports otherwise.
- Drop the stale knip ignore for @storybook/react.
- Switch the Dockerfile deps stage from `npm ci --ignore-scripts` to
`npm install`. The lockfile records sub-tree resolutions inconsistently
between npm 10/11 and darwin/linux; `npm install` is still bounded by
the lockfile but tolerates the platform-specific reshuffles Next.js
needs at build time.
- Copy prisma/ into the deps stage so the project postinstall succeeds
and the explicit `npx prisma generate` step in the builder stage is
no longer needed.
Verified: docker build, tsc, storybook:build, knip, vitest (1238 tests).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Fix Docker build: regenerate lockfile on Linux, upgrade Storybook lint plugin
The first release attempt failed:
npm ciinsidenode:20-bookworm-slimrejected the lockfile because (a) it was generated on darwin-arm64 and
only contained darwin native binaries, and (b)
eslint-plugin-storybook@9peers
storybook@^9while we runstorybook@10.platform-specific natives (lightningcss-linux--gnu, @tailwindcss/oxide-
linux--gnu, @next/swc-linux-*-gnu, etc.) land in the lockfile.
new transitive hoist depths break top-level imports otherwise.
npm ci --ignore-scriptstonpm install. The lockfile records sub-tree resolutions inconsistentlybetween npm 10/11 and darwin/linux;
npm installis still bounded bythe lockfile but tolerates the platform-specific reshuffles Next.js
needs at build time.
and the explicit
npx prisma generatestep in the builder stage isno longer needed.
Verified: docker build, tsc, storybook:build, knip, vitest (1238 tests).