at.celest.temp.level

celest.at

Schema Diff

+46 -0

From

CID
bafyreicetcfmwxz...
Indexed At
2026-09-20 00:10 UTC
View this version

To

CID
bafyreihaslymkwm...
Indexed At
2026-09-20 01:35 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

2 breaking changes, 10 non-breaking changes.

Breaking Changes (2)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "at.celest.temp.level#hardclearsInformation", src: "at.celest.temp.level#hardclearsInformation", tgt: "at.celest.temp.level#hardclearsInformation.link", kind: "prop", name: Some("link") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "at.celest.temp.level#goldberriesInformation", src: "at.celest.temp.level#goldberriesInformation", tgt: "at.celest.temp.level#goldberriesInformation.link", kind: "prop", name: Some("link") }
Non-Breaking Changes (10)
  • AddedVertex AddedVertex { vertex_id: "at.celest.temp.level#goldberriesInformation" }
  • AddedVertex AddedVertex { vertex_id: "at.celest.temp.level#goldberriesInformation.link" }
  • AddedVertex AddedVertex { vertex_id: "at.celest.temp.level#goldberriesInformation.tier" }
  • AddedVertex AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation" }
  • AddedVertex AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation.clearCount" }
  • AddedVertex AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation.link" }
  • AddedVertex AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation.starRating" }
  • AddedEdge AddedEdge { src: "at.celest.temp.level#goldberriesInformation", tgt: "at.celest.temp.level#goldberriesInformation.tier", kind: "prop", name: Some("tier") }
  • AddedEdge AddedEdge { src: "at.celest.temp.level#hardclearsInformation", tgt: "at.celest.temp.level#hardclearsInformation.clearCount", kind: "prop", name: Some("clearCount") }
  • AddedEdge AddedEdge { src: "at.celest.temp.level#hardclearsInformation", tgt: "at.celest.temp.level#hardclearsInformation.starRating", kind: "prop", name: Some("starRating") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "at.celest.temp.level#goldberriesInformation" }
  • AddedVertex { vertex_id: "at.celest.temp.level#goldberriesInformation.link" }
  • AddedVertex { vertex_id: "at.celest.temp.level#goldberriesInformation.tier" }
  • AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation" }
  • AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation.clearCount" }
  • AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation.link" }
  • AddedVertex { vertex_id: "at.celest.temp.level#hardclearsInformation.starRating" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "at.celest.temp.level#hardclearsInformation", src: "at.celest.temp.level#hardclearsInformation", tgt: "at.celest.temp.level#hardclearsInformation.link", kind: "prop", name: Some("link") }
  • Breaking: RequiredEdgeAdded { vertex_id: "at.celest.temp.level#goldberriesInformation", src: "at.celest.temp.level#goldberriesInformation", tgt: "at.celest.temp.level#goldberriesInformation.link", kind: "prop", name: Some("link") }
  • Non-breaking: AddedEdge { src: "at.celest.temp.level#goldberriesInformation", tgt: "at.celest.temp.level#goldberriesInformation.tier", kind: "prop", name: Some("tier") }
  • Non-breaking: AddedEdge { src: "at.celest.temp.level#hardclearsInformation", tgt: "at.celest.temp.level#hardclearsInformation.clearCount", kind: "prop", name: Some("clearCount") }
  • Non-breaking: AddedEdge { src: "at.celest.temp.level#hardclearsInformation", tgt: "at.celest.temp.level#hardclearsInformation.starRating", kind: "prop", name: Some("starRating") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "difficulty": {
5 5
      "description": "The general colloquial name to describe the difficulty of a map",
6 6
      "properties": {
7 7
        "category": {
8 8
          "knownValues": [
9 9
            "beginner",
10 10
            "intermediate",
11 11
            "advanced",
12 12
            "expert",
13 13
            "grandmaster",
14 14
            "grandmaster+1",
15 15
            "grandmaster+2",
16 16
            "grandmaster+3",
17 17
            "grandmaster+4"
18 18
          ],
19 19
          "maxLength": 16,
20 20
          "type": "string"
21 21
        },
22 22
        "color": {
23 23
          "knownValues": [
24 24
            "green",
25 25
            "yellow",
26 26
            "red",
27 27
            "cracked"
28 28
          ],
29 29
          "maxLength": 16,
30 30
          "type": "string"
31 31
        }
32 32
      },
33 33
      "required": [
34 34
        "category"
35 35
      ],
36 36
      "type": "object"
37 37
    },
38 +
    "goldberriesInformation": {
39 +
      "description": "Additional information about this level according to goldberries",
40 +
      "properties": {
41 +
        "link": {
42 +
          "description": "A link to this level on goldberries",
43 +
          "format": "uri",
44 +
          "type": "string"
45 +
        },
46 +
        "tier": {
47 +
          "description": "The difficulty tier according to goldberries",
48 +
          "minimum": 1,
49 +
          "type": "integer"
50 +
        }
51 +
      },
52 +
      "required": [
53 +
        "link"
54 +
      ],
55 +
      "type": "object"
56 +
    },
57 +
    "hardclearsInformation": {
58 +
      "description": "Additional information about this level according to hardclears",
59 +
      "properties": {
60 +
        "clearCount": {
61 +
          "description": "How many verified clears this level has",
62 +
          "minimum": 1,
63 +
          "type": "integer"
64 +
        },
65 +
        "link": {
66 +
          "description": "A link to this level on hardclears",
67 +
          "format": "uri",
68 +
          "type": "string"
69 +
        },
70 +
        "starRating": {
71 +
          "description": "The star rating according to hardclears as a string (since lexicon v1 doesn't have a float type apparently). Formatted as '0.00'",
72 +
          "maxGraphemes": 4,
73 +
          "maxLength": 4,
74 +
          "minGraphemes": 4,
75 +
          "minLength": 4,
76 +
          "type": "string"
77 +
        }
78 +
      },
79 +
      "required": [
80 +
        "link"
81 +
      ],
82 +
      "type": "object"
83 +
    },
38 84
    "main": {
39 85
      "description": "A level you can play in Celeste",
40 86
      "key": "tid",
41 87
      "record": {
42 88
        "properties": {
43 89
          "banner": {
44 90
            "description": "A screenshot or banner image representing the level",
45 91
            "type": "blob"
46 92
          },
47 93
          "difficulty": {
48 94
            "description": "The agreed upon difficulty (or difficulty it's listed as in it's pack) for this level",
49 95
            "ref": "#difficulty",
50 96
            "type": "ref"
51 97
          },
52 98
          "name": {
53 99
            "description": "The name of a level",
54 100
            "maxGraphemes": 128,
55 101
            "maxLength": 1280,
56 102
            "minLength": 1,
57 103
            "type": "string"
58 104
          },
59 105
          "sid": {
60 106
            "description": "The level ID the game uses to identify this level",
61 107
            "maxGraphemes": 64,
62 108
            "maxLength": 640,
63 109
            "minLength": 1,
64 110
            "type": "string"
65 111
          }
66 112
        },
67 113
        "required": [
68 114
          "sid"
69 115
        ],
70 116
        "type": "object"
71 117
      },
72 118
      "type": "record"
73 119
    }
74 120
  },
75 121
  "id": "at.celest.temp.level",
76 122
  "lexicon": 1
77 123
}

Compare Other Versions

Lexicon Garden

@