fix(feishu): preserve markdown around tables - #61377
Conversation
dba663b to
bd97a01
Compare
Competing approach in the saturated Feishu markdown-table cluster (canonical open #12114; tracked by #27469). This PR keeps table-containing messages on |
|
Thanks for the focused Feishu fix. The premise remains present on current main: The PR's added coverage exercises mixed markdown/table segmentation and verifies the send path selects Automated hermes-sweeper review. |
bd97a01 to
1931071
Compare
|
Closing — fixed on main by #68121. Your approach (table blocks as plain-text rows inside an otherwise markdown-rendering post) solved the real complaint — one table no longer destroys the whole message's formatting — but Feishu's server-side fix made the special-casing unnecessary: post/md now renders GFM tables natively, so the whole message renders. Thanks! |
Summary
Fixes Feishu/Lark markdown rendering when an outgoing message contains Markdown tables.
Previously, any content that looked like a table forced the entire outgoing message to
msg_type=text. That kept the table visible but exposed headings, emphasis, inline code, links, and other Markdown markers as raw text.Details
postpayloads.textrows because Feishu postmdrows do not render tables reliably.mdrows.This is intentionally narrower than the Card v2 table approach in #12114: it preserves existing post-message behavior and client compatibility without switching the whole response to an interactive card.
Validation
scripts/run_tests.sh tests/gateway/test_feishu.py -qgit diff --check