Skip to content

Commit 8fec0a2

Browse files
committed
test: refresh conformance snapshot to Bot API 10.1
The committed botdoc snapshot was Bot API 5.3 (78 methods), making the conformance drift-guard toothless against the modern surface. Refresh it to the live published API (10.1, 180 methods) so the test enforces real parity. Categorizes the 14 still-unimplemented published methods in deferredMethods, each with the specific MTProto/td blocker (no exposed RPC or unmappable semantics). All other published methods are now implemented or covered.
1 parent acb2000 commit 8fec0a2

2 files changed

Lines changed: 16969 additions & 4347 deletions

File tree

conformance_test.go

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,25 @@ var coveredByOtherMeans = map[string]string{
1717
"getMe": "Bot.Self()",
1818
}
1919

20-
// deferredMethods lists published methods that are planned but not yet
21-
// implemented. Each is an acknowledged gap tracked in docs/roadmap.md; the
22-
// conformance test allows them so it can still catch *unacknowledged* drift.
23-
//
24-
// Empty: every method published in the snapshot is now implemented or
25-
// categorized as not-applicable below.
26-
var deferredMethods = map[string]string{}
20+
// deferredMethods lists published methods that are feasible in principle but not
21+
// yet implemented, each blocked on a missing gotd/td RPC or unclear MTProto
22+
// mapping. They should move to an implementation as td gains support.
23+
var deferredMethods = map[string]string{
24+
"deleteMessageReaction": "no bot-accessible MTProto RPC to remove another user's reaction",
25+
"deleteAllMessageReactions": "no bot-accessible MTProto RPC to clear a message's reactions",
26+
"sendMessageDraft": "messages.saveDraft exists but Bot API draft_id has no MTProto equivalent (one draft per peer/thread)",
27+
"sendRichMessageDraft": "rich-message drafts (Bot API 10.1) have no MTProto mapping yet",
28+
"sendLivePhoto": "no MTProto RPC for the iOS live-photo upload form",
29+
"setChatMemberTag": "no MTProto RPC for member tags",
30+
"getUserProfileAudios": "no MTProto RPC for profile audios",
31+
"getUserPersonalChatMessages": "no MTProto RPC for a user's personal-chat messages",
32+
"savePreparedKeyboardButton": "no MTProto RPC for prepared keyboard buttons",
33+
"answerChatJoinRequestQuery": "Bot API 10.1; no MTProto mapping yet",
34+
"sendChatJoinRequestWebApp": "Bot API 10.1; no MTProto mapping yet",
35+
"answerGuestQuery": "messages.setBotGuestChatResult not exposed by td v0.156.3",
36+
"readBusinessMessage": "messages.readHistory needs business-context peer resolution botapi can't do offline",
37+
"transferBusinessAccountStars": "no Stars-transfer RPC exposed by td v0.156.3",
38+
}
2739

2840
// notApplicableMethods lists published methods that do not apply to the
2941
// MTProto-native model and are intentionally not implemented.

0 commit comments

Comments
 (0)