cafe.thunderbird.sevenup.match

thunderbird.cafe

Schema Diff

+3 -3

From

CID
bafyreiajamqivbo...
Indexed At
2026-10-16 15:25 UTC
View this version

To

CID
bafyreieq64f4kfq...
Indexed At
2026-10-17 02:18 UTC
View this version

Compatibility Analysis

Backward Compatible

No changes detected.

1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 -
      "description": "One player's copy of a finished Seven-Up match. Each player saves their own; the record key is the match id, so the two copies share it. A player against the bot saves alone.",
6 -
      "key": "any",
5 +
      "description": "One player's copy of a finished Seven-Up match. Each player saves their own; the record key is the match id (a TID made when the house flips the coin), so the two copies share it. A player against the bot saves alone.",
6 +
      "key": "tid",
7 7
      "record": {
8 8
        "properties": {
9 9
          "createdAt": {
10 10
            "format": "datetime",
11 11
            "type": "string"
12 12
          },
13 13
          "firstPlayer": {
14 14
            "description": "Who the house's coin chose to start.",
15 15
            "maximum": 2,
16 16
            "minimum": 1,
17 17
            "type": "integer"
18 18
          },
19 19
          "handoffs": {
20 20
            "description": "How the dice changed hands between rounds: granted by the player holding them, or passed by the house after 10 seconds.",
21 21
            "items": {
22 22
              "knownValues": [
23 23
                "granted",
24 24
                "auto"
25 25
              ],
26 26
              "type": "string"
27 27
            },
28 28
            "maxLength": 5,
29 29
            "type": "array"
30 30
          },
31 31
          "house": {
32 32
            "description": "The house tile that refereed the match (rolled the dice and kept the score).",
33 33
            "ref": "com.atproto.repo.strongRef",
34 34
            "type": "ref"
35 35
          },
36 36
          "matchId": {
37 -
            "description": "The match id, also this record's key.",
37 +
            "description": "The match id, also this record's key: a TID made when the house flipped the coin. (Matches saved before Oct 17 2026 have random 13-character ids.)",
38 38
            "maxLength": 13,
39 39
            "minLength": 13,
40 40
            "type": "string"
41 41
          },
42 42
          "players": {
43 43
            "items": {
44 44
              "ref": "#player",
45 45
              "type": "ref"
46 46
            },
47 47
            "maxLength": 2,
48 48
            "minLength": 2,
49 49
            "type": "array"
50 50
          },
51 51
          "rounds": {
52 52
            "description": "All six rounds in play order, three each, players taking turns.",
53 53
            "items": {
54 54
              "ref": "#round",
55 55
              "type": "ref"
56 56
            },
57 57
            "maxLength": 6,
58 58
            "minLength": 6,
59 59
            "type": "array"
60 60
          },
61 61
          "seat": {
62 62
            "description": "Which player saved this record (1 or 2, an index into players).",
63 63
            "maximum": 2,
64 64
            "minimum": 1,
65 65
            "type": "integer"
66 66
          },
67 67
          "summary": {
68 68
            "description": "Each player's totals, in player order. Special rolls are worked out from the rolls.",
69 69
            "items": {
70 70
              "ref": "#summary",
71 71
              "type": "ref"
72 72
            },
73 73
            "maxLength": 2,
74 74
            "minLength": 2,
75 75
            "type": "array"
76 76
          }
77 77
        },
78 78
        "required": [
79 79
          "matchId",
80 80
          "seat",
81 81
          "players",
82 82
          "firstPlayer",
83 83
          "rounds",
84 84
          "handoffs",
85 85
          "summary",
86 86
          "createdAt"
87 87
        ],
88 88
        "type": "object"
89 89
      },
90 90
      "type": "record"
91 91
    },
92 92
    "player": {
93 93
      "properties": {
94 94
        "bot": {
95 95
          "description": "True when this seat was played by the table's bot.",
96 96
          "type": "boolean"
97 97
        },
98 98
        "diceStyle": {
99 99
          "knownValues": [
100 100
            "bone",
101 101
            "casino",
102 102
            "jade",
103 103
            "midnight",
104 104
            "glow",
105 105
            "brick"
106 106
          ],
107 107
          "type": "string"
108 108
        },
109 109
        "did": {
110 110
          "format": "did",
111 111
          "type": "string"
112 112
        },
113 113
        "handle": {
114 114
          "description": "The handle at the time of the match, for display; the did is what counts.",
115 115
          "format": "handle",
116 116
          "type": "string"
117 117
        }
118 118
      },
119 119
      "required": [
120 120
        "did",
121 121
        "handle",
122 122
        "diceStyle"
123 123
      ],
124 124
      "type": "object"
125 125
    },
126 126
    "round": {
127 127
      "properties": {
128 128
        "player": {
129 129
          "maximum": 2,
130 130
          "minimum": 1,
131 131
          "type": "integer"
132 132
        },
133 133
        "rolls": {
134 134
          "description": "Every roll of the round, two dice each, ending with the first 7.",
135 135
          "items": {
136 136
            "items": {
137 137
              "maximum": 6,
138 138
              "minimum": 1,
139 139
              "type": "integer"
140 140
            },
141 141
            "maxLength": 2,
142 142
            "minLength": 2,
143 143
            "type": "array"
144 144
          },
145 145
          "minLength": 1,
146 146
          "type": "array"
147 147
        }
148 148
      },
149 149
      "required": [
150 150
        "player",
151 151
        "rolls"
152 152
      ],
153 153
      "type": "object"
154 154
    },
155 155
    "summary": {
156 156
      "properties": {
157 157
        "longest": {
158 158
          "description": "Rolls in the player's longest round.",
159 159
          "minimum": 0,
160 160
          "type": "integer"
161 161
        },
162 162
        "quickest": {
163 163
          "description": "Rolls in the player's quickest round.",
164 164
          "minimum": 0,
165 165
          "type": "integer"
166 166
        },
167 167
        "specials": {
168 168
          "description": "Special rolls (snake eyes, yo-leven, boxcars and the doubles 2 to 5), never counting the closing 7.",
169 169
          "minimum": 0,
170 170
          "type": "integer"
171 171
        }
172 172
      },
173 173
      "required": [
174 174
        "longest",
175 175
        "quickest",
176 176
        "specials"
177 177
      ],
178 178
      "type": "object"
179 179
    }
180 180
  },
181 181
  "description": "Seven-Up, a two-player dice game played with web tiles at thunderbird.cafe/webtiles/sevenup/.",
182 182
  "id": "cafe.thunderbird.sevenup.match",
183 183
  "lexicon": 1
184 184
}

Compare Other Versions

Lexicon Garden

@