at.locale.comment
Schema Diff
+14 -1
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 6 non-breaking changes.
Breaking Changes (2)
- RemovedEdge RemovedEdge { src: "at.locale.comment:body.subject", tgt: "at.locale.comment:body.subject:variant1", kind: "variant", name: Some("#keyLocaleSubject") }
- ConstraintAdded ConstraintAdded { vertex_id: "at.locale.comment#stringSubject.key", sort: "maxLength", value: "4096" }
Non-Breaking Changes (6)
- AddedVertex AddedVertex { vertex_id: "at.locale.comment#stringSubject" }
- AddedVertex AddedVertex { vertex_id: "at.locale.comment#stringSubject.key" }
- AddedVertex AddedVertex { vertex_id: "at.locale.comment:body.subject:variant2" }
- AddedEdge AddedEdge { src: "at.locale.comment#stringSubject", tgt: "at.locale.comment#stringSubject.key", kind: "prop", name: Some("key") }
- AddedEdge AddedEdge { src: "at.locale.comment:body.subject", tgt: "at.locale.comment:body.subject:variant1", kind: "variant", name: Some("#stringSubject") }
- AddedEdge AddedEdge { src: "at.locale.comment:body.subject", tgt: "at.locale.comment:body.subject:variant2", kind: "variant", name: Some("#keyLocaleSubject") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "at.locale.comment#stringSubject" }AddedVertex { vertex_id: "at.locale.comment#stringSubject.key" }AddedVertex { vertex_id: "at.locale.comment:body.subject:variant2" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "at.locale.comment#stringSubject.key", sort: "maxLength", value: "4096" }
Additional Notes
- Breaking: RemovedEdge { src: "at.locale.comment:body.subject", tgt: "at.locale.comment:body.subject:variant1", kind: "variant", name: Some("#keyLocaleSubject") }
- Non-breaking: AddedEdge { src: "at.locale.comment#stringSubject", tgt: "at.locale.comment#stringSubject.key", kind: "prop", name: Some("key") }
- Non-breaking: AddedEdge { src: "at.locale.comment:body.subject", tgt: "at.locale.comment:body.subject:variant1", kind: "variant", name: Some("#stringSubject") }
- Non-breaking: AddedEdge { src: "at.locale.comment:body.subject", tgt: "at.locale.comment:body.subject:variant2", kind: "variant", name: Some("#keyLocaleSubject") }
1
1
{
2
2
"id": "at.locale.comment",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"project",
11
11
"subject",
12
12
"body",
13
13
"createdAt"
14
14
],
15
15
"properties": {
16
16
"body": {
17
17
"type": "string",
18
18
"maxLength": 30000,
19
19
"minLength": 1,
20
20
"maxGraphemes": 10000
21
21
},
22
22
"parent": {
23
23
"type": "string",
24
24
"format": "at-uri",
25
25
"description": "Parent comment, for threading."
26
26
},
27
27
"project": {
28
28
"type": "string",
29
29
"format": "at-uri"
30
30
},
31
31
"subject": {
32
32
"refs": [
33
33
"#recordSubject",
34
+
"#stringSubject",
34
35
"#keyLocaleSubject"
35
36
],
36
37
"type": "union",
37
-
"description": "What the comment is about: a record (e.g. a translation) or a (key, locale) pair."
38
+
"description": "What the comment is about: a record (e.g. a translation), a source string key, or a (key, locale) pair."
38
39
},
39
40
"createdAt": {
40
41
"type": "string",
41
42
"format": "datetime"
42
43
}
43
44
}
44
45
}
45
46
},
46
47
"recordSubject": {
47
48
"type": "object",
48
49
"required": [
49
50
"uri"
50
51
],
51
52
"properties": {
52
53
"uri": {
53
54
"type": "string",
54
55
"format": "at-uri"
55
56
}
56
57
}
57
58
},
59
+
"stringSubject": {
60
+
"type": "object",
61
+
"required": [
62
+
"key"
63
+
],
64
+
"properties": {
65
+
"key": {
66
+
"type": "string",
67
+
"maxLength": 4096
68
+
}
69
+
}
70
+
},
58
71
"keyLocaleSubject": {
59
72
"type": "object",
60
73
"required": [
61
74
"key",
62
75
"locale"
63
76
],
64
77
"properties": {
65
78
"key": {
66
79
"type": "string",
67
80
"maxLength": 4096
68
81
},
69
82
"locale": {
70
83
"type": "string",
71
84
"maxLength": 35
72
85
}
73
86
}
74
87
}
75
88
},
76
89
"$type": "com.atproto.lexicon.schema",
77
90
"lexicon": 1,
78
91
"description": "Threaded discussion on a key, a translation, or a locale. Author-owned."
79
92
}