Fix regeneration of freshly generated chat messages #188
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Short version
This fixes regeneration of messages that were freshly generated. The task ID is now stored in the message entry so we can get a message from a task ID. That is helpful for the
/chat/check_generation?taskId=123
endpoint.Long version
When a chat task has finished, a listener stores a message in the
oc_assistant_chat_msgs
table.In the UI, when a message is currently being generated, the
/chat/check_generation?taskId=123
assistant endpoint is polled.When the related controller sees that the task has finished and is successful:
The problem was that the message obtained via
/chat/check_generation?taskId=123
had no ID so it could not be regenerated because we do it with a request like/chat/regenerate?messageId=619&sessionId=48
but we didn't have an ID for the freshly generated messages.The issue was not so visible because when opening the assistant, the message list was correctly loaded (from DB entries), with all message having an ID.