social.colibri.message

colibri.social

Schema Diff

+10 -2

From

CID
bafyreifgqbijtch...
Indexed At
2026-03-19 20:26 UTC
View this version

To

CID
bafyreifqvzyg2xs...
Indexed At
2026-08-15 22:24 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

1 breaking change, 4 non-breaking changes.

Breaking Changes (1)
  • ConstraintTightened ConstraintTightened { vertex_id: "social.colibri.message:body.channel", sort: "format", old_value: "record-key", new_value: "at-uri" }
Non-Breaking Changes (4)
  • AddedVertex AddedVertex { vertex_id: "social.colibri.message:body.suppressedEmbeds" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.message:body.suppressedEmbeds:items" }
  • AddedEdge AddedEdge { src: "social.colibri.message:body", tgt: "social.colibri.message:body.suppressedEmbeds", kind: "prop", name: Some("suppressedEmbeds") }
  • AddedEdge AddedEdge { src: "social.colibri.message:body.suppressedEmbeds", tgt: "social.colibri.message:body.suppressedEmbeds:items", kind: "items", name: None }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "social.colibri.message:body.suppressedEmbeds" }
  • AddedVertex { vertex_id: "social.colibri.message:body.suppressedEmbeds:items" }

Constraint Changes

  • ConstraintTightened ConstraintTightened { vertex_id: "social.colibri.message:body.channel", sort: "format", old_value: "record-key", new_value: "at-uri" }

Additional Notes

  • Non-breaking: AddedEdge { src: "social.colibri.message:body", tgt: "social.colibri.message:body.suppressedEmbeds", kind: "prop", name: Some("suppressedEmbeds") }
  • Non-breaking: AddedEdge { src: "social.colibri.message:body.suppressedEmbeds", tgt: "social.colibri.message:body.suppressedEmbeds:items", kind: "items", name: None }
1 1
{
2 2
  "id": "social.colibri.message",
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
          "text",
11 11
          "createdAt",
12 12
          "channel"
13 13
        ],
14 14
        "properties": {
15 15
          "text": {
16 16
            "type": "string",
17 17
            "maxLength": 2048,
18 18
            "description": "The message content."
19 19
          },
20 20
          "$type": {
21 21
            "type": "string",
22 22
            "format": "nsid",
23 23
            "description": "The type of the record."
24 24
          },
25 25
          "edited": {
26 26
            "type": "boolean",
27 27
            "default": false,
28 28
            "description": "Whether this message has been edited."
29 29
          },
30 30
          "facets": {
31 31
            "type": "array",
32 32
            "items": {
33 33
              "ref": "lex:social.colibri.richtext.facet",
34 34
              "type": "ref"
35 35
            },
36 36
            "description": "Annotations of sections of the text."
37 37
          },
38 38
          "parent": {
39 39
            "type": "string",
40 40
            "format": "record-key",
41 41
            "description": "The record key of a message this message is replying to."
42 42
          },
43 43
          "channel": {
44 44
            "type": "string",
45 -
            "format": "record-key",
45 +
            "format": "at-uri",
46 46
            "description": "The channel this message was sent in."
47 47
          },
48 48
          "createdAt": {
49 49
            "type": "string",
50 50
            "format": "datetime",
51 51
            "description": "When the message was sent."
52 52
          },
53 53
          "attachments": {
54 54
            "type": "array",
55 55
            "items": {
56 56
              "ref": "lex:social.colibri.message#attachment",
57 57
              "type": "ref"
58 58
            },
59 59
            "description": "An array of attachment objects for this message."
60 +
          },
61 +
          "suppressedEmbeds": {
62 +
            "type": "array",
63 +
            "items": {
64 +
              "type": "string",
65 +
              "format": "uri"
66 +
            },
67 +
            "description": "URLs from this message's link facets whose embed the author has chosen not to display. Only the author writes this; moderator suppression is recorded separately in the community's moderation log."
60 68
          }
61 69
        }
62 70
      },
63 71
      "description": "A message sent in a channel on Colibri"
64 72
    },
65 73
    "attachment": {
66 74
      "type": "object",
67 75
      "required": [
68 76
        "blob"
69 77
      ],
70 78
      "properties": {
71 79
        "blob": {
72 80
          "type": "blob",
73 81
          "description": "The attached file."
74 82
        },
75 83
        "name": {
76 84
          "type": "string",
77 85
          "maxLength": 256,
78 86
          "description": "The original filename."
79 87
        }
80 88
      },
81 89
      "description": "A file attached to a message."
82 90
    }
83 91
  },
84 92
  "$type": "com.atproto.lexicon.schema",
85 93
  "lexicon": 1,
86 -
  "revision": 2,
94 +
  "revision": 3,
87 95
  "description": "A message sent in a channel on Colibri."
88 96
}

Compare Other Versions

Lexicon Garden

@