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