mov.danabra.ProfileTab

danabra.mov

Schema Diff

+12 -2

From

CID
bafyreiftk23yqng...
Indexed At
2026-03-09 08:14 UTC
View this version

To

CID
bafyreiae7r2vchs...
Indexed At
2026-03-28 05:31 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

4 breaking changes, 2 non-breaking changes.

Breaking Changes (4)
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "mov.danabra.ProfileTab:input", src: "mov.danabra.ProfileTab:input", tgt: "mov.danabra.ProfileTab:input.tab", kind: "prop", name: Some("tab") }
  • ConstraintAdded ConstraintAdded { vertex_id: "mov.danabra.ProfileTab:input.tab", sort: "knownValues", value: "[\"posts_and_author_threads\",\"posts_and_replies\"]" }
  • ConstraintAdded ConstraintAdded { vertex_id: "mov.danabra.ProfileTab:input.tab", sort: "maxLength", value: "256" }
  • ConstraintAdded ConstraintAdded { vertex_id: "mov.danabra.ProfileTab:input.tab", sort: "default", value: "posts_and_author_threads" }
Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "mov.danabra.ProfileTab:input.limit" }
  • AddedEdge AddedEdge { src: "mov.danabra.ProfileTab:input", tgt: "mov.danabra.ProfileTab:input.limit", kind: "prop", name: Some("limit") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "mov.danabra.ProfileTab:input.limit" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "mov.danabra.ProfileTab:input.tab", sort: "maxLength", value: "256" }
  • ConstraintAdded ConstraintAdded { vertex_id: "mov.danabra.ProfileTab:input.tab", sort: "default", value: "posts_and_author_threads" }
  • ConstraintAdded ConstraintAdded { vertex_id: "mov.danabra.ProfileTab:input.tab", sort: "knownValues", value: "[\"posts_and_author_threads\",\"posts_and_replies\"]" }

Additional Notes

  • Breaking: RequiredEdgeRemoved { vertex_id: "mov.danabra.ProfileTab:input", src: "mov.danabra.ProfileTab:input", tgt: "mov.danabra.ProfileTab:input.tab", kind: "prop", name: Some("tab") }
  • Non-breaking: AddedEdge { src: "mov.danabra.ProfileTab:input", tgt: "mov.danabra.ProfileTab:input.limit", kind: "prop", name: Some("limit") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 +
      "description": "Render a profile tab",
5 6
      "input": {
6 7
        "encoding": "application/json",
7 8
        "schema": {
8 9
          "properties": {
10 +
            "limit": {
11 +
              "default": 10,
12 +
              "type": "integer"
13 +
            },
9 14
            "tab": {
15 +
              "default": "posts_and_author_threads",
16 +
              "knownValues": [
17 +
                "posts_and_author_threads",
18 +
                "posts_and_replies"
19 +
              ],
20 +
              "maxLength": 256,
10 21
              "type": "string"
11 22
            },
12 23
            "uri": {
13 24
              "format": "at-uri",
14 25
              "type": "string"
15 26
            }
16 27
          },
17 28
          "required": [
18 -
            "uri",
19 -
            "tab"
29 +
            "uri"
20 30
          ],
21 31
          "type": "object"
22 32
        }
23 33
      },
24 34
      "output": {
25 35
        "encoding": "application/json",
26 36
        "schema": {
27 37
          "ref": "at.inlay.defs#response",
28 38
          "type": "ref"
29 39
        }
30 40
      },
31 41
      "type": "procedure"
32 42
    }
33 43
  },
34 44
  "id": "mov.danabra.ProfileTab",
35 45
  "lexicon": 1
36 46
}

Compare Other Versions

Lexicon Garden

@