Список изменений
MariesLib 0.1.1-beta.1
What's New
Milestone system: Cumulative intake milestones are fully operational. They track lifetime totals per value key, fire once per player, and can grant potion effects and/or vanilla advancements on completion. Define them via datapack JSON or KubeJS scripts.
KubeJS: advancementId support added to registerMilestone(). MarieEvents.milestoneTriggered event bridge added for reacting to completions in scripts.
Export framework: New ExportResolver<T> API for consuming mods to export per-registry-entry data to editable JSON. Register with MarieAPI.registerExportResolver, then run:
/marieslib dump <resolverId>/marie dump <resolverId>
Output is written to config/<modid>/<resolverId>_export.json.
Config validation: New ConfigValidator API for consuming mods to validate their own config files on demand. Register with MarieAPI.registerConfigValidator, then run:
/marieslib validate <modid>/marie validate <modid>/<modid> validate
Tag audit: New tag-audit framework for consuming mods to register rules and scan tag data for issues. Register with MarieAPI.registerTagRule and MarieAPI.registerTagAuditContext, then run:
/marieslib audit_tags <modid>/marie audit_tags <modid>
Report is written to config/<modid>/tag_audit_report.json.
Explicit bootstrap: Consuming mods must now call MariesLibBootstrap.attach or bootstrap explicitly. MariesLib no longer auto-bootstraps when MarieLibContext is unregistered.
Fixed
- Bundled
scanner_spec.jsonnow loads from the consuming mod's jar instead of failing withBundled scanner_spec.json missing.
Notes
- Requires explicit bootstrap wiring — see
MariesLibBootstrap.attach. - Nourished 0.2.6-beta.1+ is required to use the milestone system end-to-end.
- Toolkit commands (
scan,diagnostics,reload, etc.) remain under each consumer mod's namespace (e.g./nourished scan). Library-only commands (status,mods,api,registries,dump,validate,audit_tags) are on/mariesliband/marie.

