link.latr.bookmarks.defs

samclemente.me

Schema Diff

+49 -0

From

CID
bafyreifqp5q37cw...
Indexed At
2026-08-15 20:21 UTC
View this version

To

CID
bafyreieup6bwpag...
Indexed At
2026-08-21 00:41 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

6 breaking changes, 10 non-breaking changes.

Breaking Changes (6)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.updated", kind: "prop", name: Some("updated") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.scanned", kind: "prop", name: Some("scanned") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.ok", kind: "prop", name: Some("ok") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.matched", kind: "prop", name: Some("matched") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagCount", src: "link.latr.bookmarks.defs#tagCount", tgt: "link.latr.bookmarks.defs#tagCount.tag", kind: "prop", name: Some("tag") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagCount", src: "link.latr.bookmarks.defs#tagCount", tgt: "link.latr.bookmarks.defs#tagCount.count", kind: "prop", name: Some("count") }
Non-Breaking Changes (10)
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagCount" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagCount.count" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagCount.tag" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.cursor" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.matched" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.ok" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.scanned" }
  • AddedVertex AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.updated" }
  • AddedEdge AddedEdge { src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.cursor", kind: "prop", name: Some("cursor") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagCount" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagCount.count" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagCount.tag" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.cursor" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.matched" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.ok" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.scanned" }
  • AddedVertex { vertex_id: "link.latr.bookmarks.defs#tagMutationResult.updated" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.updated", kind: "prop", name: Some("updated") }
  • Breaking: RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.scanned", kind: "prop", name: Some("scanned") }
  • Breaking: RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.ok", kind: "prop", name: Some("ok") }
  • Breaking: RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagMutationResult", src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.matched", kind: "prop", name: Some("matched") }
  • Breaking: RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagCount", src: "link.latr.bookmarks.defs#tagCount", tgt: "link.latr.bookmarks.defs#tagCount.tag", kind: "prop", name: Some("tag") }
  • Breaking: RequiredEdgeAdded { vertex_id: "link.latr.bookmarks.defs#tagCount", src: "link.latr.bookmarks.defs#tagCount", tgt: "link.latr.bookmarks.defs#tagCount.count", kind: "prop", name: Some("count") }
  • Non-breaking: AddedEdge { src: "link.latr.bookmarks.defs#tagMutationResult", tgt: "link.latr.bookmarks.defs#tagMutationResult.cursor", kind: "prop", name: Some("cursor") }
