Skip to content

Commit ddf88d8

Browse files
committed
refactor: use findLastIndex utility for consistency
- Replace manual backwards loop with findLastIndex in both addToApiConversationHistory and flushPendingToolResultsToHistory - Improves clarity and consistency with existing code patterns
1 parent 8386e83 commit ddf88d8

File tree

1 file changed

+6
-14
lines changed

1 file changed

+6
-14
lines changed

src/core/task/Task.ts

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -813,13 +813,9 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
813813
this.apiConversationHistory.push(messageWithTs)
814814
} else {
815815
// For user messages, validate and fix tool_result IDs against the previous assistant message
816-
let previousAssistantMessage: Anthropic.MessageParam | undefined
817-
for (let i = this.apiConversationHistory.length - 1; i >= 0; i--) {
818-
if (this.apiConversationHistory[i].role === "assistant") {
819-
previousAssistantMessage = this.apiConversationHistory[i]
820-
break
821-
}
822-
}
816+
const prevAssistantIdx = findLastIndex(this.apiConversationHistory, (msg) => msg.role === "assistant")
817+
const previousAssistantMessage =
818+
prevAssistantIdx !== -1 ? this.apiConversationHistory[prevAssistantIdx] : undefined
823819
const validatedMessage = validateAndFixToolResultIds(message, previousAssistantMessage)
824820
const messageWithTs = { ...validatedMessage, ts: Date.now() }
825821
this.apiConversationHistory.push(messageWithTs)
@@ -861,13 +857,9 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
861857
}
862858

863859
// Validate and fix tool_result IDs against the previous assistant message
864-
let previousAssistantMessage: Anthropic.MessageParam | undefined
865-
for (let i = this.apiConversationHistory.length - 1; i >= 0; i--) {
866-
if (this.apiConversationHistory[i].role === "assistant") {
867-
previousAssistantMessage = this.apiConversationHistory[i]
868-
break
869-
}
870-
}
860+
const prevAssistantIdx = findLastIndex(this.apiConversationHistory, (msg) => msg.role === "assistant")
861+
const previousAssistantMessage =
862+
prevAssistantIdx !== -1 ? this.apiConversationHistory[prevAssistantIdx] : undefined
871863
const validatedMessage = validateAndFixToolResultIds(userMessage, previousAssistantMessage)
872864
const userMessageWithTs = { ...validatedMessage, ts: Date.now() }
873865
this.apiConversationHistory.push(userMessageWithTs as ApiMessage)

0 commit comments

Comments
 (0)