dev.tsunagite.song

tsunagite.dev

Schema Diff

+8 -0

From

CID
bafyreiemevris5t...
Indexed At
2026-02-18 19:15 UTC
View this version

To

CID
bafyreicoqttwkca...
Indexed At
2026-04-30 03:20 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 4 non-breaking changes.

Non-Breaking Changes (4)
  • AddedVertex AddedVertex { vertex_id: "dev.tsunagite.song:body.createdAt" }
  • AddedVertex AddedVertex { vertex_id: "dev.tsunagite.song:body.updatedAt" }
  • AddedEdge AddedEdge { src: "dev.tsunagite.song:body", tgt: "dev.tsunagite.song:body.createdAt", kind: "prop", name: Some("createdAt") }
  • AddedEdge AddedEdge { src: "dev.tsunagite.song:body", tgt: "dev.tsunagite.song:body.updatedAt", kind: "prop", name: Some("updatedAt") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "dev.tsunagite.song:body.createdAt" }
  • AddedVertex { vertex_id: "dev.tsunagite.song:body.updatedAt" }

Additional Notes

  • Non-breaking: AddedEdge { src: "dev.tsunagite.song:body", tgt: "dev.tsunagite.song:body.createdAt", kind: "prop", name: Some("createdAt") }
  • Non-breaking: AddedEdge { src: "dev.tsunagite.song:body", tgt: "dev.tsunagite.song:body.updatedAt", kind: "prop", name: Some("updatedAt") }
1 1
{
2 2
  "id": "dev.tsunagite.song",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "any",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [
10 10
          "game",
11 11
          "title",
12 12
          "composer"
13 13
        ],
14 14
        "properties": {
15 15
          "game": {
16 16
            "type": "array",
17 17
            "items": {
18 18
              "type": "string",
19 19
              "format": "at-uri",
20 20
              "description": "All URIs must point to records of type `dev.tsunagite.game`."
21 21
            },
22 22
            "description": "The game(s) this song is included in."
23 23
          },
24 24
          "genre": {
25 25
            "ref": "dev.tsunagite.translatable",
26 26
            "type": "ref",
27 27
            "description": "The genre this song belongs to."
28 28
          },
29 29
          "title": {
30 30
            "ref": "dev.tsunagite.translatable",
31 31
            "type": "ref",
32 32
            "description": "The human-readable title of this song in UI. Translations will typically be listed alongside the default."
33 33
          },
34 34
          "jacket": {
35 35
            "type": "blob",
36 36
            "accept": [
37 37
              "image/png",
38 38
              "image/jpeg",
39 39
              "image/jxl",
40 40
              "image/webp"
41 41
            ],
42 42
            "maxSize": 8000000,
43 43
            "description": "The jacket or banner art of this song, for display in UI."
44 44
          },
45 45
          "source": {
46 46
            "ref": "dev.tsunagite.translatable",
47 47
            "type": "ref",
48 48
            "description": "The source this song is from - an album, competition, other game, etc."
49 49
          },
50 50
          "composer": {
51 51
            "ref": "dev.tsunagite.translatable",
52 52
            "type": "ref",
53 53
            "description": "The name of the composer of this song. Translations will typically be listed alongside the default."
54 54
          },
55 55
          "subtitle": {
56 56
            "ref": "dev.tsunagite.translatable",
57 57
            "type": "ref",
58 58
            "description": "The human-readable subtitle of this song."
59 59
          },
60 +
          "createdAt": {
61 +
            "type": "string",
62 +
            "format": "datetime"
63 +
          },
64 +
          "updatedAt": {
65 +
            "type": "string",
66 +
            "format": "datetime"
67 +
          },
60 68
          "jacketArtist": {
61 69
            "ref": "dev.tsunagite.translatable",
62 70
            "type": "ref",
63 71
            "description": "The name of the jacket artist for this song."
64 72
          }
65 73
        }
66 74
      },
67 75
      "description": "A song included in a game hosting leaderboards via Tsunagite."
68 76
    }
69 77
  },
70 78
  "$type": "com.atproto.lexicon.schema",
71 79
  "lexicon": 1,
72 80
  "description": "Definitions related to songs included in games hosting leaderboards via Tsunagite."
73 81
}

Compare Other Versions

Lexicon Garden

@