app.atmobb.discussion.thread

lexicons.atmobb.app

Schema Diff

+5 -0

From

CID
bafyreihbswq5qcs...
Indexed At
2026-07-26 20:07 UTC
View this version

To

CID
bafyreibdbxgrwyh...
Indexed At
2026-09-02 01:43 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 2 non-breaking changes.

Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.discussion.thread:body.editedAt" }
  • AddedEdge AddedEdge { src: "app.atmobb.discussion.thread:body", tgt: "app.atmobb.discussion.thread:body.editedAt", kind: "prop", name: Some("editedAt") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "app.atmobb.discussion.thread:body.editedAt" }

Additional Notes

  • Non-breaking: AddedEdge { src: "app.atmobb.discussion.thread:body", tgt: "app.atmobb.discussion.thread:body.editedAt", kind: "prop", name: Some("editedAt") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 5
      "description": "A discussion thread (topic). Lives in the author's repo, pointing at a board in a forum's repo.",
6 6
      "key": "tid",
7 7
      "record": {
8 8
        "properties": {
9 9
          "board": {
10 10
            "description": "The app.atmobb.forum.board this thread belongs to. The board URI's authority is the forum's DID.",
11 11
            "format": "at-uri",
12 12
            "type": "string"
13 13
          },
14 14
          "body": {
15 15
            "items": {
16 16
              "refs": [
17 17
                "app.atmobb.richtext.block#text",
18 18
                "app.atmobb.richtext.block#quote",
19 19
                "app.atmobb.richtext.block#code",
20 20
                "app.atmobb.richtext.block#image"
21 21
              ],
22 22
              "type": "union"
23 23
            },
24 24
            "maxLength": 200,
25 25
            "type": "array"
26 26
          },
27 27
          "createdAt": {
28 28
            "format": "datetime",
29 29
            "type": "string"
30 30
          },
31 +
          "editedAt": {
32 +
            "description": "When the author last edited the body (or title). Absent means never edited.",
33 +
            "format": "datetime",
34 +
            "type": "string"
35 +
          },
31 36
          "poll": {
32 37
            "ref": "#poll",
33 38
            "type": "ref"
34 39
          },
35 40
          "tags": {
36 41
            "items": {
37 42
              "maxGraphemes": 64,
38 43
              "maxLength": 640,
39 44
              "type": "string"
40 45
            },
41 46
            "maxLength": 8,
42 47
            "type": "array"
43 48
          },
44 49
          "title": {
45 50
            "maxGraphemes": 300,
46 51
            "maxLength": 3000,
47 52
            "type": "string"
48 53
          }
49 54
        },
50 55
        "required": [
51 56
          "board",
52 57
          "title"
53 58
        ],
54 59
        "type": "object"
55 60
      },
56 61
      "type": "record"
57 62
    },
58 63
    "poll": {
59 64
      "description": "An embedded poll. Votes are app.atmobb.poll.vote records referencing this thread.",
60 65
      "properties": {
61 66
        "closesAt": {
62 67
          "format": "datetime",
63 68
          "type": "string"
64 69
        },
65 70
        "multipleChoice": {
66 71
          "type": "boolean"
67 72
        },
68 73
        "options": {
69 74
          "items": {
70 75
            "maxGraphemes": 100,
71 76
            "maxLength": 1000,
72 77
            "type": "string"
73 78
          },
74 79
          "maxLength": 10,
75 80
          "minLength": 2,
76 81
          "type": "array"
77 82
        },
78 83
        "question": {
79 84
          "maxGraphemes": 300,
80 85
          "maxLength": 3000,
81 86
          "type": "string"
82 87
        }
83 88
      },
84 89
      "required": [
85 90
        "options"
86 91
      ],
87 92
      "type": "object"
88 93
    }
89 94
  },
90 95
  "id": "app.atmobb.discussion.thread",
91 96
  "lexicon": 1
92 97
}

Compare Other Versions

Lexicon Garden

@