fix(app): deliver pending messages queued during startup#14101
fix(app): deliver pending messages queued during startup#14101kayametehan wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Pull request overview
This PR fixes delivery of pending messages that were queued during conversation startup by ensuring the server migrates pending messages regardless of which task-id string encoding the client used, and adds regression tests to prevent reintroducing the issue.
Changes:
- Update pending-message migration to try both
task-{uuid.hex}andtask-{uuid-with-hyphens}conversation-id formats. - Add unit coverage for
SQLPendingMessageService.update_conversation_idwith hyphenated task IDs. - Add regression coverage ensuring
_process_pending_messagesmigrates and delivers messages for hyphenated task IDs.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
openhands/app_server/app_conversation/live_status_app_conversation_service.py |
Attempts migration from both task-id encodings before delivering queued pending messages. |
tests/unit/app_server/test_pending_message_service.py |
Adds a regression test for migrating messages stored under task-{uuid-with-hyphens}. |
tests/unit/app_server/test_live_status_app_conversation_service.py |
Adds a regression test asserting both migration attempts occur and delivery proceeds. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- OpenHands/OpenHands#14101 merge-after-nits (pending message dual task-id encoding) - charmbracelet/crush#2702 needs-discussion (super yollo: split yolo into two modes) - cline/cline#10384 merge-after-nits (cap retry-after delay at 60s default) INDEX: +8 entries under All-Hands-AI/OpenHands, anomalyco/opencode (sst), BerriAI/litellm, charmbracelet/crush, cline/cline, continuedev/continue, openai/codex. Verdict mix: 4 merge-as-is, 2 merge-after-nits, 2 needs-discussion, 1 request-changes.
|
This PR is stale because it has been open for 40 days with no activity. Remove the stale label or leave a comment, otherwise it will be closed in 10 days. |
|
This PR was closed because it had no activity for 50 days. If you feel this was closed in error, and you would like to continue the PR, please resubmit or let us know. |
Summary
Testing
Fixes #13716