refactor: identify and freeze messages at creation

This commit is contained in:
_Kerman
2026-07-28 13:55:59 +08:00
parent c49c0ba497
commit fbf87e660c
345 changed files with 5220 additions and 2901 deletions

View File

@@ -439,9 +439,12 @@ export function unknownToolCallIds(rawLog: string): string[] {
if (record.type !== 'tool/result') return []
const data = record.data
if (data === null || typeof data !== 'object') return []
const { callId, error } = data as { callId?: unknown; error?: unknown }
const { source, error } = data as { source?: unknown; error?: unknown }
if (error === null || typeof error !== 'object') return []
if ((error as { code?: unknown }).code !== 'UNKNOWN_TOOL') return []
const callId = typeof source === 'object' && source !== null
? (source as { callId?: unknown }).callId
: undefined
return [typeof callId === 'string' ? callId : '<missing callId>']
})
}