at.postgame.settings

postgame.at

Schema Diff

+86 -0

From

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

To

CID
bafyreifk6qwbqdi...
Indexed At
2026-09-25 16:34 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 34 non-breaking changes.

Non-Breaking Changes (34)
  • AddedVertex AddedVertex { vertex_id: "at.postgame.game#gameRef" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.avatarBlob" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.bannerBlob" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.battlenetHandle" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.bio" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.blogPublicationUri" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.blogTag" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.discordHandle" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.favouriteGame" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.igdbCompanyId" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.itchHandle" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.pronouns" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.showRpgSprite" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.steamUrl" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.streamPlaceHandle" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.twitchHandle" }
  • AddedVertex AddedVertex { vertex_id: "at.postgame.settings:body.website" }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.avatarBlob", kind: "prop", name: Some("avatarBlob") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.bannerBlob", kind: "prop", name: Some("bannerBlob") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.battlenetHandle", kind: "prop", name: Some("battlenetHandle") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.bio", kind: "prop", name: Some("bio") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.blogPublicationUri", kind: "prop", name: Some("blogPublicationUri") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.blogTag", kind: "prop", name: Some("blogTag") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.discordHandle", kind: "prop", name: Some("discordHandle") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.favouriteGame", kind: "prop", name: Some("favouriteGame") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.igdbCompanyId", kind: "prop", name: Some("igdbCompanyId") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.itchHandle", kind: "prop", name: Some("itchHandle") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.pronouns", kind: "prop", name: Some("pronouns") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.showRpgSprite", kind: "prop", name: Some("showRpgSprite") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.steamUrl", kind: "prop", name: Some("steamUrl") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.streamPlaceHandle", kind: "prop", name: Some("streamPlaceHandle") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.twitchHandle", kind: "prop", name: Some("twitchHandle") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.website", kind: "prop", name: Some("website") }
  • AddedEdge AddedEdge { src: "at.postgame.settings:body.favouriteGame", tgt: "at.postgame.game#gameRef", kind: "ref", name: None }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "at.postgame.game#gameRef" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.avatarBlob" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.bannerBlob" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.battlenetHandle" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.bio" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.blogPublicationUri" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.blogTag" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.discordHandle" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.favouriteGame" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.igdbCompanyId" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.itchHandle" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.pronouns" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.showRpgSprite" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.steamUrl" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.streamPlaceHandle" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.twitchHandle" }
  • AddedVertex { vertex_id: "at.postgame.settings:body.website" }

Additional Notes

  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.avatarBlob", kind: "prop", name: Some("avatarBlob") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.bannerBlob", kind: "prop", name: Some("bannerBlob") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.battlenetHandle", kind: "prop", name: Some("battlenetHandle") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.bio", kind: "prop", name: Some("bio") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.blogPublicationUri", kind: "prop", name: Some("blogPublicationUri") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.blogTag", kind: "prop", name: Some("blogTag") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.discordHandle", kind: "prop", name: Some("discordHandle") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.favouriteGame", kind: "prop", name: Some("favouriteGame") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.igdbCompanyId", kind: "prop", name: Some("igdbCompanyId") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.itchHandle", kind: "prop", name: Some("itchHandle") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.pronouns", kind: "prop", name: Some("pronouns") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.showRpgSprite", kind: "prop", name: Some("showRpgSprite") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.steamUrl", kind: "prop", name: Some("steamUrl") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.streamPlaceHandle", kind: "prop", name: Some("streamPlaceHandle") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.twitchHandle", kind: "prop", name: Some("twitchHandle") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body", tgt: "at.postgame.settings:body.website", kind: "prop", name: Some("website") }
  • Non-breaking: AddedEdge { src: "at.postgame.settings:body.favouriteGame", tgt: "at.postgame.game#gameRef", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 5
      "description": "User settings for postgame",
6 6
      "key": "literal:self",
7 7
      "record": {
8 8
        "properties": {
9 +
          "avatarBlob": {
10 +
            "accept": [
11 +
              "image/jpeg",
12 +
              "image/png",
13 +
              "image/webp",
14 +
              "image/gif"
15 +
            ],
16 +
            "description": "Overrides the Bluesky profile avatar within postgame",
17 +
            "maxSize": 5242880,
18 +
            "type": "blob"
19 +
          },
20 +
          "bannerBlob": {
21 +
            "accept": [
22 +
              "image/jpeg",
23 +
              "image/png",
24 +
              "image/webp",
25 +
              "image/gif"
26 +
            ],
27 +
            "description": "Profile banner shown on the public postgame profile",
28 +
            "maxSize": 5242880,
29 +
            "type": "blob"
30 +
          },
31 +
          "battlenetHandle": {
32 +
            "maxLength": 64,
33 +
            "type": "string"
34 +
          },
35 +
          "bio": {
36 +
            "maxLength": 256,
37 +
            "type": "string"
38 +
          },
39 +
          "blogPublicationUri": {
40 +
            "description": "AT URI of a site.standard.publication record to surface posts from",
41 +
            "format": "at-uri",
42 +
            "type": "string"
43 +
          },
44 +
          "blogTag": {
45 +
            "description": "Only display posts tagged with this keyword",
46 +
            "maxLength": 64,
47 +
            "type": "string"
48 +
          },
49 +
          "discordHandle": {
50 +
            "description": "Discord user ID (snowflake)",
51 +
            "maxLength": 32,
52 +
            "type": "string"
53 +
          },
9 54
          "displayName": {
10 55
            "maxLength": 64,
11 56
            "type": "string"
12 57
          },
58 +
          "favouriteGame": {
59 +
            "description": "Pinned favourite game shown on the profile",
60 +
            "ref": "at.postgame.game#gameRef",
61 +
            "type": "ref"
62 +
          },
63 +
          "igdbCompanyId": {
64 +
            "description": "IGDB company id this account represents. Surfaces a 'Games by X' catalogue and an updates feed on the profile. Honoured only when the account's own library overlaps the company's games.",
65 +
            "minimum": 1,
66 +
            "type": "integer"
67 +
          },
68 +
          "itchHandle": {
69 +
            "maxLength": 64,
70 +
            "type": "string"
71 +
          },
13 72
          "profileView": {
14 73
            "knownValues": [
15 74
              "list",
16 75
              "grid"
17 76
            ],
18 77
            "maxLength": 32,
19 78
            "type": "string"
79 +
          },
80 +
          "pronouns": {
81 +
            "maxLength": 64,
82 +
            "type": "string"
83 +
          },
84 +
          "showRpgSprite": {
85 +
            "description": "Use the user's rpg.actor sprite in place of their avatar",
86 +
            "type": "boolean"
87 +
          },
88 +
          "steamUrl": {
89 +
            "format": "uri",
90 +
            "maxLength": 256,
91 +
            "type": "string"
92 +
          },
93 +
          "streamPlaceHandle": {
94 +
            "maxLength": 64,
95 +
            "type": "string"
96 +
          },
97 +
          "twitchHandle": {
98 +
            "maxLength": 64,
99 +
            "type": "string"
100 +
          },
101 +
          "website": {
102 +
            "description": "Personal website URL. Stored with an explicit http(s):// scheme.",
103 +
            "format": "uri",
104 +
            "maxLength": 256,
105 +
            "type": "string"
20 106
          }
21 107
        },
22 108
        "type": "object"
23 109
      },
24 110
      "type": "record"
25 111
    }
26 112
  },
27 113
  "id": "at.postgame.settings",
28 114
  "lexicon": 1
29 115
}

Compare Other Versions

Lexicon Garden

@