org.ballotready.constituent.profile

ballotready.org

Schema Diff

+9 -4

From

CID
bafyreica6ooarvo...
Indexed At
2026-06-26 14:42 UTC
View this version

To

CID
bafyreidbqf2hhmi...
Indexed At
2026-06-26 14:53 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

7 breaking changes, 5 non-breaking changes.

Breaking Changes (7)
  • RemovedVertex RemovedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileFallbacks" }
  • RemovedVertex RemovedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileFallbacks:items" }
  • RemovedEdge RemovedEdge { src: "org.ballotready.constituent.profile:body", tgt: "org.ballotready.constituent.profile:body.bskyProfileFallbacks", kind: "prop", name: Some("bskyProfileFallbacks") }
  • RemovedEdge RemovedEdge { src: "org.ballotready.constituent.profile:body.bskyProfileFallbacks", tgt: "org.ballotready.constituent.profile:body.bskyProfileFallbacks:items", kind: "items", name: None }
  • ConstraintAdded ConstraintAdded { vertex_id: "org.ballotready.constituent.profile:body.constituentOf", sort: "maxLength", value: "640" }
  • ConstraintAdded ConstraintAdded { vertex_id: "org.ballotready.constituent.profile:body.constituentOf", sort: "maxGraphemes", value: "64" }
  • ConstraintAdded ConstraintAdded { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileProperties:items", sort: "enum", value: "avatar,banner,displayName,description" }
Non-Breaking Changes (5)
  • AddedVertex AddedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileProperties" }
  • AddedVertex AddedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileProperties:items" }
  • AddedEdge AddedEdge { src: "org.ballotready.constituent.profile:body", tgt: "org.ballotready.constituent.profile:body.bskyProfileProperties", kind: "prop", name: Some("bskyProfileProperties") }
  • AddedEdge AddedEdge { src: "org.ballotready.constituent.profile:body.bskyProfileProperties", tgt: "org.ballotready.constituent.profile:body.bskyProfileProperties:items", kind: "items", name: None }
  • ConstraintRemoved ConstraintRemoved { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileFallbacks:items", sort: "enum" }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileFallbacks" }
  • RemovedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileFallbacks:items" }

Added Elements

  • AddedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileProperties" }
  • AddedVertex { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileProperties:items" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "org.ballotready.constituent.profile:body.constituentOf", sort: "maxLength", value: "640" }
  • ConstraintAdded ConstraintAdded { vertex_id: "org.ballotready.constituent.profile:body.constituentOf", sort: "maxGraphemes", value: "64" }
  • ConstraintAdded ConstraintAdded { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileProperties:items", sort: "enum", value: "avatar,banner,displayName,description" }
  • ConstraintRemoved ConstraintRemoved { vertex_id: "org.ballotready.constituent.profile:body.bskyProfileFallbacks:items", sort: "enum" }

Additional Notes

  • Breaking: RemovedEdge { src: "org.ballotready.constituent.profile:body", tgt: "org.ballotready.constituent.profile:body.bskyProfileFallbacks", kind: "prop", name: Some("bskyProfileFallbacks") }
  • Breaking: RemovedEdge { src: "org.ballotready.constituent.profile:body.bskyProfileFallbacks", tgt: "org.ballotready.constituent.profile:body.bskyProfileFallbacks:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "org.ballotready.constituent.profile:body", tgt: "org.ballotready.constituent.profile:body.bskyProfileProperties", kind: "prop", name: Some("bskyProfileProperties") }
  • Non-breaking: AddedEdge { src: "org.ballotready.constituent.profile:body.bskyProfileProperties", tgt: "org.ballotready.constituent.profile:body.bskyProfileProperties:items", kind: "items", name: None }
1 1
{
2 2
  "id": "org.ballotready.constituent.profile",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "literal:self",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "properties": {
10 10
          "createdAt": {
11 11
            "type": "string",
12 12
            "format": "datetime"
13 13
          },
14 14
          "description": {
15 15
            "type": "string",
16 16
            "maxLength": 2560,
17 -
            "description": "Free-form profile description text.",
17 +
            "description": "Free-form consituent profile description text.",
18 18
            "maxGraphemes": 256
19 19
          },
20 20
          "displayName": {
21 21
            "type": "string",
22 22
            "maxLength": 640,
23 +
            "description": "Display name for the constituent.",
23 24
            "maxGraphemes": 64
24 25
          },
25 26
          "constituentOf": {
26 27
            "type": "string",
27 -
            "description": "Self-declared constituency group"
28 +
            "maxLength": 640,
29 +
            "description": "Self-declared constituency, e.g. \"Michigan\" or \"United States\".",
30 +
            "maxGraphemes": 64
28 31
          },
29 -
          "bskyProfileFallbacks": {
32 +
          "bskyProfileProperties": {
30 33
            "type": "array",
31 34
            "items": {
32 35
              "enum": [
36 +
                "avatar",
37 +
                "banner",
33 38
                "displayName",
34 39
                "description"
35 40
              ],
36 41
              "type": "string"
37 42
            },
38 -
            "description": "List of properties to pull from the user's Bluesky profile"
43 +
            "description": "List of properties to inherit from the user's app.bsky.actor.profile record."
39 44
          }
40 45
        }
41 46
      },
42 47
      "description": "A declaration of a BallotReady constituent profile."
43 48
    }
44 49
  },
45 50
  "$type": "com.atproto.lexicon.schema",
46 51
  "lexicon": 1
47 52
}

Compare Other Versions

Lexicon Garden

@