fix(coding-agent): expose live tool rebuild options
This commit is contained in:
@@ -209,6 +209,7 @@ import type {
|
||||
InteractiveModeContext,
|
||||
InteractiveModeInitOptions,
|
||||
InteractiveSelectorDialogOptions,
|
||||
RenderSessionContextOptions,
|
||||
SubmittedUserInput,
|
||||
TodoItem,
|
||||
TodoPhase,
|
||||
@@ -4351,10 +4352,7 @@ export class InteractiveMode implements InteractiveModeContext {
|
||||
return this.#uiHelpers.addMessageToChat(message, options);
|
||||
}
|
||||
|
||||
renderSessionContext(
|
||||
sessionContext: SessionContext,
|
||||
options?: { updateFooter?: boolean; populateHistory?: boolean; reuseSettledComponents?: boolean },
|
||||
): void {
|
||||
renderSessionContext(sessionContext: SessionContext, options?: RenderSessionContextOptions): void {
|
||||
for (const message of sessionContext.messages) {
|
||||
this.noteDisplayableThinkingContent(message);
|
||||
}
|
||||
|
||||
@@ -92,6 +92,14 @@ export interface InteractiveModeInitOptions {
|
||||
|
||||
export type InteractiveSelectorDialogOptions = ExtensionUIDialogOptions & Pick<HookSelectorOptions, "disabledIndices">;
|
||||
|
||||
export interface RenderSessionContextOptions {
|
||||
updateFooter?: boolean;
|
||||
populateHistory?: boolean;
|
||||
reuseSettledComponents?: boolean;
|
||||
/** Tool calls whose existing live component remains the sole render owner across a rebuild. */
|
||||
preservedLiveToolCallIds?: ReadonlySet<string>;
|
||||
}
|
||||
|
||||
export interface InteractiveModeContext {
|
||||
// UI access
|
||||
ui: TUI;
|
||||
@@ -310,10 +318,7 @@ export interface InteractiveModeContext {
|
||||
reuseSettledComponent?: boolean;
|
||||
},
|
||||
): Component[];
|
||||
renderSessionContext(
|
||||
sessionContext: SessionContext,
|
||||
options?: { updateFooter?: boolean; populateHistory?: boolean; reuseSettledComponents?: boolean },
|
||||
): void;
|
||||
renderSessionContext(sessionContext: SessionContext, options?: RenderSessionContextOptions): void;
|
||||
renderInitialMessages(options?: { preserveExistingChat?: boolean; clearTerminalHistory?: boolean }): void;
|
||||
getUserMessageText(message: Message): string;
|
||||
findLastAssistantMessage(): AssistantMessage | undefined;
|
||||
|
||||
@@ -33,7 +33,7 @@ import { UserMessageComponent } from "../../modes/components/user-message";
|
||||
import { decodeStreamedToolArgs, streamingStringKeysForTool } from "../../modes/controllers/tool-args-reveal";
|
||||
import { materializeImageReferenceLinksSync } from "../../modes/image-references";
|
||||
import { theme } from "../../modes/theme/theme";
|
||||
import type { CompactionQueuedMessage, InteractiveModeContext } from "../../modes/types";
|
||||
import type { CompactionQueuedMessage, InteractiveModeContext, RenderSessionContextOptions } from "../../modes/types";
|
||||
import {
|
||||
BACKGROUND_TAN_DISPATCH_MESSAGE_TYPE,
|
||||
type CustomMessage,
|
||||
@@ -72,14 +72,6 @@ type AddMessageOptions = {
|
||||
reuseSettledComponent?: boolean;
|
||||
};
|
||||
|
||||
type RenderSessionContextOptions = {
|
||||
updateFooter?: boolean;
|
||||
populateHistory?: boolean;
|
||||
reuseSettledComponents?: boolean;
|
||||
/** Tool calls whose existing live component remains the sole render owner across a rebuild. */
|
||||
preservedLiveToolCallIds?: ReadonlySet<string>;
|
||||
};
|
||||
|
||||
function imageLinksForMessage(
|
||||
message: Extract<AgentMessage, { role: "developer" | "user" }>,
|
||||
putBlobSync: InteractiveModeContext["sessionManager"]["putBlobSync"],
|
||||
|
||||
Reference in New Issue
Block a user