Skip to content

fix(bundler): include workspace node_modules symlinks in runtime image#25

Merged
ggonzalez94 merged 2 commits intomainfrom
tinted-celestite
Apr 14, 2026
Merged

fix(bundler): include workspace node_modules symlinks in runtime image#25
ggonzalez94 merged 2 commits intomainfrom
tinted-celestite

Conversation

@ggonzalez94
Copy link
Copy Markdown
Member

Summary

v0.3.0 release deploy failed because @agent-paymaster/shared now depends on viem at runtime (added in #23), but Dockerfile.bundler only copied /app/node_modules and /app/packages/bundler/node_modules to the runtime stage. The packages/shared/node_modules/viem symlink was missing, so Node.js crashed on startup with `ERR_MODULE_NOT_FOUND: Cannot find package 'viem' imported from /app/packages/shared/dist/index.js` and Railway's health check timed out.

Switch the runtime stage to `COPY --from=deps /app ./` (same pattern the API Dockerfile already uses) so every workspace package's hoisted symlink tree is preserved automatically.

Test plan

  • Verified packages/shared/package.json declares viem as a runtime dependency and packages/shared/node_modules/viem resolves only via that workspace's symlink
  • Identified the failure via Railway GraphQL deployment logs: `ERR_MODULE_NOT_FOUND: Cannot find package 'viem' imported from /app/packages/shared/dist/index.js`
  • After merge + re-tag: release workflow deploys bundler successfully and API /health reports ok

🤖 Generated with Claude Code

ggonzalez94 and others added 2 commits April 13, 2026 23:09
Redeploys the full Servo contract stack on Taiko Alethia after the Pimlico
SingletonPaymasterV7 migration and the compiler/dependency refresh. The
previous TaikoUsdcPaymaster deployment has been swept (EntryPoint deposit and
pooled USDC returned to treasury) and is retired.

- ServoPaymaster → 0x15a5451FeDc348312F1B59F7D930D494B7A73393 (seeded w/ 0.005 ETH)
- ServoAccountFactory → 0x27A8169f8C837D66497b4FD1002ef178F88cc1D6 (new bytecode, new CREATE2 space)

Updates version, CHANGELOG, deployment docs, README, servo-agent skill/evals,
and the bundler v0.7 factory test fixture to point at the new addresses.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v0.3.0 made @agent-paymaster/shared depend on viem at runtime (previously
only types). The bundler Dockerfile only copied /app/node_modules and
packages/bundler/node_modules to the runtime stage, so the
packages/shared/node_modules/viem symlink was missing. On startup
Node.js resolved viem from shared/dist/index.js, failed with
ERR_MODULE_NOT_FOUND, and Railway's health check timed out.

Switch the runtime stage to the simpler COPY --from=deps /app ./
pattern (same as the API Dockerfile) so every workspace package's
hoisted symlinks are preserved automatically.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@ggonzalez94 ggonzalez94 merged commit e5c374a into main Apr 14, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant