The client is not the source of truth (#7438)

Co-authored-by: Douwe Osinga <douwe@squareup.com>
Co-authored-by: Jack Amadeo <jackamadeo@block.xyz>
This commit is contained in:
Douwe Osinga
2026-02-26 11:11:29 -05:00
committed by GitHub
parent 08e95b21f1
commit 5477754628
4 changed files with 15 additions and 8 deletions
+2 -1
View File
@@ -3898,11 +3898,12 @@
"session_id"
],
"properties": {
"conversation_so_far": {
"override_conversation": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Message"
},
"description": "Override the server's conversation history. Only use this when you need absolute control\nover the conversation state (e.g., administrative tools). For normal operations, the server\nis the source of truth - use truncate/fork endpoints to modify conversation history instead.",
"nullable": true
},
"recipe_name": {
+6 -1
View File
@@ -60,7 +60,12 @@ export type CallToolResponse = {
};
export type ChatRequest = {
conversation_so_far?: Array<Message> | null;
/**
* Override the server's conversation history. Only use this when you need absolute control
* over the conversation state (e.g., administrative tools). For normal operations, the server
* is the source of truth - use truncate/fork endpoints to modify conversation history instead.
*/
override_conversation?: Array<Message> | null;
recipe_name?: string | null;
recipe_version?: string | null;
session_id: string;
-2
View File
@@ -590,7 +590,6 @@ export function useChatStream({
body: {
session_id: sessionId,
user_message: newMessage,
...(hasExistingMessages && { conversation_so_far: currentState.messages }),
},
throwOnError: true,
signal: abortControllerRef.current.signal,
@@ -771,7 +770,6 @@ export function useChatStream({
body: {
session_id: targetSessionId,
user_message: updatedUserMessage,
conversation_so_far: truncatedMessages,
},
throwOnError: true,
signal: abortControllerRef.current.signal,