larry-zy commented on code in PR #1540:
URL: https://github.com/apache/dubbo-admin/pull/1540#discussion_r3912358610


##########
ai/component/agent/react/react.go:
##########
@@ -101,36 +121,41 @@ func (ra *ReActAgent) Interact(input *schema.UserInput, 
sessionID string) *agent
                chans.Send(schema.StreamFinal(final))
 
                chans.Close()
-               history.NextTurn(sessionID)
        }()
        return chans
 }
 
 // newInteraction records the user input into history and returns a 
session-scoped
 // context plus a fresh state.
-func (ra *ReActAgent) newInteraction(input *schema.UserInput, sessionID 
string) (context.Context, *state, *memory.HistoryMemory, error) {
-       history, err := memory.GetHistoryMemory(ra.memoryCtx, 
memory.ChatHistoryKey)
-       if err != nil {
-               return nil, nil, nil, fmt.Errorf("failed to get history from 
context: %w", err)
+func (ra *ReActAgent) newInteraction(parent context.Context, input 
*schema.UserInput, sessionID string) (context.Context, *state, error) {
+       if ra.messageStore == nil {
+               return nil, nil, fmt.Errorf("message store is not configured")
+       }
+       if input == nil {
+               return nil, nil, fmt.Errorf("user input is nil")
        }
 
        // Record the user's message as plain text. The session id travels via
-       // context (memory.SessionIDKey), so there is no need to wrap the input 
in a
+       // context, so there is no need to wrap the input in a
        // JSON envelope the model would otherwise have to read through.
-       history.AddHistory(sessionID, 
ai.NewUserMessage(ai.NewTextPart(input.Content)))
+       turnID, err := ra.messageStore.BeginTurn(parent, sessionID)

Review Comment:
   This creates the persisted Turn before the interaction loop starts. Any 
later cancellation path must either finalize or explicitly abort this Turn; 
otherwise it remains active.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to