{
  "id": "expose",
  "description": "Establish physical post-state exposure of one card without changing its face or emitting a show trace",
  "labels": {
    "en": "Expose",
    "de": "Offenlegen"
  },
  "family_ref": "true-handling",
  "action_contract": {
    "requires": [
      "target"
    ],
    "parameters": {},
    "post_state_invariant": "The explicitly targeted card has card_states.exposed true. All other physical state, including face, order, custody, metadata and packet topology, is unchanged. Repeated exposure is idempotent.",
    "post_state": {
      "state_schema_ref": "https://tamaraspec.org/schema/tcs-playing-cards-state-0.1.json",
      "effects": [
        {
          "op": "set_card_state",
          "subject": "target",
          "field": "exposed",
          "value": true
        }
      ]
    },
    "boundary_note": "Semantics 1.2. Target must be a single declared card reference, never a root or packet reference. No parameters. Exposure is physical post-state, not audience knowledge or a transient show; use display separately for a show trace."
  }
}