app.rocksky.song

rocksky.app

Schema Diff

+6 -1

From

CID
bafyreidrk6onmrt...
Indexed At
2026-02-18 18:25 UTC
View this version

To

CID
bafyreib2y6erc54...
Indexed At
2026-05-31 04:19 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

1 breaking change, 2 non-breaking changes.

Breaking Changes (1)
  • ConstraintAdded ConstraintAdded { vertex_id: "app.rocksky.song:body.isrc", sort: "maxLength", value: "32" }
Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "app.rocksky.song:body.isrc" }
  • AddedEdge AddedEdge { src: "app.rocksky.song:body", tgt: "app.rocksky.song:body.isrc", kind: "prop", name: Some("isrc") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "app.rocksky.song:body.isrc" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "app.rocksky.song:body.isrc", sort: "maxLength", value: "32" }

Additional Notes

  • Non-breaking: AddedEdge { src: "app.rocksky.song:body", tgt: "app.rocksky.song:body.isrc", kind: "prop", name: Some("isrc") }
1 1
{
2 2
  "id": "app.rocksky.song",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "tid",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [
10 10
          "title",
11 11
          "artist",
12 12
          "album",
13 13
          "albumArtist",
14 14
          "duration",
15 15
          "createdAt"
16 16
        ],
17 17
        "properties": {
18 +
          "isrc": {
19 +
            "type": "string",
20 +
            "maxLength": 32,
21 +
            "description": "The International Standard Recording Code (ISRC) of the song."
22 +
          },
18 23
          "mbid": {
19 24
            "type": "string",
20 25
            "description": "The MusicBrainz ID of the song."
21 26
          },
22 27
          "tags": {
23 28
            "type": "array",
24 29
            "items": {
25 30
              "type": "string",
26 31
              "maxLength": 256,
27 32
              "minLength": 1
28 33
            },
29 34
            "description": "The tags of the song."
30 35
          },
31 36
          "wiki": {
32 37
            "type": "string",
33 38
            "maxLength": 10000,
34 39
            "description": "Informations about the song"
35 40
          },
36 41
          "year": {
37 42
            "type": "integer",
38 43
            "description": "The year the song was released."
39 44
          },
40 45
          "album": {
41 46
            "type": "string",
42 47
            "maxLength": 256,
43 48
            "minLength": 1,
44 49
            "description": "The album of the song."
45 50
          },
46 51
          "genre": {
47 52
            "type": "string",
48 53
            "maxLength": 256,
49 54
            "minLength": 1,
50 55
            "description": "The genre of the song."
51 56
          },
52 57
          "label": {
53 58
            "type": "string",
54 59
            "maxLength": 256,
55 60
            "description": "The label of the song."
56 61
          },
57 62
          "title": {
58 63
            "type": "string",
59 64
            "maxLength": 512,
60 65
            "minLength": 1,
61 66
            "description": "The title of the song."
62 67
          },
63 68
          "artist": {
64 69
            "type": "string",
65 70
            "maxLength": 256,
66 71
            "minLength": 1,
67 72
            "description": "The artist of the song."
68 73
          },
69 74
          "lyrics": {
70 75
            "type": "string",
71 76
            "maxLength": 10000,
72 77
            "description": "The lyrics of the song."
73 78
          },
74 79
          "artists": {
75 80
            "type": "array",
76 81
            "items": {
77 82
              "ref": "app.rocksky.artist.defs#artistMbid",
78 83
              "type": "ref"
79 84
            },
80 85
            "description": "The artists of the song with MusicBrainz IDs."
81 86
          },
82 87
          "albumArt": {
83 88
            "type": "blob",
84 89
            "accept": [
85 90
              "image/png",
86 91
              "image/jpeg"
87 92
            ],
88 93
            "maxSize": 2000000,
89 94
            "description": "The album art of the song."
90 95
          },
91 96
          "composer": {
92 97
            "type": "string",
93 98
            "maxLength": 256,
94 99
            "description": "The composer of the song."
95 100
          },
96 101
          "duration": {
97 102
            "type": "integer",
98 103
            "minimum": 1,
99 -
            "description": "The duration of the song in seconds."
104 +
            "description": "The duration of the song in milliseconds."
100 105
          },
101 106
          "createdAt": {
102 107
            "type": "string",
103 108
            "format": "datetime",
104 109
            "description": "The date when the song was created."
105 110
          },
106 111
          "tidalLink": {
107 112
            "type": "string",
108 113
            "format": "uri",
109 114
            "description": "The Tidal link of the song."
110 115
          },
111 116
          "discNumber": {
112 117
            "type": "integer",
113 118
            "minimum": 1,
114 119
            "description": "The disc number of the song in the album."
115 120
          },
116 121
          "albumArtUrl": {
117 122
            "type": "string",
118 123
            "format": "uri",
119 124
            "description": "The URL of the album art of the song."
120 125
          },
121 126
          "albumArtist": {
122 127
            "type": "string",
123 128
            "maxLength": 256,
124 129
            "minLength": 1,
125 130
            "description": "The album artist of the song."
126 131
          },
127 132
          "releaseDate": {
128 133
            "type": "string",
129 134
            "format": "datetime",
130 135
            "description": "The release date of the song."
131 136
          },
132 137
          "spotifyLink": {
133 138
            "type": "string",
134 139
            "format": "uri",
135 140
            "description": "The Spotify link of the song."
136 141
          },
137 142
          "trackNumber": {
138 143
            "type": "integer",
139 144
            "minimum": 1,
140 145
            "description": "The track number of the song in the album."
141 146
          },
142 147
          "youtubeLink": {
143 148
            "type": "string",
144 149
            "format": "uri",
145 150
            "description": "The YouTube link of the song."
146 151
          },
147 152
          "appleMusicLink": {
148 153
            "type": "string",
149 154
            "format": "uri",
150 155
            "description": "The Apple Music link of the song."
151 156
          },
152 157
          "copyrightMessage": {
153 158
            "type": "string",
154 159
            "maxLength": 256,
155 160
            "description": "The copyright message of the song."
156 161
          }
157 162
        }
158 163
      },
159 164
      "description": "A declaration of a song."
160 165
    }
161 166
  },
162 167
  "$type": "com.atproto.lexicon.schema",
163 168
  "lexicon": 1
164 169
}

Compare Other Versions

Lexicon Garden

@