lol.folk.profile
Schema Diff
+14 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 4 non-breaking changes.
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "lol.folk.profile:body.avatar" }
- AddedVertex AddedVertex { vertex_id: "lol.folk.profile:body.updatedAt" }
- AddedEdge AddedEdge { src: "lol.folk.profile:body", tgt: "lol.folk.profile:body.avatar", kind: "prop", name: Some("avatar") }
- AddedEdge AddedEdge { src: "lol.folk.profile:body", tgt: "lol.folk.profile:body.updatedAt", kind: "prop", name: Some("updatedAt") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "lol.folk.profile:body.avatar" }AddedVertex { vertex_id: "lol.folk.profile:body.updatedAt" }
Additional Notes
- Non-breaking: AddedEdge { src: "lol.folk.profile:body", tgt: "lol.folk.profile:body.avatar", kind: "prop", name: Some("avatar") }
- Non-breaking: AddedEdge { src: "lol.folk.profile:body", tgt: "lol.folk.profile:body.updatedAt", kind: "prop", name: Some("updatedAt") }
1
1
{
2
2
"id": "lol.folk.profile",
3
3
"defs": {
4
4
"main": {
5
5
"key": "literal:self",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"properties": {
10
+
"avatar": {
11
+
"type": "blob",
12
+
"accept": [
13
+
"image/webp",
14
+
"image/png"
15
+
],
16
+
"maxSize": 262144,
17
+
"description": "The player's portrait, already composited over its background. A rendered image rather than the traits behind it, so any client can draw a FOLK player with one fetch and no knowledge of our art. The traits themselves stay in the game's own database, where the editor needs them."
18
+
},
19
+
"updatedAt": {
20
+
"type": "string",
21
+
"format": "datetime",
22
+
"description": "When this record last changed. The record is rewritten in place on every rename or avatar edit, so without this a reader cannot tell a current profile from a stale one."
23
+
},
10
24
"displayName": {
11
25
"type": "string",
12
26
"maxLength": 640,
13
27
"description": "In-game display name.",
14
28
"maxGraphemes": 64
15
29
}
16
30
}
17
31
},
18
32
"description": "A player's FOLK profile, stored in the player's own repository. The collection identifies the game: the NSID authority reverses to folk.lol, whose repo holds the lol.folk.game record. Presence of this record is itself the signal that the account plays FOLK, so every field is optional."
19
33
}
20
34
},
21
35
"$type": "com.atproto.lexicon.schema",
22
36
"lexicon": 1
23
37
}