fix(ci): regenerate lockfile with cross-platform native binaries#71
fix(ci): regenerate lockfile with cross-platform native binaries#71khaliqgant merged 1 commit intomainfrom
Conversation
…ries The lockfile was generated on macOS and only contained darwin-arm64 resolved entries for lightningcss and @tailwindcss/oxide. CI runs on ubuntu-latest (linux-x64) and npm ci strictly follows the lockfile, causing the build to fail with missing lightningcss-linux-x64-gnu.node. Regenerated from scratch so all platform-specific optional deps are resolved. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Devin Review found 1 potential issue.
🐛 1 issue in files not directly in the diff
🐛 safeUsername() in channels.ts loses project directory name used as projectName (packages/dashboard-server/src/routes/channels.ts:22)
In packages/dashboard-server/src/routes/channels.ts:22, the old code set projectName to path.basename(path.resolve(ctx.dataDir, '..')) (the project directory name) with 'Dashboard' as a fallback. The new code calls safeUsername() with no argument, which returns the OS username (e.g. ubuntu) instead of the project directory name, falling back to 'Dashboard' only if os.userInfo() throws.
Notably, the other two call sites in this PR (packages/dashboard-server/src/proxy-server.ts:213 and packages/dashboard-server/src/relaycast-provider.ts:91) correctly pass path.basename(path.resolve(dataDir, '..')) as the fallback to safeUsername(), preserving the project-directory semantics. The channels.ts call site appears to have accidentally dropped this fallback, changing the identity used for channel operations from the project name to the OS username.
View 5 additional findings in Devin Review.
Summary
package-lock.jsonfrom scratch to include resolved entries for all platform-specific optional dependencieslightningcss-linux-x64-gnu.nodeand@tailwindcss/oxidelinux binaries were missingdarwin-arm64entries;npm cion the ubuntu CI runner couldn't find the linux native modulesTest plan
🤖 Generated with Claude Code