diff --git a/mateclaw-server/src/main/java/vip/mate/channel/wecom/WeComKeepaliveScheduler.java b/mateclaw-server/src/main/java/vip/mate/channel/wecom/WeComKeepaliveScheduler.java index 53a0b74e..b53e6db6 100644 --- a/mateclaw-server/src/main/java/vip/mate/channel/wecom/WeComKeepaliveScheduler.java +++ b/mateclaw-server/src/main/java/vip/mate/channel/wecom/WeComKeepaliveScheduler.java @@ -20,7 +20,7 @@ import java.util.concurrent.TimeUnit; * the eventual {@code finish=true} chunk is silently rejected β the * user sees "π€ ζθδΈ..." stuck forever. RFC-32 Β§2.1.2 (R-7 / B-5). * - *
Constants (verified against QwenPaw {@code channel.py:66-67,986-1031}): + *
Constants (chosen empirically based on observed slot lifetime): *
Encoding is stable (LinkedHashMap β consistent key order so byte- * length is predictable). Decoding tolerates extra fields β useful if diff --git a/mateclaw-server/src/main/java/vip/mate/channel/wecom/cards/tool_guard/ToolGuardCardRenderer.java b/mateclaw-server/src/main/java/vip/mate/channel/wecom/cards/tool_guard/ToolGuardCardRenderer.java index 6d94b52b..0addd2a5 100644 --- a/mateclaw-server/src/main/java/vip/mate/channel/wecom/cards/tool_guard/ToolGuardCardRenderer.java +++ b/mateclaw-server/src/main/java/vip/mate/channel/wecom/cards/tool_guard/ToolGuardCardRenderer.java @@ -12,8 +12,7 @@ import java.util.Map; * Build the WeCom {@code button_interaction} approval card payload from * an {@link ApprovalNotice}. * - *
Card structure (verified against QwenPaw {@code tool_guard.py:107-140} - * + WeCom official protocol): + *
Card structure (matches the WeCom official protocol): *
* {
* "card_type": "button_interaction",