app.certified.badge.response

certified.app

Schema Diff

+12 -6

From

CID
bafyreiep6ibjc5d...
Indexed At
2026-02-18 18:01 UTC
View this version

To

CID
bafyreid3jomhjnv...
Indexed At
2026-07-26 20:06 UTC
View this version

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
}

Compare Other Versions

Lexicon Garden

@