feat(lark): support inbound message attachments - #5768
Conversation
|
@aihes is attempting to deploy a commit to the IndexLabs Team on Vercel. A member of the Team first needs to authorize it. |
f48ac48 to
aebd21a
Compare
|
Thanks for this — and I want to be straight that closing it is a sequencing outcome, not a verdict on the work. We've merged #5580 for inbound Feishu/Lark media. Because it touches the same files with a different architecture, this PR can't be rebased into anything close to its current shape, so I'm closing it rather than leaving it to rot with growing conflicts. Two things here that the merged version genuinely does not do, and I don't want them lost:
Your read on #5482 was also correct — images-only plus blocking work on the ACK path was the right thing to flag, and the ACK-path concern is precisely what the merged PR ended up restructuring around. If you're up for a follow-up, adding Sorry for the wasted rebasing effort here, and thanks for the care that went into it. |
Summary
Why this is separate from #5482
#5482 handles only images and still performs blocking work on the ACK path. This implementation covers all supported Feishu resource shapes, moves network and agent work behind a durable queue, enforces identity/membership/@bot checks before download, streams 100 MB resources without buffering them twice, and commits the message, attachments, and dedup marker in one transaction.
Security boundaries
Verification
Passed locally on PostgreSQL 16:
make sqlcgo test -race ./internal/integrations/lark ./internal/integrations/channel/engine ./internal/storagego vet ./...make testgit diff --checkmake checkpassed TypeScript typecheck, all TypeScript unit tests, all Go tests, and 24/29 Playwright cases. Five unrelated existing E2E cases (MCP Apps visibility, one issue grouping assertion, and two settings flows) failed unchanged by this backend-only branch; PR CI is the clean-environment gate.No production Bot credentials or long connection were used for local testing.
Closes #5579