Repository navigation
Keep deploy dependencies in the alchemy.new archive - #267
Merged
Merged
Conversation
alchemy.new runs the packed archive without installing packages. @alchemy.run/cloudflare and @vitejs/plugin-react are loaded at deploy time, so they stay in the production dependency set. Co-authored-by: Jonathan Beckman <jonathantbeckman@gmail.com>
The stack resolves the Linux workerd binary when it loads, and the Vite build loads TanStack Start's default entries. Leave the duplicate workerd binary out. Co-authored-by: Jonathan Beckman <jonathantbeckman@gmail.com>
jonbeckman
enabled auto-merge (squash)
November 13, 2026 17:48
Contributor
🟢 e2e solstatus-core: 3 passed, 6 skipped, 6 left out by filters1 agent step · 1 replayed from cache Change 6 files changed since 6 tests left out by filters
All 9 tests in 3 files
Tested by e2e 0.23.0 · 21.4s · 2 targets (chromium, cli) · run artifacts |
Contributor
TegamiThis repository uses Tegami to manage releases. When your changes affect published packages, add a changelog file under Create a changelog → · Changelog format Release preview
Changelogs in this PR
Run Managed by Tegami. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
solzero/solstatus@4.1.2fails on alchemy.new withCannot find package '@alchemy.run/cloudflare'frompackages/api/infra/index.ts. The registry runs the packed archive and does not install dependencies. The release job prunes devDependencies first.@alchemy.run/cloudflareis imported by the API and app infrastructure at deploy time, and@vitejs/plugin-reactis imported bypackages/app/vite.config.tswhenCloudflare.Website.Viterunsvite.createBuilder(). Those three packages are now production dependencies.effectstays resolvable from the root package. Worker sources already import production dependencies.The packer was also dropping two files the deploy loads after that prune:
@cloudflare/workerd-linux-64/bin/workerd, which Node resolves when the stack imports@alchemy.run/cloudflare. The duplicate underworkerd/bin/workerdstays excluded.@tanstack/react-start/dist/plugin/default-entry/*, which the deploy-time Vite build loads.A patch Tegami note is in
.tegami/2026-11-13-fix-registry-deploy-dependencies.md. This does not deploy or publish.The dry-run archive is 120.6 MiB. That is under the 256 MiB cap and above the publisher's 80 MiB warning, because the resolved
workerdbinary stays.Validation
Pre-fix, after
nub install --frozen-lockfile,nub run build, andnub prune --prod:Cannot find package '@alchemy.run/cloudflare'vite.createBuilder():Cannot find package '@vitejs/plugin-react'@alchemy.run/cloudflarePost-fix, the same install, build, and prune, then a dry run of
SolZeroAI/alchemy-new-publish-actionwith the release exclude list (nothing uploaded):packages/infra/src/alchemy.run.tsvite.createBuilder().buildApp()succeeded with the Alchemy Cloudflare plugin andnodejs_compatdiffable-objectsimports from the packed monitor workernub run typecheck,nub run lint, andnub run formatpassed. Clef, through the AI Gateway, kept 3 of 9 tests.nub exec e2e run --changed-since origin/masterpassed those 3. No new test file was added: a check that only policespackage.jsonwould not catch this, and the proof is the pruned archive itself.Sanitized logs:
/opt/cursor/artifacts/prefix-pruned-failure.log/opt/cursor/artifacts/fixed-prune-and-vite.log/opt/cursor/artifacts/packed-archive-smoke.log/opt/cursor/artifacts/e2e-list.log/opt/cursor/artifacts/e2e-selected-run.logChecklist
.tegami/release entry, or explained why this pull request usesrelease:none.nub run typecheck,nub run lint,nub run format, andnub run test.