app.certified.badge.response
Schema Diff
+12 -6
Compatibility Analysis
Breaking Changes Detected
5 breaking changes, 7 non-breaking changes.
Breaking Changes (5)
- RemovedVertex RemovedVertex { vertex_id: "app.certified.badge.award" }
- RemovedEdge RemovedEdge { src: "app.certified.badge.response:body.badgeAward", tgt: "app.certified.badge.award", kind: "ref", name: None }
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.badge.response:body.response", sort: "knownValues", value: "[\"accepted\",\"rejected\"]" }
- ConstraintTightened ConstraintTightened { vertex_id: "app.certified.badge.response:body.badgeAward", sort: "ref", old_value: "app.certified.badge.award", new_value: "com.atproto.repo.strongRef" }
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.badge.response:body.weight", sort: "maxLength", value: "50" }
Non-Breaking Changes (7)
- AddedVertex AddedVertex { vertex_id: "app.certified.badge.response:body.signatures" }
- AddedVertex AddedVertex { vertex_id: "app.certified.signature.defs#list" }
- AddedVertex AddedVertex { vertex_id: "com.atproto.repo.strongRef" }
- AddedEdge AddedEdge { src: "app.certified.badge.response:body", tgt: "app.certified.badge.response:body.signatures", kind: "prop", name: Some("signatures") }
- AddedEdge AddedEdge { src: "app.certified.badge.response:body.badgeAward", tgt: "com.atproto.repo.strongRef", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "app.certified.badge.response:body.signatures", tgt: "app.certified.signature.defs#list", kind: "ref", name: None }
- ConstraintRemoved ConstraintRemoved { vertex_id: "app.certified.badge.response:body.response", sort: "enum" }
Migration Guidance
Removed Elements
RemovedVertex { vertex_id: "app.certified.badge.award" }
Added Elements
AddedVertex { vertex_id: "app.certified.badge.response:body.signatures" }AddedVertex { vertex_id: "app.certified.signature.defs#list" }AddedVertex { vertex_id: "com.atproto.repo.strongRef" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.badge.response:body.response", sort: "knownValues", value: "[\"accepted\",\"rejected\"]" }
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.badge.response:body.weight", sort: "maxLength", value: "50" }
- ConstraintTightened ConstraintTightened { vertex_id: "app.certified.badge.response:body.badgeAward", sort: "ref", old_value: "app.certified.badge.award", new_value: "com.atproto.repo.strongRef" }
- ConstraintRemoved ConstraintRemoved { vertex_id: "app.certified.badge.response:body.response", sort: "enum" }
Additional Notes
- Breaking: RemovedEdge { src: "app.certified.badge.response:body.badgeAward", tgt: "app.certified.badge.award", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "app.certified.badge.response:body", tgt: "app.certified.badge.response:body.signatures", kind: "prop", name: Some("signatures") }
- Non-breaking: AddedEdge { src: "app.certified.badge.response:body.badgeAward", tgt: "com.atproto.repo.strongRef", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "app.certified.badge.response:body.signatures", tgt: "app.certified.signature.defs#list", kind: "ref", name: None }
1
1
{
2
2
"id": "app.certified.badge.response",
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
"badgeAward",
11
11
"response",
12
12
"createdAt"
13
13
],
14
14
"properties": {
15
15
"weight": {
16
16
"type": "string",
17
+
"maxLength": 50,
17
18
"description": "Optional relative weight for accepted badges, assigned by the recipient."
18
19
},
19
20
"response": {
20
-
"enum": [
21
+
"type": "string",
22
+
"description": "The recipient’s response for the badge (accepted or rejected).",
23
+
"knownValues": [
21
24
"accepted",
22
25
"rejected"
23
-
],
24
-
"type": "string",
25
-
"description": "The recipient’s response for the badge (accepted or rejected)."
26
+
]
26
27
},
27
28
"createdAt": {
28
29
"type": "string",
29
30
"format": "datetime",
30
31
"description": "Client-declared timestamp when this record was originally created"
31
32
},
32
33
"badgeAward": {
33
-
"ref": "app.certified.badge.award",
34
+
"ref": "com.atproto.repo.strongRef",
34
35
"type": "ref",
35
-
"description": "Reference to the badge award."
36
+
"description": "Strong reference to the badge award being responded to. The record referenced must conform with the lexicon app.certified.badge.award."
37
+
},
38
+
"signatures": {
39
+
"ref": "app.certified.signature.defs#list",
40
+
"type": "ref",
41
+
"description": "Optional cryptographic signatures attesting to this record's content."
36
42
}
37
43
}
38
44
},
39
45
"description": "Recipient response to a badge award."
40
46
}
41
47
},
42
48
"$type": "com.atproto.lexicon.schema",
43
49
"lexicon": 1
44
50
}