Add automatic ChunkID generation for messages in Send method
- Implemented logic to auto-generate ChunkID for messages when not provided, enhancing message tracking. - Utilized IDGenerator if available; otherwise, fallback to message.GenerateNanoID for unique identification. - Improved message handling consistency by ensuring ChunkID is always set for non-event messages.
This commit is contained in:
parent
6c295db8d5
commit
4e8508649e
1 changed files with 9 additions and 0 deletions
|
|
@ -39,6 +39,15 @@ func (ctx *Context) Send(msg *message.Message) error {
|
|||
}
|
||||
}
|
||||
|
||||
// === Auto-generate ChunkID (always) ===
|
||||
if msg.ChunkID == "" && !isEventMessage {
|
||||
if ctx.IDGenerator != nil {
|
||||
msg.ChunkID = ctx.IDGenerator.GenerateChunkID()
|
||||
} else {
|
||||
msg.ChunkID = message.GenerateNanoID()
|
||||
}
|
||||
}
|
||||
|
||||
// === Non-delta operations: New message logic ===
|
||||
if !msg.Delta && !isEventMessage {
|
||||
// Auto-set ThreadID for non-root Stack (nested agent calls)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue