fix: remove debug tellraw from progress_bar_self#90
Merged
Conversation
…d 26_2)
Bug 1 — 1_20_3/validate: patch version check was 'matches 1' instead of 'matches 2' (v5.1.2)
→ false mismatch on any server that previously ran 5.1.1 and reloaded after 5.1.2 update
Bug 2 — 1_20_5/validate: same wrong patch check ('matches 1' → 'matches 2')
Bug 3 — 1_20_3/version_warn: debug line showed '(expected: 4 0 4 pre=0)' (stale v4.0.4)
→ fixed to '(expected: 5 1 2 pre=0)'; also fixed truncated hoverEvent value 'Reload Dat' → 'Reload DataLib'
Bug 4 — 1_20_5/version_warn: 'to reinitialize AME.' (copy-paste from macroEngine)
→ fixed to 'dataLib'; same truncated hover + stale expected version fixed
Overlay consistency — 1_21_5 and 26_2 version_warn also carried stale '(expected: 4 0 2 pre=0)'
→ fixed to '(expected: 5 1 2 pre=0)' in both overlays
Workflow — build.yml: 26_2 was missing from OVERLAY_DIRS and ALL_OVERLAYS
→ base-layer rsync did NOT exclude 26_2 (its files leaked into all targeted builds)
→ full build did NOT copy 26_2 overlay directory at all
→ added 26_2 to both lists
Bug 1 — color/from_score: hardcoded # prefix breaks real player targeting
Macro lines used `#$(player)` which always makes it a fake player score
target. A caller passing player="Steve" would check score of "#Steve".
Removed the hardcoded #; callers include # themselves for fake players.
Updated docstring accordingly.
Bug 2 — color/validate_exec: invalid macro key in inline NBT compound
`$execute if data ... color._names{$(color):1b}` is invalid — macro
substitution cannot be used as a key inside a `{key:value}` literal.
Fixed to use NBT path syntax: `color._names.$(color)` which IS valid
macro substitution in a path argument position.
Bug 3 — color/resolve: wrong `with storage` target loses $(color) arg
Called `resolve_exec with storage datalib:engine color` which passes the
color compound {palette:{...}, gradients:{...}} as macro source.
resolve_exec looks for key `color` in that compound — it doesn't exist,
so $(color) is undefined and the function call aborts silently.
Fix: write $(color) into a temp compound first, then call resolve_exec
with that temp so the key is present and correct.
Bug 4 — gamerule/set,get,reset: check_all guard always blocks
All three functions used `check_all` as their execution guard.
check_all includes input_check (the full 25-section validation pipeline)
which at Section 4 requires `datalib:input.func` to be set.
The gamerule API doesn't use the func-dispatch system, so func is never
set → input_check always returns 0 → check_all returns 0 → the gamerule
functions are completely non-functional (always blocked).
Fixed by replacing check_all with cmd_gate in all three functions.
cmd_gate only checks engine load state and permission level — correct for
direct API calls that don't go through the dispatch engine.
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.
Removes the
tellraw @a[tag=datalib.debug]line fromsystems/string/progress_bar_self.Progress bar is a hot-path function called every tick per player — the debug tellraw fires on every invocation regardless of any condition, causing unnecessary chat spam and performance overhead even in production.