app.standard-reader.labeler.subscription
Schema Diff
+5 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 2 non-breaking changes.
Non-Breaking Changes (2)
- AddedVertex AddedVertex { vertex_id: "app.standard-reader.labeler.subscription:body.enabled" }
- AddedEdge AddedEdge { src: "app.standard-reader.labeler.subscription:body", tgt: "app.standard-reader.labeler.subscription:body.enabled", kind: "prop", name: Some("enabled") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.standard-reader.labeler.subscription:body.enabled" }
Additional Notes
- Non-breaking: AddedEdge { src: "app.standard-reader.labeler.subscription:body", tgt: "app.standard-reader.labeler.subscription:body.enabled", kind: "prop", name: Some("enabled") }
1
1
{
2
2
"id": "app.standard-reader.labeler.subscription",
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
"labeler",
11
11
"createdAt"
12
12
],
13
13
"properties": {
14
14
"labels": {
15
15
"type": "array",
16
16
"items": {
17
17
"ref": "#labelPref",
18
18
"type": "ref"
19
19
},
20
20
"description": "Per-label visibility overrides for this labeler's label values."
21
21
},
22
+
"enabled": {
23
+
"type": "boolean",
24
+
"default": true,
25
+
"description": "Whether this labeler's labels are applied while reading. `false` keeps the subscription (and its per-label preferences) but stops the labeler acting here — for a labeler the reader wants on another app but not this one. Absent means enabled."
26
+
},
22
27
"labeler": {
23
28
"type": "string",
24
29
"format": "did",
25
30
"description": "DID of the labeler service being subscribed to."
26
31
},
27
32
"createdAt": {
28
33
"type": "string",
29
34
"format": "datetime",
30
35
"description": "When the reader subscribed to the labeler."
31
36
}
32
37
}
33
38
},
34
39
"description": "Subscribes the reader to a labeler service (like adding a Bluesky moderation service). Presence of the record means subscribed; deleting it unsubscribes. The rkey is derived from the labeler DID so each labeler maps to a single record. Successor to app.standard-reader.labelerSubscription, nested under the labeler NSID group."
35
40
},
36
41
"labelPref": {
37
42
"type": "object",
38
43
"required": [
39
44
"val",
40
45
"visibility"
41
46
],
42
47
"properties": {
43
48
"val": {
44
49
"type": "string",
45
50
"maxLength": 128,
46
51
"description": "The label value this preference applies to."
47
52
},
48
53
"visibility": {
49
54
"type": "string",
50
55
"maxLength": 16,
51
56
"description": "ignore = show normally; warn = content warning / blur; hide = filter out.",
52
57
"knownValues": [
53
58
"ignore",
54
59
"warn",
55
60
"hide"
56
61
]
57
62
}
58
63
},
59
64
"description": "How the reader wants a single label value from this labeler treated."
60
65
}
61
66
},
62
67
"$type": "com.atproto.lexicon.schema",
63
68
"lexicon": 1
64
69
}