1 1
{
2 2
  "id": "link.latr.bookmarks.defs",
3 3
  "defs": {
4 4
    "preview": {
5 5
      "type": "object",
6 6
      "required": [],
7 7
      "properties": {
8 8
        "image": {
9 9
          "type": "string",
10 10
          "format": "uri",
11 11
          "maxLength": 8192,
12 12
          "maxGraphemes": 2048
13 13
        },
14 14
        "title": {
15 15
          "type": "string",
16 16
          "maxLength": 2048,
17 17
          "maxGraphemes": 512
18 18
        },
19 19
        "author": {
20 20
          "type": "string",
21 21
          "maxLength": 512,
22 22
          "maxGraphemes": 128
23 23
        },
24 24
        "siteName": {
25 25
          "type": "string",
26 26
          "maxLength": 512,
27 27
          "maxGraphemes": 128
28 28
        },
29 29
        "description": {
30 30
          "type": "string",
31 31
          "maxLength": 8192,
32 32
          "maxGraphemes": 2048
33 33
        }
34 34
      }
35 35
    },
36 36
    "simpleOk": {
37 37
      "type": "object",
38 38
      "required": [
39 39
        "ok"
40 40
      ],
41 41
      "properties": {
42 42
        "ok": {
43 43
          "type": "boolean"
44 44
        }
45 45
      }
46 46
    },
47 +
    "tagCount": {
48 +
      "type": "object",
49 +
      "required": [
50 +
        "tag",
51 +
        "count"
52 +
      ],
53 +
      "properties": {
54 +
        "tag": {
55 +
          "type": "string",
56 +
          "maxLength": 640,
57 +
          "maxGraphemes": 64
58 +
        },
59 +
        "count": {
60 +
          "type": "integer",
61 +
          "minimum": 1
62 +
        }
63 +
      }
64 +
    },
47 65
    "bookmarkView": {
48 66
      "type": "object",
49 67
      "required": [
50 68
        "uri",
51 69
        "cid",
52 70
        "value"
53 71
      ],
54 72
      "properties": {
55 73
        "cid": {
56 74
          "type": "string",
57 75
          "format": "cid"
58 76
        },
59 77
        "uri": {
60 78
          "type": "string",
61 79
          "format": "at-uri"
62 80
        },
63 81
        "value": {
64 82
          "ref": "community.lexicon.bookmarks.bookmark",
65 83
          "type": "ref"
66 84
        },
67 85
        "preview": {
68 86
          "ref": "#preview",
69 87
          "type": "ref"
70 88
        },
71 89
        "metadataRecord": {
72 90
          "ref": "#metadataRecord",
73 91
          "type": "ref"
74 92
        }
75 93
      }
76 94
    },
77 95
    "bookmarkRecord": {
78 96
      "type": "object",
79 97
      "required": [
80 98
        "uri",
81 99
        "cid",
82 100
        "value"
83 101
      ],
84 102
      "properties": {
85 103
        "cid": {
86 104
          "type": "string",
87 105
          "format": "cid"
88 106
        },
89 107
        "uri": {
90 108
          "type": "string",
91 109
          "format": "at-uri"
92 110
        },
93 111
        "value": {
94 112
          "ref": "community.lexicon.bookmarks.bookmark",
95 113
          "type": "ref"
96 114
        }
97 115
      }
98 116
    },
99 117
    "metadataRecord": {
100 118
      "type": "object",
101 119
      "required": [
102 120
        "uri",
103 121
        "cid",
104 122
        "value"
105 123
      ],
106 124
      "properties": {
107 125
        "cid": {
108 126
          "type": "string",
109 127
          "format": "cid"
110 128
        },
111 129
        "uri": {
112 130
          "type": "string",
113 131
          "format": "at-uri"
114 132
        },
115 133
        "value": {
116 134
          "ref": "link.latr.bookmarks.metadata",
117 135
          "type": "ref"
118 136
        }
119 137
      }
120 138
    },
121 139
    "migrationResult": {
122 140
      "type": "object",
123 141
      "required": [
124 142
        "ok",
125 143
        "scanned",
126 144
        "created",
127 145
        "reused",
128 146
        "duplicates",
129 147
        "skippedConflict",
130 148
        "cached",
131 149
        "retired"
132 150
      ],
133 151
      "properties": {
134 152
        "ok": {
135 153
          "type": "boolean"
136 154
        },
137 155
        "cached": {
138 156
          "type": "integer",
139 157
          "minimum": 0
140 158
        },
141 159
        "cursor": {
142 160
          "type": "string",
143 161
          "maxLength": 2048,
144 162
          "maxGraphemes": 512
145 163
        },
146 164
        "reused": {
147 165
          "type": "integer",
148 166
          "minimum": 0
149 167
        },
150 168
        "created": {
151 169
          "type": "integer",
152 170
          "minimum": 0
153 171
        },
154 172
        "retired": {
155 173
          "type": "integer",
156 174
          "minimum": 0
157 175
        },
158 176
        "scanned": {
159 177
          "type": "integer",
160 178
          "minimum": 0
161 179
        },
162 180
        "duplicates": {
163 181
          "type": "integer",
164 182
          "minimum": 0
165 183
        },
166 184
        "skippedConflict": {
167 185
          "type": "integer",
168 186
          "minimum": 0
169 187
        }
170 188
      }
171 189
    },
190 +
    "tagMutationResult": {
191 +
      "type": "object",
192 +
      "required": [
193 +
        "ok",
194 +
        "scanned",
195 +
        "matched",
196 +
        "updated"
197 +
      ],
198 +
      "properties": {
199 +
        "ok": {
200 +
          "type": "boolean"
201 +
        },
202 +
        "cursor": {
203 +
          "type": "string",
204 +
          "maxLength": 2048,
205 +
          "maxGraphemes": 512
206 +
        },
207 +
        "matched": {
208 +
          "type": "integer",
209 +
          "minimum": 0
210 +
        },
211 +
        "scanned": {
212 +
          "type": "integer",
213 +
          "minimum": 0
214 +
        },
215 +
        "updated": {
216 +
          "type": "integer",
217 +
          "minimum": 0
218 +
        }
219 +
      }
220 +
    },
172 221
    "metadataSyncResult": {
173 222
      "type": "object",
174 223
      "required": [
175 224
        "ok",
176 225
        "scanned",
177 226
        "created",
178 227
        "reused",
179 228
        "skippedConflict"
180 229
      ],
181 230
      "properties": {
182 231
        "ok": {
183 232
          "type": "boolean"
184 233
        },
185 234
        "cursor": {
186 235
          "type": "string",
187 236
          "maxLength": 2048,
188 237
          "maxGraphemes": 512
189 238
        },
190 239
        "reused": {
191 240
          "type": "integer",
192 241
          "minimum": 0
193 242
        },
194 243
        "created": {
195 244
          "type": "integer",
196 245
          "minimum": 0
197 246
        },
198 247
        "scanned": {
199 248
          "type": "integer",
200 249
          "minimum": 0
201 250
        },
202 251
        "skippedConflict": {
203 252
          "type": "integer",
204 253
          "minimum": 0
205 254
        }
206 255
      }
207 256
    },
208 257
    "communityBookmarkRecord": {
209 258
      "type": "object",
210 259
      "required": [
211 260
        "subject",
212 261
        "createdAt"
213 262
      ],
214 263
      "properties": {
215 264
        "tags": {
216 265
          "type": "array",
217 266
          "items": {
218 267
            "type": "string",
219 268
            "maxLength": 640,
220 269
            "maxGraphemes": 64
221 270
          },
222 271
          "maxLength": 100
223 272
        },
224 273
        "subject": {
225 274
          "type": "string",
226 275
          "format": "uri",
227 276
          "maxLength": 8192,
228 277
          "maxGraphemes": 2048
229 278
        },
230 279
        "createdAt": {
231 280
          "type": "string",
232 281
          "format": "datetime"
233 282
        }
234 283
      }
235 284
    }
236 285
  },
237 286
  "$type": "com.atproto.lexicon.schema",
238 287
  "lexicon": 1
239 288
}

Compare Other Versions

Lexicon Garden

@