fix: Patch headless mode GPT-5 (#88)
Co-authored-by: cpacker <packercharles@gmail.com>
This commit is contained in:
@@ -12,6 +12,7 @@ import type {
|
||||
import type { LlmConfig } from "@letta-ai/letta-client/resources/models/models";
|
||||
import { Box, Static } from "ink";
|
||||
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
||||
import type { ApprovalResult } from "../agent/approval-execution";
|
||||
import { getResumeData } from "../agent/check-approval";
|
||||
import { getClient } from "../agent/client";
|
||||
import { sendMessageStream } from "../agent/message";
|
||||
@@ -19,6 +20,7 @@ import { linkToolsToAgent, unlinkToolsFromAgent } from "../agent/modify";
|
||||
import { SessionStats } from "../agent/stats";
|
||||
import type { ApprovalContext } from "../permissions/analyzer";
|
||||
import { permissionMode } from "../permissions/mode";
|
||||
import type { ToolExecutionResult } from "../tools/manager";
|
||||
import {
|
||||
analyzeToolApproval,
|
||||
checkToolPermission,
|
||||
@@ -148,13 +150,13 @@ export default function App({
|
||||
| { type: "deny"; approval: ApprovalRequest; reason: string }
|
||||
>
|
||||
>([]);
|
||||
const [isExecutingTool, setIsExecutingTool] = useState(false);
|
||||
const [isExecutingTool, _setIsExecutingTool] = useState(false);
|
||||
|
||||
// Track auto-handled results to combine with user decisions
|
||||
const [autoHandledResults, setAutoHandledResults] = useState<
|
||||
Array<{
|
||||
toolCallId: string;
|
||||
result: any;
|
||||
result: ToolExecutionResult;
|
||||
}>
|
||||
>([]);
|
||||
const [autoDeniedApprovals, setAutoDeniedApprovals] = useState<
|
||||
@@ -1291,7 +1293,7 @@ export default function App({
|
||||
await processConversation([
|
||||
{
|
||||
type: "approval",
|
||||
approvals: allResults as any, // Type assertion: union type with optional fields is compatible at runtime
|
||||
approvals: allResults as ApprovalResult[],
|
||||
},
|
||||
]);
|
||||
},
|
||||
@@ -1759,12 +1761,20 @@ export default function App({
|
||||
<ApprovalDialog
|
||||
approvals={
|
||||
pendingApprovals[approvalResults.length]
|
||||
? [pendingApprovals[approvalResults.length]!]
|
||||
? ([
|
||||
pendingApprovals[
|
||||
approvalResults.length
|
||||
] as ApprovalRequest,
|
||||
] as ApprovalRequest[])
|
||||
: []
|
||||
}
|
||||
approvalContexts={
|
||||
approvalContexts[approvalResults.length]
|
||||
? [approvalContexts[approvalResults.length]!]
|
||||
? ([
|
||||
approvalContexts[
|
||||
approvalResults.length
|
||||
] as ApprovalContext,
|
||||
] as ApprovalContext[])
|
||||
: []
|
||||
}
|
||||
progress={{
|
||||
|
||||
Reference in New Issue
Block a user