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

@@ -102,7 +102,7 @@ function createPermissionContext(
setToolPermissionContext: (context: ToolPermissionContext) => void,
queueOps?: PermissionQueueOps,
) {
const messageId = assistantMessage.message.id
const messageId = assistantMessage.message.id!
const ctx = {
tool,
input,
@@ -234,7 +234,7 @@ function createPermissionContext(
const finalInput = decision.updatedInput ?? updatedInput ?? input
return await this.handleHookAllow(
finalInput,
decision.updatedPermissions ?? [],
(decision.updatedPermissions ?? []) as unknown as import('../../types/permissions.js').PermissionUpdate[],
permissionPromptStartTimeMs,
)
} else if (decision.behavior === 'deny') {

View File

@@ -152,7 +152,7 @@ function useCanUseTool(
tool,
input,
toolUseContext,
messageId: ctx.messageId,
messageId: ctx.messageId!,
toolUseID,
},
{ decision: 'reject', source: 'config' },

View File

@@ -47,7 +47,7 @@ export function isSessionContainerCompatible(messages: Message[]): boolean {
if (msg.type !== 'assistant') {
continue
}
const content = msg.message.content
const content = msg.message!.content
if (!Array.isArray(content)) {
continue
}

View File

@@ -69,7 +69,7 @@ function countHunkLines(hunks: StructuredPatchHunk[]): {
function getUserPromptPreview(message: Message): string {
if (message.type !== 'user') return ''
const content = message.message.content
const content = message.message!.content
const text = typeof content === 'string' ? content : ''
// Truncate to ~30 chars
if (text.length <= 30) return text
@@ -124,8 +124,8 @@ export function useTurnDiffs(messages: Message[]): TurnDiff[] {
// Check if this is a user prompt (not a tool result)
const isToolResult =
message.toolUseResult ||
(Array.isArray(message.message.content) &&
message.message.content[0]?.type === 'tool_result')
(Array.isArray(message.message!.content) &&
message.message!.content[0]?.type === 'tool_result')
if (!isToolResult && !message.isMeta) {
// Start a new turn on user prompt