{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://tamaraspec.org/registry/tcs-taxonomy-0.1.json",
  "title": "TCS Taxonomy Registry",
  "description": "Canonical registry of verbs, events, prop types, beat categories, spectator roles, and failure modes for TCS/SAN interoperability",
  "version": "0.1",
  "verbs": {
    "deal": {
      "id": "deal",
      "description": "Distribute cards to targets",
      "labels": {
        "en": "Deal",
        "es": "Repartir",
        "fr": "Distribuer",
        "de": "Austeilen"
      },
      "aliases": ["distribute"]
    },
    "collect": {
      "id": "collect",
      "description": "Gather cards from sources",
      "labels": {
        "en": "Collect",
        "es": "Recoger",
        "fr": "Rassembler",
        "de": "Sammeln"
      }
    },
    "spread": {
      "id": "spread",
      "description": "Display cards in a spread",
      "labels": {
        "en": "Spread",
        "es": "Extender",
        "fr": "Étaler",
        "de": "Ausbreiten"
      }
    },
    "cut": {
      "id": "cut",
      "description": "Divide deck at point",
      "labels": {
        "en": "Cut",
        "es": "Cortar",
        "fr": "Couper",
        "de": "Abheben"
      }
    },
    "shuffle": {
      "id": "shuffle",
      "description": "Randomize card order",
      "labels": {
        "en": "Shuffle",
        "es": "Barajar",
        "fr": "Battre",
        "de": "Mischen"
      }
    },
    "riffle-shuffle": {
      "id": "riffle-shuffle",
      "description": "Riffle shuffle technique",
      "labels": {
        "en": "Riffle Shuffle",
        "es": "Barajada Riffle",
        "fr": "Mélange Riffle",
        "de": "Riffle-Mischen"
      }
    },
    "overhand-shuffle": {
      "id": "overhand-shuffle",
      "description": "Overhand shuffle technique",
      "labels": {
        "en": "Overhand Shuffle",
        "es": "Barajada por Encima",
        "fr": "Mélange par Dessus",
        "de": "Überhand-Mischen"
      }
    },
    "palm": {
      "id": "palm",
      "description": "Conceal card in palm",
      "labels": {
        "en": "Palm",
        "es": "Palmar",
        "fr": "Palmer",
        "de": "Palmieren"
      }
    },
    "classic-palm": {
      "id": "classic-palm",
      "description": "Classic palm technique for concealing a card",
      "labels": {
        "en": "Classic Palm",
        "es": "Palma Clásica",
        "fr": "Palme Classique",
        "de": "Klassisches Palmieren"
      }
    },
    "steal": {
      "id": "steal",
      "description": "Remove card secretly",
      "labels": {
        "en": "Steal",
        "es": "Robar",
        "fr": "Voler",
        "de": "Stehlen"
      }
    },
    "load": {
      "id": "load",
      "description": "Place card into location",
      "labels": {
        "en": "Load",
        "es": "Cargar",
        "fr": "Charger",
        "de": "Laden"
      }
    },
    "force": {
      "id": "force",
      "description": "Control spectator selection",
      "labels": {
        "en": "Force",
        "es": "Forzar",
        "fr": "Forcer",
        "de": "Forcieren"
      }
    },
    "reveal": {
      "id": "reveal",
      "description": "Show card or state",
      "labels": {
        "en": "Reveal",
        "es": "Revelar",
        "fr": "Révéler",
        "de": "Aufdecken"
      }
    },
    "turn": {
      "id": "turn",
      "description": "Flip card orientation",
      "labels": {
        "en": "Turn",
        "es": "Voltear",
        "fr": "Retourner",
        "de": "Wenden"
      }
    },
    "flip": {
      "id": "flip",
      "description": "Reverse card order",
      "labels": {
        "en": "Flip",
        "es": "Invertir",
        "fr": "Retourner",
        "de": "Umkehren"
      }
    },
    "separate": {
      "id": "separate",
      "description": "Divide into groups",
      "labels": {
        "en": "Separate",
        "es": "Separar",
        "fr": "Séparer",
        "de": "Trennen"
      }
    },
    "reassemble": {
      "id": "reassemble",
      "description": "Combine groups",
      "labels": {
        "en": "Reassemble",
        "es": "Reensamblar",
        "fr": "Réassembler",
        "de": "Zusammenfügen"
      }
    },
    "double-lift": {
      "id": "double-lift",
      "description": "Lift two cards as one",
      "labels": {
        "en": "Double Lift",
        "es": "Doble Levantamiento",
        "fr": "Double Levée",
        "de": "Doublieren"
      }
    },
    "control": {
      "id": "control",
      "description": "Control card position",
      "labels": {
        "en": "Control",
        "es": "Controlar",
        "fr": "Contrôler",
        "de": "Kontrollieren"
      }
    },
    "take": {
      "id": "take",
      "description": "Take object from source",
      "labels": {
        "en": "Take",
        "es": "Tomar",
        "fr": "Prendre",
        "de": "Nehmen"
      }
    },
    "return": {
      "id": "return",
      "description": "Give back object",
      "labels": {
        "en": "Return",
        "es": "Devolver",
        "fr": "Rendre",
        "de": "Zurückgeben"
      }
    },
    "memorize": {
      "id": "memorize",
      "description": "Remember information",
      "labels": {
        "en": "Memorize",
        "es": "Memorizar",
        "fr": "Mémoriser",
        "de": "Merken"
      }
    },
    "indicate": {
      "id": "indicate",
      "description": "Point to or specify",
      "labels": {
        "en": "Indicate",
        "es": "Indicar",
        "fr": "Indiquer",
        "de": "Zeigen"
      }
    },
    "display": {
      "id": "display",
      "description": "Present for viewing",
      "labels": {
        "en": "Display",
        "es": "Mostrar",
        "fr": "Afficher",
        "de": "Präsentieren"
      }
    },
    "open": {
      "id": "open",
      "description": "Open container or object",
      "labels": {
        "en": "Open",
        "es": "Abrir",
        "fr": "Ouvrir",
        "de": "Öffnen"
      }
    },
    "speak": {
      "id": "speak",
      "description": "Verbalize",
      "labels": {
        "en": "Speak",
        "es": "Hablar",
        "fr": "Parler",
        "de": "Sprechen"
      }
    }
  },
  "events": {
    "says_stop": {
      "id": "says_stop",
      "description": "Spectator says 'stop'",
      "labels": {
        "en": "Says Stop",
        "es": "Dice 'Alto'",
        "fr": "Dit 'Stop'",
        "de": "Sagt 'Stop'"
      }
    },
    "indicates_pile": {
      "id": "indicates_pile",
      "description": "Spectator indicates a pile",
      "labels": {
        "en": "Indicates Pile",
        "es": "Indica Montón",
        "fr": "Indique Pile",
        "de": "Zeigt auf Stapel"
      }
    },
    "card_drops": {
      "id": "card_drops",
      "description": "Card falls or is dropped",
      "labels": {
        "en": "Card Drops",
        "es": "Cae Carta",
        "fr": "Carte Tombe",
        "de": "Karte fällt"
      }
    },
    "spectator_chose": {
      "id": "spectator_chose",
      "description": "Spectator makes a choice",
      "labels": {
        "en": "Spectator Chose",
        "es": "Espectador Elige",
        "fr": "Spectateur Choisit",
        "de": "Zuschauer wählt"
      }
    },
    "spectator_chose_A": {
      "id": "spectator_chose_A",
      "description": "Spectator chose option A",
      "labels": {
        "en": "Chose A",
        "es": "Eligió A",
        "fr": "A Choisi A",
        "de": "Wählte A"
      }
    },
    "spectator_chose_B": {
      "id": "spectator_chose_B",
      "description": "Spectator chose option B",
      "labels": {
        "en": "Chose B",
        "es": "Eligió B",
        "fr": "A Choisi B",
        "de": "Wählte B"
      }
    },
    "spectator_chose_C": {
      "id": "spectator_chose_C",
      "description": "Spectator chose option C",
      "labels": {
        "en": "Chose C",
        "es": "Eligió C",
        "fr": "A Choisi C",
        "de": "Wählte C"
      }
    }
  },
  "prop_types": {
    "playing_cards": {
      "id": "playing_cards",
      "description": "Standard playing card deck",
      "labels": {
        "en": "Playing Cards",
        "es": "Cartas",
        "fr": "Cartes à Jouer",
        "de": "Spielkarten"
      },
      "state_schema": {
        "order": {
          "type": "string",
          "enum": ["unknown", "ordered", "shuffled"]
        },
        "orientation": {
          "type": "string",
          "enum": ["face_up", "face_down", "mixed"]
        },
        "count": {
          "type": "number",
          "minimum": 0,
          "maximum": 52
        },
        "reversed_cards": {
          "type": "array",
          "items": { "type": "string" }
        }
      },
      "common_states": ["order", "orientation", "count", "reversed_cards"]
    },
    "playing_card": {
      "id": "playing_card",
      "description": "Single playing card",
      "labels": {
        "en": "Playing Card",
        "es": "Carta",
        "fr": "Carte à Jouer",
        "de": "Spielkarte"
      },
      "state_schema": {
        "identity": {
          "type": "string"
        },
        "orientation": {
          "type": "string",
          "enum": ["face_up", "face_down"]
        }
      },
      "common_states": ["identity", "orientation"]
    },
    "sealed_envelope": {
      "id": "sealed_envelope",
      "description": "Sealed envelope containing prediction",
      "labels": {
        "en": "Sealed Envelope",
        "es": "Sobre Sellado",
        "fr": "Enveloppe Scellée",
        "de": "Verschlossener Umschlag"
      },
      "state_schema": {
        "contents": {
          "type": "string"
        },
        "sealed": {
          "type": "boolean"
        }
      },
      "common_states": ["contents", "sealed"]
    }
  },
  "beat_categories": {
    "pause": {
      "id": "pause",
      "description": "Temporal pause",
      "labels": {
        "en": "Pause",
        "es": "Pausa",
        "fr": "Pause",
        "de": "Pause"
      }
    },
    "gesture": {
      "id": "gesture",
      "description": "Physical gesture or movement",
      "labels": {
        "en": "Gesture",
        "es": "Gesto",
        "fr": "Geste",
        "de": "Geste"
      }
    },
    "look": {
      "id": "look",
      "description": "Direction of gaze or attention",
      "labels": {
        "en": "Look",
        "es": "Mirada",
        "fr": "Regard",
        "de": "Blick"
      }
    },
    "beat": {
      "id": "beat",
      "description": "General timing beat",
      "labels": {
        "en": "Beat",
        "es": "Tiempo",
        "fr": "Temps",
        "de": "Takt"
      }
    },
    "display": {
      "id": "display",
      "description": "Display or show action",
      "labels": {
        "en": "Display",
        "es": "Mostrar",
        "fr": "Afficher",
        "de": "Zeigen"
      }
    },
    "attention": {
      "id": "attention",
      "description": "Call attention to something",
      "labels": {
        "en": "Attention",
        "es": "Atención",
        "fr": "Attention",
        "de": "Aufmerksamkeit"
      }
    },
    "tension": {
      "id": "tension",
      "description": "Build tension or anticipation",
      "labels": {
        "en": "Tension",
        "es": "Tensión",
        "fr": "Tension",
        "de": "Spannung"
      }
    }
  },
  "spectator_roles": {
    "assisting": {
      "id": "assisting",
      "description": "Spectator actively participates (e.g., selects card, handles props)",
      "labels": {
        "en": "Assisting",
        "es": "Asistente",
        "fr": "Assistant",
        "de": "Assistent"
      }
    },
    "observing": {
      "id": "observing",
      "description": "Spectator passively observes",
      "labels": {
        "en": "Observing",
        "es": "Observador",
        "fr": "Observateur",
        "de": "Beobachter"
      }
    },
    "camera_operator": {
      "id": "camera_operator",
      "description": "Camera operator controlling attention",
      "labels": {
        "en": "Camera Operator",
        "es": "Operador de Cámara",
        "fr": "Opérateur de Caméra",
        "de": "Kameramann"
      }
    },
    "stooge": {
      "id": "stooge",
      "description": "Confederate or plant in audience",
      "labels": {
        "en": "Stooge",
        "es": "Cómplice",
        "fr": "Complice",
        "de": "Komplize"
      }
    },
    "remote_viewer": {
      "id": "remote_viewer",
      "description": "Remote viewer (online, recorded)",
      "labels": {
        "en": "Remote Viewer",
        "es": "Espectador Remoto",
        "fr": "Spectateur à Distance",
        "de": "Fernzuschauer"
      }
    }
  },
  "failure_modes": {
    "performer_error": {
      "id": "performer_error",
      "description": "Performer made a mistake in execution",
      "labels": {
        "en": "Performer Error",
        "es": "Error del Artista",
        "fr": "Erreur de l'Artiste",
        "de": "Fehler des Künstlers"
      }
    },
    "structural_fragility": {
      "id": "structural_fragility",
      "description": "Method is inherently fragile under these conditions",
      "labels": {
        "en": "Structural Fragility",
        "es": "Fragilidad Estructural",
        "fr": "Fragilité Structurelle",
        "de": "Strukturelle Fragilität"
      }
    },
    "context_mismatch": {
      "id": "context_mismatch",
      "description": "Method doesn't match performance context",
      "labels": {
        "en": "Context Mismatch",
        "es": "Desajuste de Contexto",
        "fr": "Inadéquation du Contexte",
        "de": "Kontextfehlpassung"
      }
    },
    "inferential_collapse": {
      "id": "inferential_collapse",
      "description": "Spectator reasoning collapses belief",
      "labels": {
        "en": "Inferential Collapse",
        "es": "Colapso Inferencial",
        "fr": "Effondrement Inférentiel",
        "de": "Inferenzieller Zusammenbruch"
      }
    }
  }
}

