app.didpic.actor.defs

lexicons.didpic.app

Schema Diff

+5 -0

From

CID
bafyreiclw2yyjq5...
Indexed At
2026-05-22 03:34 UTC
View this version

To

CID
bafyreibtewnriij...
Indexed At
2026-05-22 04:37 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

2 breaking changes, 2 non-breaking changes.

Breaking Changes (2)
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.defs#profileView.location", sort: "maxGraphemes", value: "64" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.defs#profileView.location", sort: "maxLength", value: "640" }
Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "app.didpic.actor.defs#profileView.location" }
  • AddedEdge AddedEdge { src: "app.didpic.actor.defs#profileView", tgt: "app.didpic.actor.defs#profileView.location", kind: "prop", name: Some("location") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "app.didpic.actor.defs#profileView.location" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.defs#profileView.location", sort: "maxGraphemes", value: "64" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.defs#profileView.location", sort: "maxLength", value: "640" }

Additional Notes

  • Non-breaking: AddedEdge { src: "app.didpic.actor.defs#profileView", tgt: "app.didpic.actor.defs#profileView.location", kind: "prop", name: Some("location") }
1 1
{
2 2
  "id": "app.didpic.actor.defs",
3 3
  "defs": {
4 4
    "feedPref": {
5 5
      "type": "object",
6 6
      "required": [
7 7
        "value"
8 8
      ],
9 9
      "properties": {
10 10
        "value": {
11 11
          "type": "string",
12 12
          "knownValues": [
13 13
            "home",
14 14
            "discover"
15 15
          ]
16 16
        }
17 17
      },
18 18
      "description": "Last-selected home feed."
19 19
    },
20 20
    "labelPrefs": {
21 21
      "type": "object",
22 22
      "required": [
23 23
        "labels"
24 24
      ],
25 25
      "properties": {
26 26
        "labels": {
27 27
          "type": "unknown",
28 28
          "description": "Map of label id to action ('hide' | 'blur' | 'show')."
29 29
        }
30 30
      },
31 31
      "description": "Per-label moderation preferences."
32 32
    },
33 33
    "feedFilters": {
34 34
      "type": "object",
35 35
      "required": [
36 36
        "hideNoAltText"
37 37
      ],
38 38
      "properties": {
39 39
        "hideNoAltText": {
40 40
          "type": "boolean"
41 41
        }
42 42
      },
43 43
      "description": "Viewer-side feed filtering options."
44 44
    },
45 45
    "profileView": {
46 46
      "type": "object",
47 47
      "required": [
48 48
        "did"
49 49
      ],
50 50
      "properties": {
51 51
        "did": {
52 52
          "type": "string",
53 53
          "format": "did"
54 54
        },
55 55
        "handle": {
56 56
          "type": "string",
57 57
          "format": "handle"
58 58
        },
59 +
        "location": {
60 +
          "type": "string",
61 +
          "maxLength": 640,
62 +
          "maxGraphemes": 64
63 +
        },
59 64
        "pronouns": {
60 65
          "type": "string",
61 66
          "maxLength": 640,
62 67
          "maxGraphemes": 64
63 68
        },
64 69
        "avatarCid": {
65 70
          "type": "string",
66 71
          "format": "cid"
67 72
        },
68 73
        "bannerCid": {
69 74
          "type": "string",
70 75
          "format": "cid"
71 76
        },
72 77
        "indexedAt": {
73 78
          "type": "string",
74 79
          "format": "datetime"
75 80
        },
76 81
        "likesCount": {
77 82
          "type": "integer",
78 83
          "minimum": 0
79 84
        },
80 85
        "postsCount": {
81 86
          "type": "integer",
82 87
          "minimum": 0
83 88
        },
84 89
        "description": {
85 90
          "type": "string",
86 91
          "maxLength": 2560,
87 92
          "maxGraphemes": 256
88 93
        },
89 94
        "displayName": {
90 95
          "type": "string",
91 96
          "maxLength": 640,
92 97
          "maxGraphemes": 64
93 98
        },
94 99
        "followsCount": {
95 100
          "type": "integer",
96 101
          "minimum": 0
97 102
        },
98 103
        "followersCount": {
99 104
          "type": "integer",
100 105
          "minimum": 0
101 106
        },
102 107
        "viewerBlocking": {
103 108
          "type": "string",
104 109
          "format": "at-uri",
105 110
          "description": "URI of the viewer's block record for this actor, if any."
106 111
        },
107 112
        "viewerBlockedBy": {
108 113
          "type": "boolean",
109 114
          "description": "Whether this actor has blocked the viewer."
110 115
        },
111 116
        "viewerFollowing": {
112 117
          "type": "string",
113 118
          "format": "at-uri",
114 119
          "description": "URI of the viewer's follow record for this actor, if any."
115 120
        },
116 121
        "viewerSubscription": {
117 122
          "type": "boolean",
118 123
          "description": "Whether the viewer is subscribed to this actor's post alerts."
119 124
        }
120 125
      },
121 126
      "description": "Full profile view."
122 127
    },
123 128
    "composePrefs": {
124 129
      "type": "object",
125 130
      "required": [
126 131
        "requireAltText"
127 132
      ],
128 133
      "properties": {
129 134
        "requireAltText": {
130 135
          "type": "boolean"
131 136
        }
132 137
      },
133 138
      "description": "Compose-time enforcement options."
134 139
    },
135 140
    "profileBasic": {
136 141
      "type": "object",
137 142
      "required": [
138 143
        "did"
139 144
      ],
140 145
      "properties": {
141 146
        "did": {
142 147
          "type": "string",
143 148
          "format": "did"
144 149
        },
145 150
        "handle": {
146 151
          "type": "string",
147 152
          "format": "handle"
148 153
        },
149 154
        "avatarCid": {
150 155
          "type": "string",
151 156
          "format": "cid"
152 157
        },
153 158
        "displayName": {
154 159
          "type": "string",
155 160
          "maxLength": 640,
156 161
          "maxGraphemes": 64
157 162
        },
158 163
        "viewerFollowing": {
159 164
          "type": "string",
160 165
          "format": "at-uri",
161 166
          "description": "URI of the viewer's follow record for this actor, if any."
162 167
        }
163 168
      },
164 169
      "description": "Minimal profile info embedded inside other views."
165 170
    }
166 171
  },
167 172
  "$type": "com.atproto.lexicon.schema",
168 173
  "lexicon": 1
169 174
}

Compare Other Versions

Lexicon Garden

@