chat.bsky.moderation.getMessageContext
Schema Diff
+12 -3
Compatibility Analysis
Breaking Changes Detected
1 breaking change, 1 non-breaking change.
Breaking Changes (1)
- 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") }
Non-Breaking Changes (1)
- 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") }
Migration Guidance
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") }
- 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") }
1
1
{
2
2
"id": "chat.bsky.moderation.getMessageContext",
3
3
"defs": {
4
4
"main": {
5
5
"type": "query",
6
6
"output": {
7
7
"schema": {
8
8
"type": "object",
9
9
"required": [
10
10
"messages"
11
11
],
12
12
"properties": {
13
13
"messages": {
14
14
"type": "array",
15
15
"items": {
16
16
"refs": [
17
17
"chat.bsky.convo.defs#messageView",
18
-
"chat.bsky.convo.defs#deletedMessageView"
18
+
"chat.bsky.convo.defs#systemMessageView"
19
19
],
20
20
"type": "union"
21
21
}
22
22
}
23
23
}
24
24
},
25
25
"encoding": "application/json"
26
26
},
27
27
"parameters": {
28
28
"type": "params",
29
29
"required": [
30
30
"messageId"
31
31
],
32
32
"properties": {
33
33
"after": {
34
34
"type": "integer",
35
-
"default": 5
35
+
"default": 5,
36
+
"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."
36
37
},
37
38
"before": {
38
39
"type": "integer",
39
-
"default": 5
40
+
"default": 5,
41
+
"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."
40
42
},
41
43
"convoId": {
42
44
"type": "string",
43
45
"description": "Conversation that the message is from. NOTE: this field will eventually be required."
44
46
},
45
47
"messageId": {
46
48
"type": "string"
49
+
},
50
+
"maxInterleavedSystemMessages": {
51
+
"type": "integer",
52
+
"default": 10,
53
+
"maximum": 1000,
54
+
"minimum": 0,
55
+
"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."
47
56
}
48
57
}
49
58
}
50
59
}
51
60
},
52
61
"$type": "com.atproto.lexicon.schema",
53
62
"lexicon": 1
54
63
}