From 87d08f0151e643951769e323995f1c5ed89ee200 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Fri, 18 Sep 2026 01:50:17 -0400 Subject: fix: harden economy recovery, shutdown concurrency, world validation, and inventory-loss paths --- internal/validate/shipped_data_test.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 internal/validate/shipped_data_test.go (limited to 'internal/validate/shipped_data_test.go') diff --git a/internal/validate/shipped_data_test.go b/internal/validate/shipped_data_test.go new file mode 100644 index 0000000..9c5bef1 --- /dev/null +++ b/internal/validate/shipped_data_test.go @@ -0,0 +1,20 @@ +package validate + +import ( + "path/filepath" + "testing" +) + +// TestShippedDataHasNoUnknownFields guards the authored content tree against +// misspelled or stale YAML keys: every data file is decoded with +// KnownFields(true), so an unread key (like the old exit-level +// set_player_flags or the legacy triggers key) fails CI instead of being +// silently discarded at load time. +func TestShippedDataHasNoUnknownFields(t *testing.T) { + dataDir := filepath.Join("..", "..", "data") + for _, issue := range validateKnownFields(dataDir) { + if issue.Level == "ERROR" { + t.Errorf("%s", issue.Message) + } + } +} -- cgit v1.2.3