Conversation
* fix(mc): auto-trim transparent dead space before resizing to 64x64 Crops to the content bounding box before scaling so sprites fill the full 64x64 frame instead of shrinking into a tiny centered dot. * feat(mc): add kbve_scythe custom item to resource pack Trimmed and resized large_sythe.png to 64x64 via resize64 script, added as kbve_scythe with item definition, model, and texture.
Both create_worktree and atomic_function now run git submodule update --init --recursive after worktree creation so submodules like apps/mc/pumpkin are checked out automatically.
…e pack test (#7252) vitest.config.ts used a monorepo-root-relative include path which broke test discovery when @nx/vitest inferred the test target from the project directory. Also adds an e2e spec for the HTTP resource pack endpoint on port 8080.
…7253) The MC server was using a bare `docker build` command without any cross-run caching. Every CI build recompiled all Pumpkin cargo dependencies from scratch because BuildKit cache mounts are ephemeral on GitHub Actions runners. Switch to `@nx-tools/nx-container:build` executor with GHCR registry-based caching (cache-from/cache-to), matching the pattern already used by all Axum apps (discordsh, herbmail, memes, irc-gateway). Cargo-chef layers and dependency builds are now persisted between CI runs via the `:buildcache` tag. Co-authored-by: Al @h0lybyte <5599058+h0lybyte@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
…7255) Move models and textures into weapons/ and rewards/ subdirectories for better organization as the item catalog grows.
* fix(mc): layer Dockerfile into parallel build stages for pumpkin and plugin
Split the monolithic builder stage into separate deps, builder, and
plugin-builder stages so BuildKit can compile the server binary and
plugin cdylib concurrently. The plugin stage reuses cooked third-party
deps via CARGO_TARGET_DIR, eliminating redundant compilation.
* feat(mc): tier workspace crate builds into foundation and core layers
Pre-build workspace crates in dependency order across isolated Docker
layers so only the changed tier recompiles on rebuild:
deps → foundation (nbt, api-macros, util, data, macros, config)
→ core (world, protocol, inventory)
→ builder | plugin-builder (parallel via BuildKit)
When only the root pumpkin crate or plugin source changes, foundation
and core layers are fully cached.
---------
Co-authored-by: Al @h0lybyte <5599058+h0lybyte@users.noreply.github.com>
The @nx/vitest plugin infers a bare `test` target from vitest.config.ts, which runs vitest without the Docker container. This causes CI failures in `nx affected --target=test` since the MC server and resource pack HTTP server are only available inside the Docker image. The proper e2e pipeline (`nx e2e mc`) handles container lifecycle and remains unchanged.
…y review (#7259) - Add dev to pull_request branches so PRs are scanned before merge - Add weekly scheduled scan (Mondays 06:30 UTC) for newly disclosed CVEs - Upgrade query suite from default to security-and-quality - Add dependency-review job to block PRs introducing high-severity deps
… Pumpkin submodule (#7260) cargo-chef cook strips workspace.lints from the root Cargo.toml, breaking crates that inherit lints. Building individual crates with -p also breaks tokio feature unification (pumpkin-protocol needs tokio/net transitively). Fix both by restoring Cargo.toml/Cargo.lock after cook and switching to full workspace builds at each layer. Also update Pumpkin submodule to latest upstream master (69a37afd).
#7261) Refactor give commands from individual executors to a DashMap-backed item registry. New items only need a single map.insert() entry. - Add rust_stone block texture (64x64 via resize64) with blockstate, model, and item definitions - Add spartan_shield item texture (64x64) with model and item defs - Spartan shield: mid-tier durability (200 vs vanilla 336), reflects 3 thorns damage on hit via ShieldBlockHandler event, flame particles - Register ShieldBlockHandler for PlayerInteractEntityEvent - Add dashmap and pumpkin-protocol dependencies
Release: 4 features, 5 fixes, 1 refactor, 1 chore → Staging
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.
Production Release from Staging
Summary
Pre-merge Checklist
Changes by Category
Features
be99fa5)5bd97c0)70d326c)8eddea3)Bug Fixes
7b6a49b)c6366c3)8bb0a46)cbcf266)c7067ba)Refactoring
2e10416)Chores
e02ddd6)Merge Commits
c8acfb2)Other Changes
ee41418)Important Notes
This PR is automatically maintained by CI • Last updated: 2026-02-25T15:09:04.189Z