feat(editor): WMOD JSON round-trip closure

Adds --export-wmod-json / --import-wmod-json. Variable-length
dependency arrays serialize as JSON int arrays, enabling
hand-edits of dependency graphs. All 3 presets (std-addons /
ui-replacement chain Bartender4->ElvUI->SuperOrders / utility)
byte-identical binary roundtrip OK.

Cycle detection live-tested: hand-mutated ui.wmod.json to add
Bartender4 -> SuperOrders dep, re-imported, validator emits
"dependency cycle detected: 10 -> 12 -> 11 -> 10 — addon-loader
would deadlock" with the full back-edge path extracted.

CLI flag count 1326 -> 1328.
This commit is contained in:
Kelsi 2026-05-10 03:33:29 -07:00
parent 9df1fa39cd
commit fa30db7ae1
3 changed files with 136 additions and 0 deletions

View file

@ -385,6 +385,7 @@ const char* const kArgRequired[] = {
"--export-wgch-json", "--import-wgch-json",
"--gen-mod", "--gen-mod-ui", "--gen-mod-util",
"--info-wmod", "--validate-wmod",
"--export-wmod-json", "--import-wmod-json",
"--gen-weather-temperate", "--gen-weather-arctic",
"--gen-weather-desert", "--gen-weather-stormy",
"--gen-zone-atmosphere",