Files
chenhg5-cc-connect/agent/opencode
bingkxu f58e75734f fix(feishu): prevent card action callback timeout on slow operations (#907)
* fix(feishu): prevent card action callback timeout on slow operations

When navigating to /list or similar card actions that call agent.ListSessions(), the synchronous cardNavHandler can exceed Feishu's 3-second callback timeout. This wraps the handler in a goroutine with a 2.5s deadline: fast responses return the card as before; slow responses return a loading toast immediately, then async-refresh the card via the Patch API once complete.

* fix: show session name in /current command with fallback to agent summary

* fix: show session name in /current via SessionTitleProvider fallback to DB query

* fix(opencode): sqlite3 CLI does not support ? placeholders, use inline query

* chore(opencode): use production opencode.db path for SessionTitleProvider

* fix(feishu): fix flaky TestCardAction_NavSlow_ReturnsToastThenRefreshes test

Use channel-based sync (refreshDone) instead of time.Sleep to wait for
async RefreshCard goroutine, eliminating race condition in test.

---------

Co-authored-by: vibecoder <16832299+vibecoder@user.noreply.gitee.com>
2026-05-18 10:13:09 +08:00
..