app.certified.badge.response
Schema Diff
+7 -2
Compatibility Analysis
Breaking Changes Detected
3 breaking changes, 6 non-breaking changes.
Breaking Changes (3)
- 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 }
- ConstraintTightened ConstraintTightened { vertex_id: "app.certified.badge.response:body.badgeAward", sort: "ref", old_value: "app.certified.badge.award", new_value: "com.atproto.repo.strongRef" }
Non-Breaking Changes (6)
- 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 }
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
- ConstraintTightened ConstraintTightened { vertex_id: "app.certified.badge.response:body.badgeAward", sort: "ref", old_value: "app.certified.badge.award", new_value: "com.atproto.repo.strongRef" }
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
17
"maxLength": 50,
18
18
"description": "Optional relative weight for accepted badges, assigned by the recipient."
19
19
},
20
20
"response": {
21
21
"type": "string",
22
22
"description": "The recipient’s response for the badge (accepted or rejected).",
23
23
"knownValues": [
24
24
"accepted",
25
25
"rejected"
26
26
]
27
27
},
28
28
"createdAt": {
29
29
"type": "string",
30
30
"format": "datetime",
31
31
"description": "Client-declared timestamp when this record was originally created"
32
32
},
33
33
"badgeAward": {
34
-
"ref": "app.certified.badge.award",
34
+
"ref": "com.atproto.repo.strongRef",
35
35
"type": "ref",
36
-
"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."
37
42
}
38
43
}
39
44
},
40
45
"description": "Recipient response to a badge award."
41
46
}
42
47
},
43
48
"$type": "com.atproto.lexicon.schema",
44
49
"lexicon": 1
45
50
}