Data model
Game concepts
The curated vocabulary the AI reasons over: rules glossary terms plus concepts we added.
9 columns. Every value below is generated from the provenance registry.
| Field | Type | Source | Updated | Written by |
|---|---|---|---|---|
| name | string | wotc | on demand | scripts/seed-rules.ts (glossary) |
| Concept name. Primary key, and the value every association and detection rule joins on. | ||||
| definition | string | wotc | on demand | scripts/seed-rules.ts (glossary) |
| What the concept means — the glossary entry for imported concepts, written by us for community ones. | ||||
| category | string | user | on demand | manual |
| Grouping used by the reference pages and the AI prompt: keyword_ability, synergy_theme, functional_role, zone, general, … | ||||
| source | string | user | on demand | manual |
| 'official' for concepts imported from the rules glossary, 'community' for ones we added. | ||||
| taggable | boolean | user | on demand | manual |
| Whether this concept is used to classify cards. Most concepts are reference-only; a curated subset drives tagging. | ||||
| label | string | null | user | on demand | manual |
| Display name for the reference pages, where the raw concept name reads awkwardly. | ||||
| rule_references | string[] | null | wotc | on demand | scripts/seed-rules.ts (glossary) |
| Rule numbers the glossary entry points to. | ||||
| wiki_summary | string | null | wiki | on demand | scripts/seed-wiki.ts |
| Longer plain-language summary from the MTG Fandom wiki. Currently unpopulated — the script exists but has not been run against this table. | ||||
| embedding | string | null | ai | on demand | scripts/embed-taxonomy.ts |
| Voyage voyage-3 embedding of name + definition, truncated to 256d. Powers vector classification. [ADR 0008] | ||||
TypeScript model
interface game_concepts {
name: string
definition: string
category: string
source: string
taggable: boolean
label: string | null
rule_references: string[] | null
wiki_summary: string | null
embedding: string | null
}