garden.lexicon.nourishing-earthworm.crepeWatch
Schema Diff
+2 -1
Compatibility Analysis
Breaking Changes Detected
1 breaking change, 0 non-breaking changes.
Breaking Changes (1)
- ConstraintTightened ConstraintTightened { vertex_id: "garden.lexicon.nourishing-earthworm.crepeWatch:body.source", sort: "knownValues", old_value: "[\"crepe\",\"plex\",\"popfeed\"]", new_value: "[\"crepe\",\"plex\",\"popfeed\",\"letterboxd\"]" }
Migration Guidance
Constraint Changes
- ConstraintTightened ConstraintTightened { vertex_id: "garden.lexicon.nourishing-earthworm.crepeWatch:body.source", sort: "knownValues", old_value: "[\"crepe\",\"plex\",\"popfeed\"]", new_value: "[\"crepe\",\"plex\",\"popfeed\",\"letterboxd\"]" }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "One viewing of a movie, or of a TV show, season or episode, in crepe's private diary. A watch with no rating and no review text is a plain play (for example an episode Plex reported) and stays out of the diary log.",
6
6
"key": "tid",
7
7
"record": {
8
8
"properties": {
9
9
"containsSpoilers": {
10
10
"type": "boolean"
11
11
},
12
12
"createdAt": {
13
13
"description": "When this record was created (not the watch time).",
14
14
"format": "datetime",
15
15
"type": "string"
16
16
},
17
17
"episodeNumber": {
18
18
"description": "Required for episode watches.",
19
19
"minimum": 0,
20
20
"type": "integer"
21
21
},
22
22
"episodeTitle": {
23
23
"maxLength": 1000,
24
24
"type": "string"
25
25
},
26
26
"episodeTmdbId": {
27
27
"description": "The episode's own TMDB id, when known.",
28
28
"maxLength": 32,
29
29
"type": "string"
30
30
},
31
31
"genres": {
32
32
"items": {
33
33
"maxLength": 100,
34
34
"type": "string"
35
35
},
36
36
"maxLength": 20,
37
37
"type": "array"
38
38
},
39
39
"imdbId": {
40
40
"maxLength": 32,
41
41
"type": "string"
42
42
},
43
43
"kind": {
44
44
"description": "What was watched.",
45
45
"knownValues": [
46
46
"movie",
47
47
"show",
48
48
"season",
49
49
"episode"
50
50
],
51
51
"type": "string"
52
52
},
53
53
"mainCredit": {
54
54
"maxLength": 300,
55
55
"type": "string"
56
56
},
57
57
"mainCreditRole": {
58
58
"knownValues": [
59
59
"director",
60
60
"creator"
61
61
],
62
62
"type": "string"
63
63
},
64
64
"rating": {
65
65
"description": "Half stars out of five, times two. Absent means unrated.",
66
66
"maximum": 10,
67
67
"minimum": 1,
68
68
"type": "integer"
69
69
},
70
70
"releaseDate": {
71
71
"description": "Snapshot, YYYY-MM-DD.",
72
72
"maxLength": 32,
73
73
"type": "string"
74
74
},
75
75
"rewatch": {
76
76
"type": "boolean"
77
77
},
78
78
"seasonNumber": {
79
79
"description": "Required for season and episode watches.",
80
80
"minimum": 0,
81
81
"type": "integer"
82
82
},
83
83
"source": {
84
84
"description": "Where this watch was first recorded.",
85
85
"knownValues": [
86
86
"crepe",
87
87
"plex",
88
-
"popfeed"
88
+
"popfeed",
89
+
"letterboxd"
89
90
],
90
91
"type": "string"
91
92
},
92
93
"stamps": {
93
94
"description": "Map of field group name to hybrid logical clock stamp, for field-level last-write-wins merge between devices and the sync server.",
94
95
"type": "unknown"
95
96
},
96
97
"tags": {
97
98
"items": {
98
99
"maxGraphemes": 64,
99
100
"maxLength": 640,
100
101
"type": "string"
101
102
},
102
103
"maxLength": 50,
103
104
"type": "array"
104
105
},
105
106
"text": {
106
107
"description": "Review text, plain.",
107
108
"maxGraphemes": 10000,
108
109
"maxLength": 100000,
109
110
"type": "string"
110
111
},
111
112
"title": {
112
113
"description": "Snapshot of the movie or show title, for offline display.",
113
114
"maxLength": 1000,
114
115
"type": "string"
115
116
},
116
117
"tmdbId": {
117
118
"description": "TMDB id of the movie, or of the show for show, season and episode watches. Never an episode's own id.",
118
119
"maxLength": 32,
119
120
"type": "string"
120
121
},
121
122
"updatedAt": {
122
123
"format": "datetime",
123
124
"type": "string"
124
125
},
125
126
"watchedAt": {
126
127
"description": "When it was watched.",
127
128
"format": "datetime",
128
129
"type": "string"
129
130
}
130
131
},
131
132
"required": [
132
133
"kind",
133
134
"tmdbId",
134
135
"watchedAt",
135
136
"createdAt",
136
137
"updatedAt"
137
138
],
138
139
"type": "object"
139
140
},
140
141
"type": "record"
141
142
}
142
143
},
143
144
"id": "garden.lexicon.nourishing-earthworm.crepeWatch",
144
145
"lexicon": 1
145
146
}