app.didpic.chat.defs

lexicons.didpic.app

Schema Diff

+16 -5

From

CID
bafyreia2f7ut7qy...
Indexed At
2026-10-10 08:21 UTC
View this version

To

CID
bafyreihwfwlzryx...
Indexed At
2026-10-10 22:50 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

4 breaking changes, 11 non-breaking changes.

Breaking Changes (4)
  • RemovedVertex RemovedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.hasImage" }
  • RemovedVertex RemovedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.isSharedPost" }
  • RemovedEdge RemovedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.hasImage", kind: "prop", name: Some("hasImage") }
  • RemovedEdge RemovedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.isSharedPost", kind: "prop", name: Some("isSharedPost") }
Non-Breaking Changes (11)
  • AddedVertex AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.imageHeight" }
  • AddedVertex AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.imageUrl" }
  • AddedVertex AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.imageWidth" }
  • AddedVertex AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.sharedPost" }
  • AddedVertex AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.sharedPostUnavailable" }
  • AddedEdge AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.imageHeight", kind: "prop", name: Some("imageHeight") }
  • AddedEdge AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.imageUrl", kind: "prop", name: Some("imageUrl") }
  • AddedEdge AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.imageWidth", kind: "prop", name: Some("imageWidth") }
  • AddedEdge AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.sharedPost", kind: "prop", name: Some("sharedPost") }
  • AddedEdge AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.sharedPostUnavailable", kind: "prop", name: Some("sharedPostUnavailable") }
  • AddedEdge AddedEdge { src: "app.didpic.chat.defs#replyPreview.sharedPost", tgt: "app.didpic.feed.defs#postView", kind: "ref", name: None }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.hasImage" }
  • RemovedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.isSharedPost" }

Added Elements

  • AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.imageHeight" }
  • AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.imageUrl" }
  • AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.imageWidth" }
  • AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.sharedPost" }
  • AddedVertex { vertex_id: "app.didpic.chat.defs#replyPreview.sharedPostUnavailable" }

