{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A player's private secrets for one game, stored in their own 'me only' permissioned space — never on the public network. Written with the same record key as the invitation it belongs to, so it can be found without a query.",
      "key": "tid",
      "record": {
        "properties": {
          "invitation": {
            "description": "The game this holds secrets for. Record keys are only unique within a collection, so this disambiguates same-key invitations from different repos.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "secrets": {
            "description": "Replaces any previously stored secrets for this game in full; game logic replaces rather than merges this map on every resolve.",
            "ref": "#secrets",
            "type": "ref"
          }
        },
        "required": [
          "invitation",
          "secrets"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "secrets": {
      "description": "Open-ended map of string keys to string values, opaque to everything but the game logic and middleware that produced it (committed cleartexts awaiting reveal, per-item decryption keys, and so on).",
      "properties": {},
      "type": "object"
    }
  },
  "id": "games.atplay.game.secrets",
  "lexicon": 1
}
