package combat_semantics

import "gitea.maximumdirect.net/eric/notarius/internal/framework/llm"

const (
	PromptID           = "dnd.scene_descriptions.validate_combat"
	ResponseSchemaKey  = llm.ResponseSchemaKey("dnd_scene_combat_semantics_llm")
	ResponseSchemaID   = "notarius.dnd.scene_descriptions.combat_semantics.llm"
	ResponseSchemaName = "notarius_dnd_scene_combat_semantics_llm_v1"
	SchemaVersion      = "v1"
)

func loadResponseSchema() (llm.ResponseSchema, error) {
	assets, err := moduleAssetFS()
	if err != nil {
		return llm.ResponseSchema{}, err
	}
	return llm.LoadResponseSchema(assets, llm.ResponseSchemaDefinition{
		Key:       ResponseSchemaKey,
		ID:        ResponseSchemaID,
		Version:   SchemaVersion,
		Name:      ResponseSchemaName,
		AssetPath: "schemas/dnd_scene_combat_semantics_llm.v1.json",
	})
}