Additional Notes

  • Breaking: RemovedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.hasImage", kind: "prop", name: Some("hasImage") }
  • Breaking: RemovedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.isSharedPost", kind: "prop", name: Some("isSharedPost") }
  • Non-breaking: AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.imageHeight", kind: "prop", name: Some("imageHeight") }
  • Non-breaking: AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.imageUrl", kind: "prop", name: Some("imageUrl") }
  • Non-breaking: AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.imageWidth", kind: "prop", name: Some("imageWidth") }
  • Non-breaking: AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.sharedPost", kind: "prop", name: Some("sharedPost") }
  • Non-breaking: AddedEdge { src: "app.didpic.chat.defs#replyPreview", tgt: "app.didpic.chat.defs#replyPreview.sharedPostUnavailable", kind: "prop", name: Some("sharedPostUnavailable") }
  • Non-breaking: AddedEdge { src: "app.didpic.chat.defs#replyPreview.sharedPost", tgt: "app.didpic.feed.defs#postView", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "conversationView": {
5 5
      "properties": {
6 6
        "createdAt": {
7 7
          "format": "datetime",
8 8
          "type": "string"
9 9
        },
10 10
        "id": {
11 11
          "type": "string"
12 12
        },
13 13
        "lastMessageAt": {
14 14
          "format": "datetime",
15 15
          "type": "string"
16 16
        },
17 17
        "lastMessagePreview": {
18 18
          "type": "string"
19 19
        },
20 20
        "participantCount": {
21 21
          "maximum": 10,
22 22
          "minimum": 2,
23 23
          "type": "integer"
24 24
        },
25 25
        "participants": {
26 26
          "items": {
27 27
            "ref": "app.didpic.actor.defs#profileBasic",
28 28
            "type": "ref"
29 29
          },
30 30
          "type": "array"
31 31
        },
32 32
        "unreadCount": {
33 33
          "minimum": 0,
34 34
          "type": "integer"
35 35
        },
36 36
        "viewerBlocked": {
37 37
          "description": "True only when participantCount is 2 and a block exists either direction between the viewer and the other participant - the conversation is frozen, no new messages can be sent.",
38 38
          "type": "boolean"
39 39
        }
40 40
      },
41 41
      "required": [
42 42
        "id",
43 43
        "participants",
44 44
        "participantCount",
45 45
        "createdAt"
46 46
      ],
47 47
      "type": "object"
48 48
    },
49 49
    "messageView": {
50 50
      "properties": {
51 51
        "author": {
52 52
          "ref": "app.didpic.actor.defs#profileBasic",
53 53
          "type": "ref"
54 54
        },
55 55
        "conversationId": {
56 56
          "type": "string"
57 57
        },
58 58
        "createdAt": {
59 59
          "format": "datetime",
60 60
          "type": "string"
61 61
        },
62 62
        "id": {
63 63
          "type": "string"
64 64
        },
65 65
        "imageHeight": {
66 66
          "type": "integer"
67 67
        },
68 68
        "imageUrl": {
69 69
          "type": "string"
70 70
        },
71 71
        "imageWidth": {
72 72
          "type": "integer"
73 73
        },
74 74
        "reactions": {
75 75
          "items": {
76 76
            "ref": "app.didpic.chat.defs#reactionSummary",
77 77
            "type": "ref"
78 78
          },
79 79
          "type": "array"
80 80
        },
81 81
        "replyTo": {
82 82
          "ref": "app.didpic.chat.defs#replyPreview",
83 83
          "type": "ref"
84 84
        },
85 85
        "sharedPost": {
86 86
          "ref": "app.didpic.feed.defs#postView",
87 87
          "type": "ref"
88 88
        },
89 89
        "sharedPostUnavailable": {
90 90
          "description": "True when this message shared a post that has since been deleted/taken down - sharedPost is omitted in that case.",
91 91
          "type": "boolean"
92 92
        },
93 93
        "takedown": {
94 94
          "type": "boolean"
95 95
        },
96 96
        "text": {
97 97
          "type": "string"
98 98
        }
99 99
      },
100 100
      "required": [
101 101
        "id",
102 102
        "conversationId",
103 103
        "author",
104 104
        "createdAt"
105 105
      ],
106 106
      "type": "object"
107 107
    },
108 108
    "reactionSummary": {
109 109
      "properties": {
110 110
        "count": {
111 111
          "minimum": 1,
112 112
          "type": "integer"
113 113
        },
114 114
        "reaction": {
115 115
          "type": "string"
116 116
        },
117 117
        "viewerReacted": {
118 118
          "type": "boolean"
119 119
        }
120 120
      },
121 121
      "required": [
122 122
        "reaction",
123 123
        "count",
124 124
        "viewerReacted"
125 125
      ],
126 126
      "type": "object"
127 127
    },
128 128
    "replyPreview": {
129 129
      "properties": {
130 130
        "authorDid": {
131 131
          "type": "string"
132 132
        },
133 -
        "hasImage": {
134 -
          "type": "boolean"
135 -
        },
136 133
        "id": {
137 134
          "type": "string"
138 135
        },
139 -
        "isSharedPost": {
136 +
        "imageHeight": {
137 +
          "type": "integer"
138 +
        },
139 +
        "imageUrl": {
140 +
          "type": "string"
141 +
        },
142 +
        "imageWidth": {
143 +
          "type": "integer"
144 +
        },
145 +
        "sharedPost": {
146 +
          "ref": "app.didpic.feed.defs#postView",
147 +
          "type": "ref"
148 +
        },
149 +
        "sharedPostUnavailable": {
150 +
          "description": "True when the replied-to message shared a post that has since been deleted/taken down - sharedPost is omitted in that case.",
140 151
          "type": "boolean"
141 152
        },
142 153
        "textSnippet": {
143 154
          "type": "string"
144 155
        },
145 156
        "unavailable": {
146 -
          "description": "True when the replied-to message has since been taken down - authorDid/textSnippet/hasImage/isSharedPost are omitted in that case.",
157 +
          "description": "True when the replied-to message has since been taken down - every other field is omitted in that case.",
147 158
          "type": "boolean"
148 159
        }
149 160
      },
150 161
      "required": [
151 162
        "id",
152 163
        "unavailable"
153 164
      ],
154 165
      "type": "object"
155 166
    }
156 167
  },
157 168
  "id": "app.didpic.chat.defs",
158 169
  "lexicon": 1
159 170
}

Compare Other Versions

Lexicon Garden

@