dk.raakode.lab.groups.group
Schema Diff
+5 -1
Compatibility Analysis
Backward Compatible
Backward compatible. 2 non-breaking changes.
Non-Breaking Changes (2)
- AddedVertex AddedVertex { vertex_id: "dk.raakode.lab.groups.group:body.listed" }
- AddedEdge AddedEdge { src: "dk.raakode.lab.groups.group:body", tgt: "dk.raakode.lab.groups.group:body.listed", kind: "prop", name: Some("listed") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "dk.raakode.lab.groups.group:body.listed" }
Additional Notes
- Non-breaking: AddedEdge { src: "dk.raakode.lab.groups.group:body", tgt: "dk.raakode.lab.groups.group:body.listed", kind: "prop", name: Some("listed") }
1
1
{
2
2
"id": "dk.raakode.lab.groups.group",
3
3
"defs": {
4
4
"main": {
5
5
"key": "literal:self",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"name",
11
11
"createdAt"
12
12
],
13
13
"properties": {
14
14
"name": {
15
15
"type": "string",
16
16
"maxLength": 640,
17
17
"maxGraphemes": 64
18
18
},
19
+
"listed": {
20
+
"type": "boolean",
21
+
"description": "Whether the group may appear in an application's public directory. Absent means listed, so existing groups keep behaving as before. Unlisted hides the name and description from non-members; it cannot hide the group's existence, because a group is an account and a PDS enumerates its accounts publicly (see docs/evidence/privacy-of-membership.md)."
22
+
},
19
23
"createdAt": {
20
24
"type": "string",
21
25
"format": "datetime"
22
26
},
23
27
"description": {
24
28
"type": "string",
25
29
"maxLength": 3000,
26
30
"maxGraphemes": 300
27
31
}
28
32
}
29
33
},
30
-
"description": "The group's own description of itself. Written by the group authority into its repo in the group's space, so it travels with the group when it changes app."
34
+
"description": "The group's own description of itself, including whether it wants to be discoverable. Written by the group authority into its repo in the group's space, so it travels with the group when it changes app — a group that chose to be unlisted stays unlisted under a new operator."
31
35
}
32
36
},
33
37
"$type": "com.atproto.lexicon.schema",
34
38
"lexicon": 1
35
39
}