tech.tokimeki.forum.reaction
Schema Diff
+5 -3
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 3 non-breaking changes.
Breaking Changes (2)
- KindChanged KindChanged { vertex_id: "tech.tokimeki.forum.reaction:body.subject", old_kind: "string", new_kind: "ref" }
- ConstraintAdded ConstraintAdded { vertex_id: "tech.tokimeki.forum.reaction:body.subject", sort: "ref", value: "com.atproto.repo.strongRef" }
Non-Breaking Changes (3)
- AddedVertex AddedVertex { vertex_id: "com.atproto.repo.strongRef" }
- AddedEdge AddedEdge { src: "tech.tokimeki.forum.reaction:body.subject", tgt: "com.atproto.repo.strongRef", kind: "ref", name: None }
- ConstraintRemoved ConstraintRemoved { vertex_id: "tech.tokimeki.forum.reaction:body.subject", sort: "format" }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "com.atproto.repo.strongRef" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "tech.tokimeki.forum.reaction:body.subject", sort: "ref", value: "com.atproto.repo.strongRef" }
- ConstraintRemoved ConstraintRemoved { vertex_id: "tech.tokimeki.forum.reaction:body.subject", sort: "format" }
Additional Notes
- Breaking: KindChanged { vertex_id: "tech.tokimeki.forum.reaction:body.subject", old_kind: "string", new_kind: "ref" }
- Non-breaking: AddedEdge { src: "tech.tokimeki.forum.reaction:body.subject", tgt: "com.atproto.repo.strongRef", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
-
"description": "An emoji reaction to a message. Written into the reactor's own repo within the space. rkey is derived from the subject so that one reactor has at most one record per (message, emoji).",
5
+
"description": "An emoji reaction to a message or thread. Written into the reactor's own repo within the space. rkey is derived from the subject URI and the emoji ('r' + base32lower(sha256(uri + '\\n' + emoji))[0:26]) so one reactor has at most one record per (subject, emoji).",
6
6
"key": "any",
7
7
"record": {
8
8
"properties": {
9
9
"createdAt": {
10
10
"format": "datetime",
11
11
"type": "string"
12
12
},
13
13
"emoji": {
14
+
"description": "A single emoji (grapheme cluster).",
14
15
"maxGraphemes": 8,
15
16
"maxLength": 64,
16
17
"type": "string"
17
18
},
18
19
"subject": {
19
-
"format": "at-uri",
20
-
"type": "string"
20
+
"description": "The tech.tokimeki.forum.message or tech.tokimeki.forum.thread being reacted to.",
21
+
"ref": "com.atproto.repo.strongRef",
22
+
"type": "ref"
21
23
}
22
24
},
23
25
"required": [
24
26
"subject",
25
27
"emoji",
26
28
"createdAt"
27
29
],
28
30
"type": "object"
29
31
},
30
32
"type": "record"
31
33
}
32
34
},
33
35
"id": "tech.tokimeki.forum.reaction",
34
36
"lexicon": 1
35
37
}