Skip to content

fix(feishu): infer receive_id_type from chat_id prefix#7769

Open
dalianmao000 wants to merge 1 commit into
NousResearch:mainfrom
dalianmao000:fix/feishu-pr
Open

fix(feishu): infer receive_id_type from chat_id prefix#7769
dalianmao000 wants to merge 1 commit into
NousResearch:mainfrom
dalianmao000:fix/feishu-pr

Conversation

@dalianmao000

Copy link
Copy Markdown
Contributor

Summary

  • Infer receive_id_type from chat_id prefix to support all Feishu ID types:
    • ou_ prefix → open_id
    • on_ prefix → union_id
    • default → chat_id
  • Previously hardcoded receive_id_type="chat_id" which caused Feishu API error [230001] invalid receive_id for open_id targets

Fixes

Fixes #7685

Test plan

  • Create cron job with deliver: "feishu:ou_xxxxx" and verify delivery succeeds
  • Verify chat_id (oc_) and union_id (on_) targets still work

🤖 Generated with Claude Code

Support open_id (ou_*) and union_id (on_*) targets in addition to
chat_id (oc_*). Previously hardcoded receive_id_type="chat_id"
which caused API rejection 230001 for open_id targets.

Fixes NousResearch#7685

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@alt-glitch alt-glitch added type/bug Something isn't working P2 Medium — degraded but workaround exists platform/feishu Feishu / Lark adapter comp/gateway Gateway runner, session dispatch, delivery labels Apr 29, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Likely duplicate of #7694 — same fix (infer receive_id_type from chat_id prefix in Feishu adapter). Both fix #7685. Also overlaps with #10040.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/gateway Gateway runner, session dispatch, delivery P2 Medium — degraded but workaround exists platform/feishu Feishu / Lark adapter type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(feishu): _send_raw_message hardcodes receive_id_type="chat_id", breaks delivery to open_id (ou_) targets

2 participants