Skip to content

Commit b2740f2

Browse files
tastybentoclaude
andcommitted
Pin E2E npm deps via committed lockfile (fixes CI 1.21.11 support)
The on-demand E2E run failed in CI with "Server version '1.21.11' is not supported. Latest supported version is '1.21.4'." — without a committed package-lock.json, CI's fresh npm install resolved an older mineflayer/minecraft-data than the local run, and it didn't know 1.21.11. Commit the lockfile (mineflayer 4.37.1 / minecraft-data 3.111.0, which support 1.21.11) so installs are reproducible, and key the npm cache on the lockfile (also invalidates the stale node_modules the failed run cached under the package.json hash). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NKxodNE4h3TsSHMqDEeC8v
1 parent a2248a1 commit b2740f2

3 files changed

Lines changed: 1048 additions & 2 deletions

File tree

.github/workflows/e2e.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ jobs:
5757
uses: actions/cache@v4
5858
with:
5959
path: e2e/src/test/e2e/node_modules
60-
key: e2e-npm-${{ hashFiles('e2e/src/test/e2e/package.json') }}
60+
# Key on the committed lockfile so the cache tracks the exact resolved versions
61+
# (mineflayer/minecraft-data must support the target Minecraft version).
62+
key: e2e-npm-${{ hashFiles('e2e/src/test/e2e/package-lock.json') }}
6163

6264
- name: Build Challenges jar (Maven)
6365
run: mvn -B -DskipTests package

e2e/.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ build/
88
# Node / TypeScript test artifacts
99
src/test/e2e/node_modules/
1010
src/test/e2e/dist/
11-
src/test/e2e/package-lock.json
11+
# package-lock.json IS committed — it pins mineflayer/minecraft-data to versions that
12+
# support the target Minecraft version, so CI installs are reproducible.

0 commit comments

Comments
 (0)