dev.roe.talk

danielroe.dev

Schema Diff

+3 -10

From

CID
bafyreigcudodhzs...
Indexed At
2026-07-29 22:37 UTC
View this version

To

CID
bafyreidvstthk4a...
Indexed At
2026-08-26 13:09 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

6 breaking changes, 2 non-breaking changes.

Breaking Changes (6)
  • RemovedVertex RemovedVertex { vertex_id: "dev.roe.defs#aspectRatio" }
  • RemovedVertex RemovedVertex { vertex_id: "dev.roe.talk:body.aspectRatio" }
  • RemovedEdge RemovedEdge { src: "dev.roe.talk:body", tgt: "dev.roe.talk:body.aspectRatio", kind: "prop", name: Some("aspectRatio") }
  • RemovedEdge RemovedEdge { src: "dev.roe.talk:body.aspectRatio", tgt: "dev.roe.defs#aspectRatio", kind: "ref", name: None }
  • KindChanged KindChanged { vertex_id: "dev.roe.talk:body.image", old_kind: "blob", new_kind: "ref" }
  • ConstraintAdded ConstraintAdded { vertex_id: "dev.roe.talk:body.image", sort: "ref", value: "community.lexicon.app.defs#image" }
Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "community.lexicon.app.defs#image" }
  • AddedEdge AddedEdge { src: "dev.roe.talk:body.image", tgt: "community.lexicon.app.defs#image", kind: "ref", name: None }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "dev.roe.defs#aspectRatio" }
  • RemovedVertex { vertex_id: "dev.roe.talk:body.aspectRatio" }

Added Elements

  • AddedVertex { vertex_id: "community.lexicon.app.defs#image" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "dev.roe.talk:body.image", sort: "ref", value: "community.lexicon.app.defs#image" }

Additional Notes

  • Breaking: RemovedEdge { src: "dev.roe.talk:body", tgt: "dev.roe.talk:body.aspectRatio", kind: "prop", name: Some("aspectRatio") }
  • Breaking: RemovedEdge { src: "dev.roe.talk:body.aspectRatio", tgt: "dev.roe.defs#aspectRatio", kind: "ref", name: None }
  • Breaking: KindChanged { vertex_id: "dev.roe.talk:body.image", old_kind: "blob", new_kind: "ref" }
  • Non-breaking: AddedEdge { src: "dev.roe.talk:body.image", tgt: "community.lexicon.app.defs#image", kind: "ref", name: None }
1 1
{
2 2
  "id": "dev.roe.talk",
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
          "source",
11 11
          "date",
12 12
          "type",
13 13
          "createdAt"
14 14
        ],
15 15
        "properties": {
16 16
          "date": {
17 17
            "type": "string",
18 18
            "format": "datetime",
19 19
            "description": "Start date of the talk/event. Date-only values are stored as midnight UTC."
20 20
          },
21 21
          "demo": {
22 22
            "type": "string",
23 23
            "format": "uri"
24 24
          },
25 25
          "link": {
26 26
            "type": "string",
27 27
            "format": "uri",
28 28
            "description": "Event page, podcast episode URL, etc."
29 29
          },
30 30
          "repo": {
31 31
            "type": "string",
32 32
            "format": "uri"
33 33
          },
34 34
          "tags": {
35 35
            "type": "array",
36 36
            "items": {
37 37
              "type": "string",
38 38
              "maxLength": 640,
39 39
              "maxGraphemes": 64
40 40
            },
41 41
            "maxLength": 32
42 42
          },
43 43
          "type": {
44 44
            "type": "string",
45 45
            "knownValues": [
46 46
              "conference",
47 47
              "meetup",
48 48
              "podcast",
49 49
              "workshop",
50 50
              "stream",
51 51
              "talk"
52 52
            ]
53 53
          },
54 54
          "group": {
55 55
            "ref": "com.atproto.repo.strongRef",
56 56
            "type": "ref",
57 57
            "description": "Strong-ref to a dev.roe.talkGroup record."
58 58
          },
59 59
          "image": {
60 -
            "type": "blob",
61 -
            "accept": [
62 -
              "image/*"
63 -
            ],
64 -
            "maxSize": 5000000
60 +
            "ref": "community.lexicon.app.defs#image",
61 +
            "type": "ref",
62 +
            "description": "Event or conference logo, shown on the home page carousel."
65 63
          },
66 64
          "title": {
67 65
            "type": "string",
68 66
            "maxLength": 5120,
69 67
            "description": "Optional for upcoming events with no announced title. Required for past talks unless the talk is part of a group.",
70 68
            "maxGraphemes": 512
71 69
          },
72 70
          "video": {
73 71
            "type": "string",
74 72
            "format": "uri"
75 73
          },
76 74
          "slides": {
77 75
            "type": "string",
78 76
            "maxLength": 512,
79 77
            "description": "Identifier for slides; historically a GitHub release tag from danielroe/slides."
80 78
          },
81 79
          "source": {
82 80
            "type": "string",
83 81
            "maxLength": 5120,
84 82
            "description": "Conference name, meetup, podcast title, etc.",
85 83
            "maxGraphemes": 512
86 84
          },
87 85
          "endDate": {
88 86
            "type": "string",
89 87
            "format": "datetime",
90 88
            "description": "End date for multi-day events. Optional."
91 89
          },
92 90
          "location": {
93 91
            "type": "string",
94 92
            "maxLength": 5120,
95 93
            "description": "Free-form: city, country, or 'Online'.",
96 94
            "maxGraphemes": 512
97 95
          },
98 96
          "createdAt": {
99 97
            "type": "string",
100 98
            "format": "datetime"
101 -
          },
102 -
          "aspectRatio": {
103 -
            "ref": "dev.roe.defs#aspectRatio",
104 -
            "type": "ref",
105 -
            "description": "Intrinsic pixel dimensions of `image`."
106 99
          },
107 100
          "description": {
108 101
            "type": "string",
109 102
            "maxLength": 50000,
110 103
            "maxGraphemes": 5000
111 104
          }
112 105
        }
113 106
      },
114 107
      "description": "A talk, podcast appearance, workshop, stream, or similar event."
115 108
    }
116 109
  },
117 110
  "$type": "com.atproto.lexicon.schema",
118 111
  "lexicon": 1
119 112
}

Compare Other Versions

Lexicon Garden

@