Skip to content

schemas: add registry tags schema and audit - #1194

Open
VasilisDragon wants to merge 1 commit into
PrismarineJS:masterfrom
VasilisDragon:vasilis-tags-schema
Open

schemas: add registry tags schema and audit#1194
VasilisDragon wants to merge 1 commit into
PrismarineJS:masterfrom
VasilisDragon:vasilis-tags-schema

Conversation

@VasilisDragon

@VasilisDragon VasilisDragon commented Jun 12, 2026

Copy link
Copy Markdown

Problem

This PR was originally based on #1080's 1.21.8 four-registry output. The replacement generator work uses full resource locations and can emit any keyed registry, so the schema and repository checks need to cover the final representation.

Fix

  • validate full registry, tag and member resource locations while preserving empty tags;
  • reject duplicate members and unresolved #tag references;
  • add a PC-only audit for canonical ordering, dataPaths targets, orphan files and mapped member references;
  • keep additional registry types open while requiring block and item registries in tag-bearing PC data.

Test

  • focused positive, negative and corruption controls pass;
  • the full tools/js suite passes;
  • the schema compiles to the generated Tags type;
  • duplicate validation adds about 9 ms across the three tested tag artifacts.

Scope

Schema and audit only. No generated tags data or dataPaths changes are included here.

Refs

@VasilisDragon VasilisDragon changed the title schemas: add tags_schema.json and wire tags into the schema test schemas: add registry tags schema and audit Aug 29, 2026
@VasilisDragon

Copy link
Copy Markdown
Author

updated this with the finished schema/audit side of the tags work. rebased on current master and all checks are green

@VasilisDragon

Copy link
Copy Markdown
Author

rebased again after master moved; all checks are green

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