feat: 全部类型问题解决

This commit is contained in:
claude-code-best
2026-04-11 10:24:00 +08:00
parent 7088fe3c8b
commit 6a70056910
135 changed files with 671 additions and 503 deletions

View File

@@ -197,7 +197,7 @@ function getBoundaryDetail(
function isUserMessageWithArrayContent(
m: Message,
): m is Message & { message: { content: unknown[] } } {
return m.type === 'user' && 'message' in m && Array.isArray(m.message.content)
return m.type === 'user' && 'message' in m && Array.isArray(m.message?.content)
}
export function prepareMessagesForInjection(messages: Message[]): Message[] {
@@ -254,9 +254,9 @@ export function prepareMessagesForInjection(messages: Message[]): Message[] {
return messages
.map(msg => {
if (!('message' in msg) || !Array.isArray(msg.message.content)) return msg
const content = msg.message.content.filter(keep)
if (content.length === msg.message.content.length) return msg
if (!('message' in msg) || !Array.isArray(msg.message?.content)) return msg
const content = msg.message!.content.filter(keep)
if (content.length === msg.message!.content.length) return msg
if (content.length === 0) return null
// Drop messages where all remaining blocks are whitespace-only text
// (API rejects these with 400: "text content blocks must contain non-whitespace text")