link.latr.bookmarks.defs
Schema Diff
+49 -0
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
}