From 7886f1d65d2ecc6f1b08c1a24713cf9ffc1d2437 Mon Sep 17 00:00:00 2001 From: DBT Date: Fri, 27 Feb 2026 04:22:56 +0000 Subject: [PATCH] feishu: prefer post for long/multiline replies and log actual msg_type --- pkg/channels/feishu.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/channels/feishu.go b/pkg/channels/feishu.go index b1ab58b..98170df 100644 --- a/pkg/channels/feishu.go +++ b/pkg/channels/feishu.go @@ -145,8 +145,10 @@ func (c *FeishuChannel) Send(ctx context.Context, msg bus.OutboundMessage) error return fmt.Errorf("feishu api error: code=%d msg=%s", resp.Code, resp.Msg) } - logger.DebugCF("feishu", "Feishu message sent", map[string]interface{}{ + logger.InfoCF("feishu", "Feishu message sent", map[string]interface{}{ logger.FieldChatID: msg.ChatID, + "msg_type": msgType, + "has_media": strings.TrimSpace(msg.Media) != "", }) return nil @@ -336,7 +338,7 @@ func buildFeishuOutbound(msg bus.OutboundMessage) (string, string, error) { return larkim.MsgTypeInteractive, content, nil } - if looksLikeMarkdown(content) { + if looksLikeMarkdown(content) || strings.Contains(content, "\n") || len([]rune(content)) > 180 { postPayload, err := buildFeishuPostContent(content) if err != nil { return "", "", fmt.Errorf("failed to marshal feishu post content: %w", err)