{
  "id": "turn",
  "description": "Turn a card or packet over as one unit",
  "labels": {
    "en": "Turn",
    "es": "Voltear",
    "fr": "Retourner",
    "de": "Wenden"
  },
  "family_ref": "true-handling",
  "action_contract": {
    "parameters": {
      "face": {
        "required": false,
        "description": "Resulting face orientation, when known",
        "domain": [
          "face_up",
          "face_down"
        ],
        "default": "unspecified"
      },
      "axis": {
        "required": false,
        "description": "Which axis the unit turns over on; end additionally reverses every card's end orientation",
        "domain": [
          "side",
          "end"
        ],
        "default": "side"
      }
    },
    "post_state_invariant": "The unit's card order reverses and every card's face flips, so the baseline face_orientation flips while reversed_cards membership is unchanged; a single card is the n = 1 case. axis: end additionally reverses every card's end_orientation; the default, side, does not.",
    "post_state": {
      "state_schema_ref": "https://tamaraspec.org/schema/tcs-playing-cards-state-0.1.json",
      "effects": [
        {
          "op": "turn_over",
          "subject": "target",
          "axis": {
            "param": "axis"
          },
          "face": {
            "param": "face"
          }
        }
      ]
    }
  }
}