fyi.opensocial.listDrafts
Schema Diff
+51 -0
Compatibility Analysis
Breaking Changes Detected
3 breaking changes, 19 non-breaking changes.
Breaking Changes (3)
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "fyi.opensocial.listDrafts#draftFile", src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.n", kind: "prop", name: Some("n") }
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "fyi.opensocial.listDrafts#draftFile", src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.size", kind: "prop", name: Some("size") }
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "fyi.opensocial.listDrafts#draftFile", src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.type", kind: "prop", name: Some("type") }
Non-Breaking Changes (19)
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.alt" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.n" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.size" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.type" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.asGroup" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.files" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.files:items" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.remove" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.replaces" }
- AddedVertex AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.was" }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.alt", kind: "prop", name: Some("alt") }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.asGroup", kind: "prop", name: Some("asGroup") }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.files", kind: "prop", name: Some("files") }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.remove", kind: "prop", name: Some("remove") }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.replaces", kind: "prop", name: Some("replaces") }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.was", kind: "prop", name: Some("was") }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftView.files", tgt: "fyi.opensocial.listDrafts#draftView.files:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "fyi.opensocial.listDrafts#draftView.files:items", tgt: "fyi.opensocial.listDrafts#draftFile", kind: "ref", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.alt" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.n" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.size" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftFile.type" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.asGroup" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.files" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.files:items" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.remove" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.replaces" }AddedVertex { vertex_id: "fyi.opensocial.listDrafts#draftView.was" }
Additional Notes
- Breaking: RequiredEdgeAdded { vertex_id: "fyi.opensocial.listDrafts#draftFile", src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.n", kind: "prop", name: Some("n") }
- Breaking: RequiredEdgeAdded { vertex_id: "fyi.opensocial.listDrafts#draftFile", src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.size", kind: "prop", name: Some("size") }
- Breaking: RequiredEdgeAdded { vertex_id: "fyi.opensocial.listDrafts#draftFile", src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.type", kind: "prop", name: Some("type") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftFile", tgt: "fyi.opensocial.listDrafts#draftFile.alt", kind: "prop", name: Some("alt") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.asGroup", kind: "prop", name: Some("asGroup") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.files", kind: "prop", name: Some("files") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.remove", kind: "prop", name: Some("remove") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.replaces", kind: "prop", name: Some("replaces") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftView", tgt: "fyi.opensocial.listDrafts#draftView.was", kind: "prop", name: Some("was") }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftView.files", tgt: "fyi.opensocial.listDrafts#draftView.files:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "fyi.opensocial.listDrafts#draftView.files:items", tgt: "fyi.opensocial.listDrafts#draftFile", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
+
"draftFile": {
5
+
"properties": {
6
+
"alt": {
7
+
"description": "What it shows, in words.",
8
+
"type": "string"
9
+
},
10
+
"n": {
11
+
"description": "Its number, from 1.",
12
+
"minimum": 1,
13
+
"type": "integer"
14
+
},
15
+
"size": {
16
+
"description": "How big it is, in bytes.",
17
+
"type": "integer"
18
+
},
19
+
"type": {
20
+
"description": "Its MIME type.",
21
+
"type": "string"
22
+
}
23
+
},
24
+
"required": [
25
+
"n",
26
+
"type",
27
+
"size"
28
+
],
29
+
"type": "object"
30
+
},
4
31
"draftView": {
5
32
"properties": {
33
+
"asGroup": {
34
+
"description": "Added as the group, by whoever adds it and may.",
35
+
"type": "boolean"
36
+
},
6
37
"by": {
7
38
"description": "The AI app that left it, by the name it gave.",
8
39
"type": "string"
9
40
},
10
41
"collection": {
11
42
"format": "nsid",
12
43
"type": "string"
13
44
},
14
45
"createdAt": {
15
46
"format": "datetime",
16
47
"type": "string"
17
48
},
49
+
"files": {
50
+
"description": "The files it brings, in order: each read with getDraftFile, by its number.",
51
+
"items": {
52
+
"ref": "#draftFile",
53
+
"type": "ref"
54
+
},
55
+
"type": "array"
56
+
},
18
57
"id": {
19
58
"type": "string"
20
59
},
21
60
"page": {
22
61
"description": "Its tab's page makes it into what it keeps.",
23
62
"type": "boolean"
24
63
},
25
64
"record": {
26
65
"type": "unknown"
27
66
},
67
+
"remove": {
68
+
"description": "It removes that one, rather than changing it.",
69
+
"type": "boolean"
70
+
},
71
+
"replaces": {
72
+
"description": "The one it changes, or removes: the record's address, or, for its tab's page to change, as the page names one.",
73
+
"type": "string"
74
+
},
28
75
"space": {
29
76
"description": "The space it goes in, added.",
30
77
"type": "string"
31
78
},
32
79
"tab": {
33
80
"description": "Its tab's namespace.",
34
81
"type": "string"
35
82
},
36
83
"title": {
37
84
"type": "string"
85
+
},
86
+
"was": {
87
+
"description": "What the one it changes or removes is called.",
88
+
"type": "string"
38
89
}
39
90
},
40
91
"required": [
41
92
"id",
42
93
"tab",
43
94
"collection",
44
95
"title",
45
96
"record",
46
97
"createdAt"
47
98
],
48
99
"type": "object"
49
100
},
50
101
"main": {
51
102
"description": "The drafts your assistant left for you in the group's tabs, waiting for you to add or let go: each with the space it goes in, added as you, or for its tab's page to make into what it keeps (page).",
52
103
"output": {
53
104
"encoding": "application/json",
54
105
"schema": {
55
106
"properties": {
56
107
"drafts": {
57
108
"items": {
58
109
"ref": "#draftView",
59
110
"type": "ref"
60
111
},
61
112
"type": "array"
62
113
}
63
114
},
64
115
"required": [
65
116
"drafts"
66
117
],
67
118
"type": "object"
68
119
}
69
120
},
70
121
"parameters": {
71
122
"properties": {
72
123
"group": {
73
124
"format": "did",
74
125
"type": "string"
75
126
}
76
127
},
77
128
"required": [
78
129
"group"
79
130
],
80
131
"type": "params"
81
132
},
82
133
"type": "query"
83
134
}
84
135
},
85
136
"id": "fyi.opensocial.listDrafts",
86
137
"lexicon": 1
87
138
}