Repository navigation
chore: continue StackAnvil maintenance - #23
Merged
Merged
Conversation
Retain complete inventory collections while expanding fixed-grid cells near the viewport and keyboard selection. Preserve source indices, scroll extent, action targets, and focus across layout updates so large Creative catalogs fit the existing scene budget. Keep unsupported hotbar destruction on the ordinary screen before item changes, and construct Creative item previews through the connection-owned native item factory so metadata-only items do not acquire a false block identity. Installed Creative search and full native parity still require validation.
|
Caution Review failedThe pull request is closed.
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
Suppress synthetic keepalives while a modern Java client is between configuration and play protocols. Recheck the current states on the connection event loop so a queued task cannot send through a transition that began after scheduling. Preserve configuration keepalives for older Java clients. A focused regression covers acknowledgment, queued state changes, and legacy clients. The complete build passes, and the core and add-on stacks replay without cached ancestors. Lifeboat spawn mapping and authored-form fallback remain separate investigations.
Parse raw value tokens and redundant trailing closing groups without discarding the entire authored scene. Lifeboat uses both in its caption bindings, which previously forced the 23-button Navigator into Java dialog fallback. Preserve expression depth, output bounds, and original response identities. The complete build passes with 3152 tests and the installed add-on displays the authored Navigator. Extend private scene observations with the player block states and loaded palette identity to trace the separate spawn collision bug.
Use the current effective Creative mode for published cell permission while retaining recipe availability and captured search policies. Native 1.26.60.5 controls bypass recipe-disabled colors in Creative mode, and the snapshot regression restores recipe restrictions after returning to Survival. The full build and fresh core stack replay pass. Live icon backgrounds are corrected; successful catalog request dispatch remains under investigation.
Exclude data-driven vanilla block types that StartGame does not advertise. Keeping their states unconditionally shifts Lifeboat runtime IDs and turns empty spawn cells into solid mushroom stems. Fold the fix into the owning block patch with versioned registry metadata and targeted regression coverage. Native captures and live registries match all 22,543 shared state IDs after filtering 1,417 unadvertised states. Installed add-on and ViaProxy checks render the lobby, walk through spawn, and open the authored Navigator. The full build passes with 3,156 passing tests and 325 skipped tests. A fresh replay applies all 105 core patches.
Let explicit factories own their grid cells, resolve relative templates in the declaring namespace, and retain bound population limits. This removes the duplicated empty cells that clipped the Lifeboat Navigator into one column. The full stack build and fresh patch replays pass. Live Lifeboat checks show eight main controls in two columns and preserve World Games, Mini Games, SkyWars, and Solo selection responses.
Validate the requested cursor stack after applying its transfer count while keeping the unit craft result unchanged. The prior quantity check rejected a full stack against the one-item creative sample. Targeted regressions cover requests for one and 64 items. The installed add-on sends a 64-rail pick and hotbar placement that the Bedrock server accepts.
Read the opaque NetherNet network ID from Gatherings join responses instead of requiring an IP address and port. Keep socket destinations separate and pass JSON-RPC targets through the private recorder without an appended Java port. A current captured response passes the parser and a fresh SoulSteel browser join reaches pack negotiation. Transport loss before StartGame remains unresolved. Target validation also recognizes the current Hive domain so translated recordings retain their existing guard.
Resolve current catalog destinations through Gatherings and distinguish HTTP NetherNet signaling from hosted Xbox network IDs. Decode the single presence override string so current hosted StartGame packets preserve their telemetry fields. Fold reachable actor model and texture selection into the appearance owner. This removes the Cartesian furniture-preview expansion that exhausted a 4 GiB heap on OneBlockOnline while retaining independent selectors and conservative fallbacks. Full builds, standalone protocol checks and fresh patch replays pass. Mineville reaches its lobby over HTTP NetherNet. A private conversion fixture processes all 867 captured actors in 2 GiB; intermittent hosted transport losses still prevent a complete live parity claim.
Preserve printable resource names, optional image policy, and native frame strips within bounded image decoding. These resource failures replaced Enchanted menus with ordinary controls. Retain sibling extents during stack fill and exact fractional grid capacity so authored cards keep their geometry and response identities. Fold the fixes and native comparison evidence into the owning UI patches.
Honor the native entrance animation's initial-alpha scale so opening the Survival inventory keeps the authored translucent world backdrop. Version-matched native factory and updater code establish the scale, and a fade regression fails before the correction. Retain stable hit regions, input ancestor geometry and collection windows. Invalidate them when layout, focus or control visibility changes. Reuse the shared painter order and separate authored layers into Java GUI strata to bound repeated overlap searches during rendering. Validate the full dependency and add-on build, clean patch replay, installed backdrop rendering, and server-authoritative pickup and drag distribution. Broader modpack timing, menu overlap and shield parity remain open.
MegaSMP can clear effect IDs through experimental Freezing even though that effect has no translated Java mapping. Cancel absent-state removals after consuming the payload while preserving unsupported-addition errors and known-effect packet projection. A pinned native control preserves Speed across removal of absent ID 38, then removes Speed normally. Registered-handler tests reproduce the old failure, and the original captured clear sequence replays without it. Record the packet fixture's shared test-infrastructure prerequisites and keep this upstream-sized change before deferred patches. Full builds and fresh replay of the complete stack pass. The live server's converted pack still exceeds Java's download cap, so rendering and movement parity remain separate work.
Keep validated JPEG bytes in converted UI packs and transport the selected format through program export. Decode them with a bounded reloadable client texture so resource replacement and GPU ownership follow the normal texture lifecycle. This prevents MegaSMP image expansion from exceeding Java’s download cap. Full builds, clean patch replay, decoded-pixel controls and an installed resource-reload check pass. A fresh join consumes all effect removals and walks grounded; custom block mappings and the attempted menu input remain unresolved.
Keep a zero-valued timeline entry for an individual Molang parser syntax error so it cannot discard the entire actor graph. Structural validation and expression limits still reject malformed or oversized declarations. A version-matched native control preserves the captured MegaSMP script and subsequent pose updates. The regression fails before the correction and passes afterward. Full builds, clean patch replay and offline checks pass. The installed complete MegaSMP replay retains both affected graphs and poses; unresolved mappings still fail the broader rendering gate.
Index controls with authored animation tracks for each resolved subtree. Rebuild the index after root changes or binding reconciliation, while preserving hidden tracks, event handling and independent control clocks. The installed Survival inventory repeatedly walks static control children in its render-thread profile. The new traversal preserves its slot and cursor state, backdrop and scene replay checks. Targeted animation tests and a fresh full-stack apply cover clock scope and patch export.
Official Bedrock 1.26.60.5 keeps held items visible behind the Survival inventory while hiding the gameplay HUD. Skip HUD extraction while the current screen is an authored native container to match that behavior. Keep local HUD settings and server visibility restrictions unchanged so closing the inventory immediately restores normal rendering. First-person item rendering and the separate shield-pose report remain independent.
Record native and installed local-server checks for resting, blocking, release and inventory transitions. Keep the reported extreme pose and broader shield rendering limits open because these controls do not reproduce them.
Position and item quantity alone cannot distinguish a missing movement impulse from a server hotbar selection change. Record the held item, selected slot and wall-clock timestamp at the existing observation boundary so captured movement can be correlated with input markers and packet ordering.
Match the native Survival air-use envelope for pearls and wind charges. Without its declared debit, a delayed BDS hotbar selection can restore the pearl slot after the player selects a wind charge. Advance predicted core quantities after sending the request so silent acceptance cannot leave the next throw using a stale count. Preserve local stack network identities. Fold the shared behavior into the existing deferred air-use patch. Native 1.26.60.5 protocol 2225 captures establish the request fields and equipment ordering. Focused regressions cover slot switching, repeated debits, the final item and send-before-commit ordering. This does not close the separate reported repeated movement rollback.
Reuse painter traversal and input frames while the container layout, pointer, component state and opacity stay unchanged. Installed inventory profiles show repeated property-map lookups during otherwise stable frames. Items, portraits and image animations still render every frame. Expose alpha changes through the shared animation runtime and include toggle changes in input visual revisions. Regressions retain fades, reset events and same-pointer checked-state changes. Fold both changes into their owning patches and preserve their existing dependency order.
Add a persistent presentation setting for clients affected by native menu rendering or mod compatibility problems. Keep Bedrock layouts enabled by default because server packs can depend on their controls. Gate storage, cooking and player admission before scene construction and recheck delayed presentation. Preserve core inventory authority, server forms and the existing ordinary input path. Document the setting and its custom-layout limitation. Validate the full add-on stack and dependencies, the disabled production presentation boundary, and a live BDS session covering all four screen families, pickup, return and reopen with accepted inventory requests.
Run authored pop exits before removing an inventory screen. Retain every participating completion track through binding refresh so a short size animation cannot truncate the longer fade. Show the gameplay HUD during the exit and consume input until the still-owned screen closes. Bedrock 1.26.60.5 Escape frames provide the slide and fade reference. Regression tests cover different durations, repeated close requests, refresh, successor chains, input retirement and replacement ownership. The full dependency/add-on build and installed inventory reopen checks pass without changing the item total. Generic storage still resolves content without its full host shell, and native closing-on-hurt policy remains unfinished. Keep the cooking guard and document those limits instead of claiming complete screen parity.
Resolve storage programs from their complete authored screen so backdrops, close controls and exit tracks remain part of the scene. Forward the original local damage cause with its actor lifetime, then consume the player-owned pending check and counter across screen changes. Require a versioned core contract before admitting screens that depend on that policy, while retaining separate guards for unfinished cooking bindings. Determine paired-chest size before selecting its default caption and keep custom names intact. Fold these changes into their owning patches and update packet, lifecycle and transport fixtures for complete screen graphs. Native 1.26.60.5 runtime controls establish the server-event policy order. Full builds, fresh patch replays and installed direct/proxy controls cover storage families, accepted item requests and the shared hurt gate. Exact frame timing, client-predicted damage and the original modpack reports remain open.
Convert text channels with single-precision multiplication, truncation and byte clamping, including opacity. Rounding changes authored 0.3 to byte 77 instead of the native 76 and shifts settled container captions. Fold the correction into the shared renderer patch and keep image tint independent. Native 1.26.60.5 instructions, fractional-byte controls and live glyph writes establish the conversion. Both installed Java routes match the native title and inventory-label rectangles. Complete screen pixels and animation timing remain separate requirements.
Supply the controller indices referenced by the Bedrock 1.26.60 inventory graph. Missing indices resolved to null and made physical category and layout selections send index zero. Keep the correction in the Creative catalog owner and exercise physical selection through exported programs in both layouts. Direct and ViaProxy controls retain the complete 1,980-item source, and BDS accepts 64-rail pickup and placement. Native profile initialization and the reported modpack lag remain open.
An absent inventory-options packet leaves the native Player profile at its constructor defaults. The previous implementation treated the profile as absent too, retaining the controller's transient filter flag and publishing an unselected, empty first inventory. Use version-matched native defaults while preserving later packet values, including explicit zero tabs. Keep filter-only Java edits from replacing the automatic layouts. Fold the correction into the owning options and retained-model patches, with behavioral model and packet regressions. Ghidra, original-instruction controls, complete fresh-world direct/proxy journals, and first/reopen screen observations validate the correction. Native frame timing and the original modpack regressions remain open.
Record server-accepted insertion, extraction, and reinsertion on direct and ViaProxy routes, including contents retained after reopening. Keep official Bedrock first-request behavior and the reported modpack rendering problems explicitly unresolved.
Record the installed movement and genuine skeleton-block checks without claiming a fix for the reported extreme shield pose or native hit-timing parity.
Use the unmodified public data-driven block snapshot as the source of truth instead of maintaining a derived JSON list. All 98 registrations match the captured BDS and native reference, while palette ordering and current StartGame admission stay unchanged. Record the pinned source, checksum, update procedure, and bundled license. The full build, palette regressions, artifact checks, and fresh patch replay pass.
Match official Bedrock 1.26.60.5 primary catalog clicks: discard the held stack first, then pick the selected item on the following click. Fold the action into the Creative catalog patch with confirmed cursor identity, discard admission, and a pre-request snapshot for rejection rollback. Validate same-item and different-item clears in the native client and both installed Java routes. Each route completes four server-accepted requests with cursor counts 64, zero, 64, zero. Full builds and fresh core patch replay pass; secondary and bulk actions remain open.
Match official Bedrock 1.26.60.5 secondary take/discard and Shift-click placement, including cursor preservation, merge priority, partial capacity, and a full-inventory no-op. Retain the pressed input through modifier release and snapshot all affected slots for rejection rollback. Suppress unchanged Java Creative slot echoes during reopening so existing stacks retain their network identity. Real count and native metadata changes still replace items. Fold the changes into their owning core and add-on patches; later inventory patches only refresh context offsets. Full builds, targeted regressions, plain patch replay, offline validation, and installed direct and ViaProxy request controls pass. Bulk Survival recipes and complete native screen parity remain open.
Bind the catalog-only toolbar's full-stack destruction to a separately advertised backend capability. Validate the opening, generation, layout and confirmed discard permission before predicting changes, preserving the cursor and rollback snapshot. Dispatch authored quick-move commands directly for player slots. Java's pointer gesture swaps stacks when the cursor is occupied, while the target Bedrock client preserves the cursor and moves the selected stack. Fold both changes into their owning patches and retain version-matched native evidence and boundary regressions.
AlexProgrammerDE
marked this pull request as ready for review
November 1, 2026 11:30
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.
Continue compatibility work after the 0.4.2 release.
Plain offhand shield controls cover native crouching and installed crouch/Use start and release through local NetherNet HTTP. Controller snapshots retain the resting transform across inventory changes and restore it after blocking. The extreme reported pose, movement and hit reactions, patterned shields, and third-party mod combinations remain unverified.
Preserve native throwable prediction across hotbar changes. Official Bedrock 1.26.60.5 protocol 2225 captures declare one-item Survival debits for pearls and wind charges, without wire stack network IDs. The previous unpredicted use lets a delayed BDS selecting-hotbar command restore the pearl slot after the player selects wind. The updated installed client retains wind selection and receives both projectiles in rapid, landed and floor controls. Commit the predicted quantity after sending its transaction so silent server acceptance cannot leave repeated throws with stale counts. Repeated wind throws reach BDS with successive debits and the console confirms the remaining quantity. Creative checks retain quantities without a declared debit. Regression tests cover final-stack removal, local network identity and send-before-commit ordering. The reported repeated movement rollback remains unreproduced; these controls do not establish native physics parity. Private movement audits include wall-clock time, held item identity and selected slot.
Preserve the configuration keepalive fix and versioned inventory publication checks from the earlier maintenance work.
Validation: all four project builds pass (3,240 tests passed, 325 skipped, no failures). Offline tooling and patch-metadata checks pass. Plain-apply replay matches the complete 106-patch core tree and 39-patch add-on tree. Installed baseline and optimized inventory scene replays pass transport and rendering checks. A private conversion fixture processes all 867 captured OneBlockOnline actors within a 2 GiB heap and emits 4,068 model selections. Each preview emits 719 models and reports one unresolved source pair in the captured packs.
A final installed Enchanted capture retains the authored hub menu for a complete 120-second scene. The native and final add-on exports have identical names and contents for all 58 pack files.
The current server survey reaches visible Lifeboat, CubeCraft, Galaxite, Mineville, and MegaSMP lobbies. Hosted NetherNet transport losses still prevent complete live validation of the protocol and conversion fixes. Enchanted gameplay after transfer remains unverified. MegaSMP still reports seven missing custom block mappings, and the attempted hotbar menu input opens no screen. Rob a Mob and Mob Maze join resolution times out. Hive's translated-client guard remains in place. These checks do not establish complete gameplay or native visual parity.
Raw traffic, server packs, account data, screenshots, and Ghidra artifacts remain private.