chat.bsky.moderation.getMessageContext
Schema Diff
+9 -1
Compatibility Analysis
Breaking Changes Detected
6 breaking changes, 2 non-breaking changes.
Breaking Changes (6)
- RemovedVertex RemovedVertex { vertex_id: "chat.bsky.convo.defs#deletedMessageView" }
- RemovedVertex RemovedVertex { vertex_id: "chat.bsky.moderation.getMessageContext:output.messages:items:variant2" }
- RemovedEdge RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items", tgt: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", kind: "variant", name: Some("chat.bsky.convo.defs#deletedMessageView") }
- RemovedEdge RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items", tgt: "chat.bsky.moderation.getMessageContext:output.messages:items:variant2", kind: "variant", name: Some("chat.bsky.convo.defs#systemMessageView") }
- RemovedEdge RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", tgt: "chat.bsky.convo.defs#deletedMessageView", kind: "ref", name: None }
- RemovedEdge RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items:variant2", tgt: "chat.bsky.convo.defs#systemMessageView", kind: "ref", name: None }
Non-Breaking Changes (2)
- AddedEdge AddedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items", tgt: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", kind: "variant", name: Some("chat.bsky.convo.defs#systemMessageView") }
- AddedEdge AddedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", tgt: "chat.bsky.convo.defs#systemMessageView", kind: "ref", name: None }
Migration Guidance
Removed Elements
RemovedVertex { vertex_id: "chat.bsky.convo.defs#deletedMessageView" }RemovedVertex { vertex_id: "chat.bsky.moderation.getMessageContext:output.messages:items:variant2" }
Additional Notes
- Breaking: RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items", tgt: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", kind: "variant", name: Some("chat.bsky.convo.defs#deletedMessageView") }
- Breaking: RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items", tgt: "chat.bsky.moderation.getMessageContext:output.messages:items:variant2", kind: "variant", name: Some("chat.bsky.convo.defs#systemMessageView") }
- Breaking: RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", tgt: "chat.bsky.convo.defs#deletedMessageView", kind: "ref", name: None }
- Breaking: RemovedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items:variant2", tgt: "chat.bsky.convo.defs#systemMessageView", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items", tgt: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", kind: "variant", name: Some("chat.bsky.convo.defs#systemMessageView") }
- Non-breaking: AddedEdge { src: "chat.bsky.moderation.getMessageContext:output.messages:items:variant1", tgt: "chat.bsky.convo.defs#systemMessageView", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"output": {
6
6
"encoding": "application/json",
7
7
"schema": {
8
8
"properties": {
9
9
"messages": {
10
10
"items": {
11
11
"refs": [
12
12
"chat.bsky.convo.defs#messageView",
13
-
"chat.bsky.convo.defs#deletedMessageView",
14
13
"chat.bsky.convo.defs#systemMessageView"
15
14
],
16
15
"type": "union"
17
16
},
18
17
"type": "array"
19
18
}
20
19
},
21
20
"required": [
22
21
"messages"
23
22
],
24
23
"type": "object"
25
24
}
26
25
},
27
26
"parameters": {
28
27
"properties": {
29
28
"after": {
30
29
"default": 5,
30
+
"description": "Number of user messages after the target to include. System messages between the target and the latest returned user message are also included, capped per gap by `maxInterleavedSystemMessages`. If there are no user messages after the target, up to `maxInterleavedSystemMessages` system messages immediately following the target are returned instead.",
31
31
"type": "integer"
32
32
},
33
33
"before": {
34
34
"default": 5,
35
+
"description": "Number of user messages before the target to include. System messages between the earliest returned user message and the target are also included, capped per gap by `maxInterleavedSystemMessages`. If there are no user messages before the target, up to `maxInterleavedSystemMessages` system messages immediately preceding the target are returned instead.",
35
36
"type": "integer"
36
37
},
37
38
"convoId": {
38
39
"description": "Conversation that the message is from. NOTE: this field will eventually be required.",
39
40
"type": "string"
40
41
},
42
+
"maxInterleavedSystemMessages": {
43
+
"default": 10,
44
+
"description": "Maximum number of system messages to include per gap between consecutive returned messages (and per side when there are no user messages on that side). Within a gap, the system messages closest to the earlier message are kept.",
45
+
"maximum": 1000,
46
+
"minimum": 0,
47
+
"type": "integer"
48
+
},
41
49
"messageId": {
42
50
"type": "string"
43
51
}
44
52
},
45
53
"required": [
46
54
"messageId"
47
55
],
48
56
"type": "params"
49
57
},
50
58
"type": "query"
51
59
}
52
60
},
53
61
"id": "chat.bsky.moderation.getMessageContext",
54
62
"lexicon": 1
55
63
}