diff --git a/assets/dnd/combat-turns/prompts/dnd.combat_turns.yaml b/assets/dnd/combat-turns/prompts/prompt.yaml similarity index 100% rename from assets/dnd/combat-turns/prompts/dnd.combat_turns.yaml rename to assets/dnd/combat-turns/prompts/prompt.yaml diff --git a/assets/dnd/enemy-events/prompts/grounding.md b/assets/dnd/enemy-events/prompts/combat-grounding.md similarity index 100% rename from assets/dnd/enemy-events/prompts/grounding.md rename to assets/dnd/enemy-events/prompts/combat-grounding.md diff --git a/assets/dnd/enemy-events/prompts/dnd.enemy_events.yaml b/assets/dnd/enemy-events/prompts/prompt.yaml similarity index 97% rename from assets/dnd/enemy-events/prompts/dnd.enemy_events.yaml rename to assets/dnd/enemy-events/prompts/prompt.yaml index bd0da73..373c2dd 100644 --- a/assets/dnd/enemy-events/prompts/dnd.enemy_events.yaml +++ b/assets/dnd/enemy-events/prompts/prompt.yaml @@ -41,7 +41,7 @@ messages: - role: user content_file: ./sharedassets/common-dnd-npcs.md - role: user - content_file: ./grounding.md + content_file: ./combat-grounding.md - role: user content_file: ./task.md - role: user diff --git a/assets/dnd/item-events/prompts/dnd.item_events.yaml b/assets/dnd/item-events/prompts/prompt.yaml similarity index 100% rename from assets/dnd/item-events/prompts/dnd.item_events.yaml rename to assets/dnd/item-events/prompts/prompt.yaml diff --git a/assets/dnd/location-occurrences/prompts/locations.md b/assets/dnd/location-occurrences/prompts/location-registry.md similarity index 100% rename from assets/dnd/location-occurrences/prompts/locations.md rename to assets/dnd/location-occurrences/prompts/location-registry.md diff --git a/assets/dnd/location-occurrences/prompts/dnd.location_occurrences.yaml b/assets/dnd/location-occurrences/prompts/prompt.yaml similarity index 96% rename from assets/dnd/location-occurrences/prompts/dnd.location_occurrences.yaml rename to assets/dnd/location-occurrences/prompts/prompt.yaml index a91191d..c1caf1f 100644 --- a/assets/dnd/location-occurrences/prompts/dnd.location_occurrences.yaml +++ b/assets/dnd/location-occurrences/prompts/prompt.yaml @@ -33,7 +33,7 @@ messages: - role: user content_file: ./sharedassets/common-dnd-extraction-evidence.md - role: user - content_file: ./locations.md + content_file: ./location-registry.md - role: user content_file: ./task.md - role: user diff --git a/assets/dnd/locations/extract/prompts/dnd.locations.yaml b/assets/dnd/locations/extract/prompts/prompt.yaml similarity index 100% rename from assets/dnd/locations/extract/prompts/dnd.locations.yaml rename to assets/dnd/locations/extract/prompts/prompt.yaml diff --git a/assets/dnd/locations/normalize/prompts/dnd.locations.normalize.yaml b/assets/dnd/locations/normalize/prompts/prompt.yaml similarity index 100% rename from assets/dnd/locations/normalize/prompts/dnd.locations.normalize.yaml rename to assets/dnd/locations/normalize/prompts/prompt.yaml diff --git a/assets/dnd/npc-interactions/prompts/dnd.npc_interactions.yaml b/assets/dnd/npc-interactions/prompts/prompt.yaml similarity index 100% rename from assets/dnd/npc-interactions/prompts/dnd.npc_interactions.yaml rename to assets/dnd/npc-interactions/prompts/prompt.yaml diff --git a/assets/dnd/npcs/extract/prompts/dnd.npcs.yaml b/assets/dnd/npcs/extract/prompts/prompt.yaml similarity index 100% rename from assets/dnd/npcs/extract/prompts/dnd.npcs.yaml rename to assets/dnd/npcs/extract/prompts/prompt.yaml diff --git a/assets/dnd/npcs/normalize/prompts/dnd.npcs.normalize.yaml b/assets/dnd/npcs/normalize/prompts/prompt.yaml similarity index 100% rename from assets/dnd/npcs/normalize/prompts/dnd.npcs.normalize.yaml rename to assets/dnd/npcs/normalize/prompts/prompt.yaml diff --git a/assets/dnd/scene-descriptions/prompts/dnd.scene_descriptions.yaml b/assets/dnd/scene-descriptions/prompts/prompt.yaml similarity index 100% rename from assets/dnd/scene-descriptions/prompts/dnd.scene_descriptions.yaml rename to assets/dnd/scene-descriptions/prompts/prompt.yaml diff --git a/assets/dnd/scenes/prompts/dnd.scenes.yaml b/assets/dnd/scenes/prompts/prompt.yaml similarity index 100% rename from assets/dnd/scenes/prompts/dnd.scenes.yaml rename to assets/dnd/scenes/prompts/prompt.yaml diff --git a/assets/dnd/spells/prompts/dnd.spells.yaml b/assets/dnd/spells/prompts/prompt.yaml similarity index 97% rename from assets/dnd/spells/prompts/dnd.spells.yaml rename to assets/dnd/spells/prompts/prompt.yaml index 7eb4629..2b65460 100644 --- a/assets/dnd/spells/prompts/dnd.spells.yaml +++ b/assets/dnd/spells/prompts/prompt.yaml @@ -38,7 +38,7 @@ messages: - role: user content_file: ./sharedassets/common-dnd-npcs.md - role: user - content_file: ./catalog.md + content_file: ./spell-catalog.md - role: user content_file: ./task.md - role: user diff --git a/assets/dnd/spells/prompts/catalog.md b/assets/dnd/spells/prompts/spell-catalog.md similarity index 100% rename from assets/dnd/spells/prompts/catalog.md rename to assets/dnd/spells/prompts/spell-catalog.md diff --git a/internal/cli/production_contract_test.go b/internal/cli/production_contract_test.go index 754f589..c3c62fa 100644 --- a/internal/cli/production_contract_test.go +++ b/internal/cli/production_contract_test.go @@ -12,7 +12,6 @@ import ( "path/filepath" "reflect" "runtime" - "sort" "strings" "sync" "sync/atomic" @@ -153,42 +152,6 @@ func TestProductionCatalogCoversMaintainedConfigurations(t *testing.T) { t.Fatalf("enemy event extract validator chain = %#v, want %#v", got, enemyEventExtractChain) } - assetNames := productionAssetNames(t, components.assets.PromptFS) - requiredAssets := []string{ - "dnd.scenes/dnd.scenes.yaml", - "dnd.scenes/instructions.md", - "dnd.scenes/sharedassets/common-dnd-references.md", - "dnd.scenes/sharedassets/common-dnd-system.md", - "dnd.scenes/sharedassets/common-dnd-transcript-full.md", - "dnd.scenes/task.md", - "dnd.spells/dnd.spells.yaml", - "dnd.spells/catalog.md", - "dnd.spells/instructions.md", - "dnd.spells/sharedassets/common-dnd-references.md", - "dnd.spells/sharedassets/common-dnd-system.md", - "dnd.spells/sharedassets/common-dnd-transcript-chunk.md", - "dnd.spells/task.md", - "dnd.combat_turns/dnd.combat_turns.yaml", - "dnd.combat_turns/instructions.md", - "dnd.combat_turns/sharedassets/common-dnd-references.md", - "dnd.combat_turns/sharedassets/common-dnd-system.md", - "dnd.combat_turns/sharedassets/common-dnd-transcript-chunk.md", - "dnd.combat_turns/task.md", - "dnd.item_events/dnd.item_events.yaml", - "dnd.item_events/instructions.md", - "dnd.item_events/sharedassets/common-dnd-extraction-evidence.md", - "dnd.item_events/sharedassets/common-dnd-identity.md", - "dnd.item_events/sharedassets/common-dnd-references.md", - "dnd.item_events/sharedassets/common-dnd-system.md", - "dnd.item_events/sharedassets/common-dnd-transcript-chunk.md", - "dnd.item_events/task.md", - "dnd.enemy_events/dnd.enemy_events.yaml", - "dnd.enemy_events/grounding.md", - "dnd.enemy_events/instructions.md", - "dnd.enemy_events/task.md", - } - assertProductionContains(t, "production prompt assets", assetNames, requiredAssets) - catalog := catalogFromRegistries(registries) for _, test := range []struct { stage pipeline.ModuleStage @@ -984,28 +947,6 @@ func writeProductionContractConfig(t *testing.T, content string) string { return path } -func productionAssetNames(t *testing.T, getFS func() (fs.FS, error)) []string { - t.Helper() - fileSystem, err := getFS() - if err != nil { - t.Fatalf("load production prompt assets: %v", err) - } - var names []string - if err := fs.WalkDir(fileSystem, ".", func(path string, entry fs.DirEntry, err error) error { - if err != nil { - return err - } - if !entry.IsDir() { - names = append(names, path) - } - return nil - }); err != nil { - t.Fatalf("walk production prompt assets: %v", err) - } - sort.Strings(names) - return names -} - func assertProductionContains[T comparable](t *testing.T, name string, got, required []T) { t.Helper() available := make(map[T]struct{}, len(got)) diff --git a/internal/modules/dnd/chunk/scenes/prompt_assets.go b/internal/modules/dnd/chunk/scenes/prompt_assets.go index d169d08..1767ce4 100644 --- a/internal/modules/dnd/chunk/scenes/prompt_assets.go +++ b/internal/modules/dnd/chunk/scenes/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.scenes", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.scenes.yaml", Path: "prompts/dnd.scenes.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/combatturns/prompt_assets.go b/internal/modules/dnd/extract/combatturns/prompt_assets.go index ceb15c8..471dc53 100644 --- a/internal/modules/dnd/extract/combatturns/prompt_assets.go +++ b/internal/modules/dnd/extract/combatturns/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.combat_turns", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.combat_turns.yaml", Path: "prompts/dnd.combat_turns.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/enemyevents/prompt_assets.go b/internal/modules/dnd/extract/enemyevents/prompt_assets.go index bdd91e4..61bcf3e 100644 --- a/internal/modules/dnd/extract/enemyevents/prompt_assets.go +++ b/internal/modules/dnd/extract/enemyevents/prompt_assets.go @@ -16,8 +16,8 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.enemy_events", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.enemy_events.yaml", Path: "prompts/dnd.enemy_events.yaml"}, - {Name: "grounding.md", Path: "prompts/grounding.md"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, + {Name: "combat-grounding.md", Path: "prompts/combat-grounding.md"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/itemevents/prompt_assets.go b/internal/modules/dnd/extract/itemevents/prompt_assets.go index 37dec70..dc60503 100644 --- a/internal/modules/dnd/extract/itemevents/prompt_assets.go +++ b/internal/modules/dnd/extract/itemevents/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.item_events", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.item_events.yaml", Path: "prompts/dnd.item_events.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/locationoccurrences/prompt_assets.go b/internal/modules/dnd/extract/locationoccurrences/prompt_assets.go index 1a9effa..67b17eb 100644 --- a/internal/modules/dnd/extract/locationoccurrences/prompt_assets.go +++ b/internal/modules/dnd/extract/locationoccurrences/prompt_assets.go @@ -16,8 +16,8 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: PromptID, ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.location_occurrences.yaml", Path: "prompts/dnd.location_occurrences.yaml"}, - {Name: "locations.md", Path: "prompts/locations.md"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, + {Name: "location-registry.md", Path: "prompts/location-registry.md"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/locations/prompt_assets.go b/internal/modules/dnd/extract/locations/prompt_assets.go index 1508dc3..921637b 100644 --- a/internal/modules/dnd/extract/locations/prompt_assets.go +++ b/internal/modules/dnd/extract/locations/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: PromptID, ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.locations.yaml", Path: "prompts/dnd.locations.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/npcinteractions/prompt_assets.go b/internal/modules/dnd/extract/npcinteractions/prompt_assets.go index ee6084f..31bb190 100644 --- a/internal/modules/dnd/extract/npcinteractions/prompt_assets.go +++ b/internal/modules/dnd/extract/npcinteractions/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.npc_interactions", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.npc_interactions.yaml", Path: "prompts/dnd.npc_interactions.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/npcs/prompt_assets.go b/internal/modules/dnd/extract/npcs/prompt_assets.go index 473ef7d..40ffacc 100644 --- a/internal/modules/dnd/extract/npcs/prompt_assets.go +++ b/internal/modules/dnd/extract/npcs/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.npcs", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.npcs.yaml", Path: "prompts/dnd.npcs.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/scenedescriptions/prompt_assets.go b/internal/modules/dnd/extract/scenedescriptions/prompt_assets.go index 56b0027..6d8867a 100644 --- a/internal/modules/dnd/extract/scenedescriptions/prompt_assets.go +++ b/internal/modules/dnd/extract/scenedescriptions/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.scene_descriptions", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.scene_descriptions.yaml", Path: "prompts/dnd.scene_descriptions.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/extract/spells/prompt_assets.go b/internal/modules/dnd/extract/spells/prompt_assets.go index 502dda0..fd7a717 100644 --- a/internal/modules/dnd/extract/spells/prompt_assets.go +++ b/internal/modules/dnd/extract/spells/prompt_assets.go @@ -16,8 +16,8 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: "dnd.spells", ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.spells.yaml", Path: "prompts/dnd.spells.yaml"}, - {Name: "catalog.md", Path: "prompts/catalog.md"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, + {Name: "spell-catalog.md", Path: "prompts/spell-catalog.md"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "instructions.md", Path: "prompts/instructions.md"}, }, diff --git a/internal/modules/dnd/normalize/locations/prompt_assets.go b/internal/modules/dnd/normalize/locations/prompt_assets.go index 588eead..f15b1f6 100644 --- a/internal/modules/dnd/normalize/locations/prompt_assets.go +++ b/internal/modules/dnd/normalize/locations/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: PromptID, ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.locations.normalize.yaml", Path: "prompts/dnd.locations.normalize.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "candidates.md", Path: "prompts/candidates.md"}, }, diff --git a/internal/modules/dnd/normalize/npcs/prompt_assets.go b/internal/modules/dnd/normalize/npcs/prompt_assets.go index c03c54d..6b8571c 100644 --- a/internal/modules/dnd/normalize/npcs/prompt_assets.go +++ b/internal/modules/dnd/normalize/npcs/prompt_assets.go @@ -16,7 +16,7 @@ const promptAssetRoot = "assets/prompts" var promptAssetManifest = shared.PromptAssetManifest{ ModuleDir: PromptID, ModuleFiles: []promptfs.ModulePromptFile{ - {Name: "dnd.npcs.normalize.yaml", Path: "prompts/dnd.npcs.normalize.yaml"}, + {Name: "prompt.yaml", Path: "prompts/prompt.yaml"}, {Name: "task.md", Path: "prompts/task.md"}, {Name: "candidates.md", Path: "prompts/candidates.md"}, }, diff --git a/internal/modules/dnd/register/register_test.go b/internal/modules/dnd/register/register_test.go index c3c78e0..4d33628 100644 --- a/internal/modules/dnd/register/register_test.go +++ b/internal/modules/dnd/register/register_test.go @@ -42,22 +42,22 @@ func TestRegisterAddsDNDFamily(t *testing.T) { if err != nil { t.Fatalf("PromptFS() error = %v", err) } - if _, err := fs.ReadFile(promptFS, "dnd.npcs.normalize/dnd.npcs.normalize.yaml"); err != nil { + if _, err := fs.ReadFile(promptFS, "dnd.npcs.normalize/prompt.yaml"); err != nil { t.Fatalf("normalization prompt asset = %v, want registered private prompt", err) } for _, name := range []string{ - "dnd.scenes/dnd.scenes.yaml", - "dnd.spells/dnd.spells.yaml", - "dnd.npcs/dnd.npcs.yaml", - "dnd.combat_turns/dnd.combat_turns.yaml", - "dnd.enemy_events/dnd.enemy_events.yaml", - "dnd.item_events/dnd.item_events.yaml", - "dnd.npc_interactions/dnd.npc_interactions.yaml", - "dnd.scene_descriptions/dnd.scene_descriptions.yaml", - "dnd.npcs.normalize/dnd.npcs.normalize.yaml", - "dnd.locations/dnd.locations.yaml", - "dnd.locations.normalize/dnd.locations.normalize.yaml", - "dnd.location_occurrences/dnd.location_occurrences.yaml", + "dnd.scenes/prompt.yaml", + "dnd.spells/prompt.yaml", + "dnd.npcs/prompt.yaml", + "dnd.combat_turns/prompt.yaml", + "dnd.enemy_events/prompt.yaml", + "dnd.item_events/prompt.yaml", + "dnd.npc_interactions/prompt.yaml", + "dnd.scene_descriptions/prompt.yaml", + "dnd.npcs.normalize/prompt.yaml", + "dnd.locations/prompt.yaml", + "dnd.locations.normalize/prompt.yaml", + "dnd.location_occurrences/prompt.yaml", } { content, err := fs.ReadFile(promptFS, name) if err != nil { @@ -295,61 +295,6 @@ func TestRegisterAddsDNDFamily(t *testing.T) { if got := registries.ValidatorChains.Validators(pipeline.StageMerge, interactionextract.Key); got != nil { t.Fatalf("NPC interaction merge validator chain = %#v, want absent", got) } - assertAssetNamesContain(t, assets.PromptFS, []string{ - "dnd.scenes/dnd.scenes.yaml", - "dnd.scenes/instructions.md", - "dnd.scenes/sharedassets/common-dnd-references.md", - "dnd.scenes/sharedassets/common-dnd-system.md", - "dnd.scenes/sharedassets/common-dnd-transcript-full.md", - "dnd.scenes/task.md", - "dnd.spells/dnd.spells.yaml", - "dnd.spells/instructions.md", - "dnd.spells/sharedassets/common-dnd-references.md", - "dnd.spells/sharedassets/common-dnd-system.md", - "dnd.spells/sharedassets/common-dnd-transcript-chunk.md", - "dnd.spells/task.md", - "dnd.npcs/dnd.npcs.yaml", - "dnd.npcs/instructions.md", - "dnd.npcs/sharedassets/common-dnd-references.md", - "dnd.npcs/sharedassets/common-dnd-system.md", - "dnd.npcs/sharedassets/common-dnd-transcript-chunk.md", - "dnd.npcs/task.md", - "dnd.npcs.normalize/candidates.md", - "dnd.npcs.normalize/dnd.npcs.normalize.yaml", - "dnd.npcs.normalize/sharedassets/common-dnd-entity-reconciliation.md", - "dnd.npcs.normalize/sharedassets/common-dnd-system.md", - "dnd.npcs.normalize/sharedassets/common-dnd-transcript-windows.md", - "dnd.npcs.normalize/task.md", - "dnd.combat_turns/dnd.combat_turns.yaml", - "dnd.combat_turns/instructions.md", - "dnd.combat_turns/sharedassets/common-dnd-references.md", - "dnd.combat_turns/sharedassets/common-dnd-system.md", - "dnd.combat_turns/sharedassets/common-dnd-transcript-chunk.md", - "dnd.combat_turns/task.md", - "dnd.enemy_events/dnd.enemy_events.yaml", - "dnd.enemy_events/grounding.md", - "dnd.enemy_events/instructions.md", - "dnd.enemy_events/task.md", - "dnd.item_events/dnd.item_events.yaml", - "dnd.item_events/instructions.md", - "dnd.item_events/sharedassets/common-dnd-extraction-evidence.md", - "dnd.item_events/sharedassets/common-dnd-identity.md", - "dnd.item_events/sharedassets/common-dnd-references.md", - "dnd.item_events/sharedassets/common-dnd-system.md", - "dnd.item_events/sharedassets/common-dnd-transcript-chunk.md", - "dnd.item_events/task.md", - "dnd.npc_interactions/dnd.npc_interactions.yaml", - "dnd.npc_interactions/instructions.md", - "dnd.npc_interactions/sharedassets/common-dnd-npcs.md", - "dnd.npc_interactions/task.md", - "dnd.scene_descriptions/dnd.scene_descriptions.yaml", - "dnd.scene_descriptions/instructions.md", - "dnd.scene_descriptions/sharedassets/common-dnd-identity.md", - "dnd.scene_descriptions/sharedassets/common-dnd-references.md", - "dnd.scene_descriptions/sharedassets/common-dnd-system.md", - "dnd.scene_descriptions/sharedassets/common-dnd-transcript-chunk.md", - "dnd.scene_descriptions/task.md", - }) assertAssetNamesContain(t, assets.SchemaFS, []string{ "dnd_scenes.v1.json", "dnd_spells_llm.v1.json",