com.derakkuma.circleMember

derakkuma.com

Schema Diff

+7 -10

From

CID
bafyreiaax4bc4qo...
Indexed At
2026-05-23 15:26 UTC
View this version

To

CID
bafyreifg6fecgwp...
Indexed At
2026-06-27 06:09 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

4 breaking changes, 4 non-breaking changes.

Breaking Changes (4)
  • RemovedVertex RemovedVertex { vertex_id: "com.derakkuma.circleMember:body.circleCode" }
  • RemovedVertex RemovedVertex { vertex_id: "com.derakkuma.circleMember:body.circleKey" }
  • RemovedEdge RemovedEdge { src: "com.derakkuma.circleMember:body", tgt: "com.derakkuma.circleMember:body.circleCode", kind: "prop", name: Some("circleCode") }
  • RemovedEdge RemovedEdge { src: "com.derakkuma.circleMember:body", tgt: "com.derakkuma.circleMember:body.circleKey", kind: "prop", name: Some("circleKey") }
Non-Breaking Changes (4)
  • AddedVertex AddedVertex { vertex_id: "com.derakkuma.circleMember:body.circle" }
  • AddedEdge AddedEdge { src: "com.derakkuma.circleMember:body", tgt: "com.derakkuma.circleMember:body.circle", kind: "prop", name: Some("circle") }
  • ConstraintRemoved ConstraintRemoved { vertex_id: "com.derakkuma.circleMember:body.circleKey", sort: "maxLength" }
  • ConstraintRemoved ConstraintRemoved { vertex_id: "com.derakkuma.circleMember:body.circleCode", sort: "maxLength" }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "com.derakkuma.circleMember:body.circleCode" }
  • RemovedVertex { vertex_id: "com.derakkuma.circleMember:body.circleKey" }

Added Elements

  • AddedVertex { vertex_id: "com.derakkuma.circleMember:body.circle" }

Constraint Changes

  • ConstraintRemoved ConstraintRemoved { vertex_id: "com.derakkuma.circleMember:body.circleKey", sort: "maxLength" }
  • ConstraintRemoved ConstraintRemoved { vertex_id: "com.derakkuma.circleMember:body.circleCode", sort: "maxLength" }

Additional Notes

  • Breaking: RemovedEdge { src: "com.derakkuma.circleMember:body", tgt: "com.derakkuma.circleMember:body.circleCode", kind: "prop", name: Some("circleCode") }
  • Breaking: RemovedEdge { src: "com.derakkuma.circleMember:body", tgt: "com.derakkuma.circleMember:body.circleKey", kind: "prop", name: Some("circleKey") }
  • Non-breaking: AddedEdge { src: "com.derakkuma.circleMember:body", tgt: "com.derakkuma.circleMember:body.circle", kind: "prop", name: Some("circle") }
1 1
{
2 2
  "id": "com.derakkuma.circleMember",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "any",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [
10 -
          "circleKey",
10 +
          "circle",
11 11
          "displayName",
12 12
          "createdAt"
13 13
        ],
14 14
        "properties": {
15 15
          "icon": {
16 16
            "type": "blob",
17 17
            "accept": [
18 18
              "image/png",
19 19
              "image/jpeg",
20 20
              "image/webp"
21 21
            ],
22 22
            "maxSize": 1000000
23 23
          },
24 24
          "title": {
25 25
            "type": "string",
26 26
            "maxLength": 128
27 27
          },
28 +
          "circle": {
29 +
            "type": "string",
30 +
            "format": "at-uri",
31 +
            "description": "AT URI of the com.derakkuma.circle record this member belongs to."
32 +
          },
28 33
          "points": {
29 34
            "type": "integer",
30 35
            "minimum": 0
31 36
          },
32 37
          "rating": {
33 38
            "type": "integer",
34 39
            "minimum": 0
35 40
          },
36 41
          "status": {
37 42
            "type": "string",
38 43
            "maxLength": 64
39 44
          },
40 45
          "profile": {
41 46
            "type": "string",
42 47
            "format": "at-uri",
43 48
            "description": "AT URI of the member profile record when this member is resolved to a Derakkuma ATProto profile."
44 49
          },
45 50
          "subject": {
46 51
            "type": "string",
47 52
            "format": "did"
48 53
          },
49 -
          "circleKey": {
50 -
            "type": "string",
51 -
            "maxLength": 128
52 -
          },
53 54
          "createdAt": {
54 55
            "type": "string",
55 56
            "format": "datetime"
56 57
          },
57 58
          "updatedAt": {
58 59
            "type": "string",
59 60
            "format": "datetime"
60 -
          },
61 -
          "circleCode": {
62 -
            "type": "string",
63 -
            "maxLength": 64
64 61
          },
65 62
          "observedAt": {
66 63
            "type": "string",
67 64
            "format": "datetime"
68 65
          },
69 66
          "displayName": {
70 67
            "type": "string",
71 68
            "maxLength": 64
72 69
          }
73 70
        }
74 71
      },
75 -
      "description": "A member snapshot for a maimai DX circle, optionally resolved to an AT Protocol identity"
72 +
      "description": "A member snapshot for a maimai DX circle, linked to the circle record it belongs to and optionally resolved to an AT Protocol identity"
76 73
    }
77 74
  },
78 75
  "$type": "com.atproto.lexicon.schema",
79 76
  "lexicon": 1
80 77
}

Compare Other Versions

Lexicon Garden

@