com.babesky.actor.featured

babesky.com

Schema Diff

+20 -16

From

CID
bafyreifgjkvqccm...
Indexed At
2026-05-02 00:13 UTC
View this version

To

CID
bafyreiflvh6753f...
Indexed At
2026-05-03 02:00 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

7 breaking changes, 5 non-breaking changes.

Breaking Changes (7)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "com.babesky.actor.featured#featuredPost", src: "com.babesky.actor.featured#featuredPost", tgt: "com.babesky.actor.featured#featuredPost.uri", kind: "prop", name: Some("uri") }
  • RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "com.babesky.actor.featured:body.posts:items", src: "com.babesky.actor.featured:body.posts:items", tgt: "com.babesky.actor.featured:body.posts:items.uri", kind: "prop", name: Some("uri") }
  • RemovedVertex RemovedVertex { vertex_id: "com.babesky.actor.featured:body.posts:items.cid" }
  • RemovedVertex RemovedVertex { vertex_id: "com.babesky.actor.featured:body.posts:items.uri" }
  • RemovedEdge RemovedEdge { src: "com.babesky.actor.featured:body.posts:items", tgt: "com.babesky.actor.featured:body.posts:items.cid", kind: "prop", name: Some("cid") }
  • KindChanged KindChanged { vertex_id: "com.babesky.actor.featured:body.posts:items", old_kind: "object", new_kind: "ref" }
  • ConstraintAdded ConstraintAdded { vertex_id: "com.babesky.actor.featured:body.posts:items", sort: "ref", value: "#featuredPost" }
Non-Breaking Changes (5)
  • AddedVertex AddedVertex { vertex_id: "com.babesky.actor.featured#featuredPost" }
  • AddedVertex AddedVertex { vertex_id: "com.babesky.actor.featured#featuredPost.cid" }
  • AddedVertex AddedVertex { vertex_id: "com.babesky.actor.featured#featuredPost.uri" }
  • AddedEdge AddedEdge { src: "com.babesky.actor.featured#featuredPost", tgt: "com.babesky.actor.featured#featuredPost.cid", kind: "prop", name: Some("cid") }
  • AddedEdge AddedEdge { src: "com.babesky.actor.featured:body.posts:items", tgt: "com.babesky.actor.featured#featuredPost", kind: "ref", name: None }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "com.babesky.actor.featured:body.posts:items.cid" }
  • RemovedVertex { vertex_id: "com.babesky.actor.featured:body.posts:items.uri" }

Added Elements

  • AddedVertex { vertex_id: "com.babesky.actor.featured#featuredPost" }
  • AddedVertex { vertex_id: "com.babesky.actor.featured#featuredPost.cid" }
  • AddedVertex { vertex_id: "com.babesky.actor.featured#featuredPost.uri" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "com.babesky.actor.featured:body.posts:items", sort: "ref", value: "#featuredPost" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "com.babesky.actor.featured#featuredPost", src: "com.babesky.actor.featured#featuredPost", tgt: "com.babesky.actor.featured#featuredPost.uri", kind: "prop", name: Some("uri") }
  • Breaking: RequiredEdgeRemoved { vertex_id: "com.babesky.actor.featured:body.posts:items", src: "com.babesky.actor.featured:body.posts:items", tgt: "com.babesky.actor.featured:body.posts:items.uri", kind: "prop", name: Some("uri") }
  • Breaking: RemovedEdge { src: "com.babesky.actor.featured:body.posts:items", tgt: "com.babesky.actor.featured:body.posts:items.cid", kind: "prop", name: Some("cid") }
  • Breaking: KindChanged { vertex_id: "com.babesky.actor.featured:body.posts:items", old_kind: "object", new_kind: "ref" }
  • Non-breaking: AddedEdge { src: "com.babesky.actor.featured#featuredPost", tgt: "com.babesky.actor.featured#featuredPost.cid", kind: "prop", name: Some("cid") }
  • Non-breaking: AddedEdge { src: "com.babesky.actor.featured:body.posts:items", tgt: "com.babesky.actor.featured#featuredPost", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 +
    "featuredPost": {
5 +
      "properties": {
6 +
        "cid": {
7 +
          "description": "CID of the post record at time of featuring. Used to detect if the post has been deleted or edited.",
8 +
          "format": "cid",
9 +
          "type": "string"
10 +
        },
11 +
        "uri": {
12 +
          "description": "AT URI of an app.bsky.feed.post in the same actor's repository.",
13 +
          "format": "at-uri",
14 +
          "type": "string"
15 +
        }
16 +
      },
17 +
      "required": [
18 +
        "uri"
19 +
      ],
20 +
      "type": "object"
21 +
    },
4 22
    "main": {
5 23
      "description": "Featured posts record for the Babesky creator portfolio. An ordered selection of the creator's own posts (max 8) displayed as a curated preview reel in Atmosphere apps. Consumed alongside com.babesky.actor.profile, com.babesky.actor.links, and com.babesky.actor.support.",
6 24
      "key": "literal:self",
7 25
      "record": {
8 26
        "properties": {
9 27
          "createdAt": {
10 28
            "format": "datetime",
11 29
            "type": "string"
12 30
          },
13 31
          "posts": {
14 32
            "items": {
15 -
              "properties": {
16 -
                "cid": {
17 -
                  "description": "CID of the post record at time of featuring. Used to detect if the post has been deleted or edited.",
18 -
                  "format": "cid",
19 -
                  "type": "string"
20 -
                },
21 -
                "uri": {
22 -
                  "description": "AT URI of an app.bsky.feed.post in the same actor's repository.",
23 -
                  "format": "at-uri",
24 -
                  "type": "string"
25 -
                }
26 -
              },
27 -
              "required": [
28 -
                "uri"
29 -
              ],
30 -
              "type": "object"
33 +
              "ref": "#featuredPost",
34 +
              "type": "ref"
31 35
            },
32 36
            "maxLength": 8,
33 37
            "type": "array"
34 38
          }
35 39
        },
36 40
        "required": [
37 41
          "posts",
38 42
          "createdAt"
39 43
        ],
40 44
        "type": "object"
41 45
      },
42 46
      "type": "record"
43 47
    }
44 48
  },
45 49
  "id": "com.babesky.actor.featured",
46 50
  "lexicon": 1
47 51
}

Compare Other Versions

Lexicon Garden

@