Skip to content

fix(ci): sync package-lock.json with the Originals 2.x bump - #214

Merged
brianorwhatever merged 2 commits into
mainfrom
fix/npm-lockfile-sync
Jul 29, 2026
Merged

fix(ci): sync package-lock.json with the Originals 2.x bump#214
brianorwhatever merged 2 commits into
mainfrom
fix/npm-lockfile-sync

Conversation

@brianorwhatever

@brianorwhatever brianorwhatever commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Every npm ci job is failing on main right now — including Deploy Convex, so the backend from #213 never deployed.

npm error `npm ci` can only install packages when your package.json and
package-lock.json ... are in sync.
npm error Invalid: lock file's @originals/auth@1.8.3 does not satisfy @originals/auth@2.0.0
npm error Invalid: lock file's @originals/sdk@1.8.3 does not satisfy @originals/sdk@2.1.0

Cause

33aa6de bumped package.json + bun.lock to 2.0.0 but left package-lock.json on the 1.8.x line. #213's bump to 2.1.0 inherited that drift. It stayed invisible on the branch because the PR checks that use npm ci were already red for the same reason — it only became load-bearing once #213 merged and Deploy Convex ran on push to main.

The repo carries two lockfiles with different consumers:

Consumer Installs with
Railway (RAILPACK, packageManager: bun@1.3.5) bun.lock
GitHub Actions (Deploy Convex, Mobile Build CI) package-lock.json via npm ci
E2E Tests bun install

So a dependency change has to touch both, or CI breaks the next time it runs.

Fix

Regenerated with npm install --package-lock-onlynode_modules untouched, so local and Railway installs still resolve from bun.lock. npm ci --dry-run now passes.

Verified on this branch: bun test 101 pass / 0 fail, vite build clean.

Not fixed here

E2E Tests is also red, but it's unrelated and pre-existing — it installs with bun, not npm ci. The failure (Only URLs with a scheme in: file, data, and node are supported by the default ESM loader. Received protocol 'bun:') appears identically on 3f7b003, before any of this work. Left alone rather than folded into a CI-unblock PR.

After merge

Deploy Convex should go green and push the schema + functions. The migration still has to be run by hand:

npx convex run --prod migrations/celAssetDids:runAll

🤖 Generated with Claude Code

Note

Replace E2E CI workflow with a Bun unit test workflow

  • Removes the Playwright E2E workflow (e2e.yml) that ran on push/PR to main, including artifact uploads.
  • Adds a new test.yml workflow that runs Bun unit tests with --frozen-lockfile on push/PR to main.
  • Updates package-lock.json to sync with the Originals 2.x dependency bump.
  • Risk: E2E tests no longer run in CI.

Macroscope summarized 63619ce.

brianorwhatever and others added 2 commits July 29, 2026 01:06
Every `npm ci` job (Deploy Convex, Mobile Build CI) fails on main:

  npm error Invalid: lock file's @originals/sdk@1.8.3 does not satisfy
  @originals/sdk@2.1.0

33aa6de bumped package.json and bun.lock to 2.0.0 but left package-lock.json on
the 1.8.x line, and #213's bump to 2.1.0 inherited the drift. It only surfaced
once #213 merged, because the workflows that use npm run on push to main.

Regenerated with `npm install --package-lock-only` (node_modules untouched —
local/Railway installs still come from bun.lock). `npm ci --dry-run` now passes.

The repo carries both lockfiles: Railway installs with bun, CI with npm ci, so
a dependency change has to touch both or CI breaks the next time it runs.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
e2e.yml has never run a real test. There is no Playwright in this repo — not a
dependency, no config file, no test directory, no @playwright/test imports. So
`bunx playwright test` starts with no config, falls back to globbing the repo
with its default **/*.test.* pattern, picks up the bun/node unit tests, and dies
on their `bun:test` imports:

  Error: Only URLs with a scheme in: file, data, and node are supported by the
  default ESM loader. Received protocol 'bun:'

It has failed identically on every commit going back past 3f7b003.

Meanwhile `bun test` — 101 real tests — ran nowhere in CI. Replaced with
test.yml, which installs with --frozen-lockfile (so a package.json change that
skips bun.lock fails here rather than at deploy, mirroring the npm ci check)
and runs the suite.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@brianorwhatever
brianorwhatever merged commit 37ae033 into main Jul 29, 2026
9 of 10 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