diff --git a/packages/sdk/js/src/v2/gen/types.gen.ts b/packages/sdk/js/src/v2/gen/types.gen.ts index 72a383a608..e1b0dbd576 100644 --- a/packages/sdk/js/src/v2/gen/types.gen.ts +++ b/packages/sdk/js/src/v2/gen/types.gen.ts @@ -885,6 +885,7 @@ export type CompactionPart = { type: "compaction" auto: boolean overflow?: boolean + tail_start_id?: string } export type Part = @@ -1642,6 +1643,14 @@ export type Config = { * Enable pruning of old tool outputs (default: true) */ prune?: boolean + /** + * Number of recent user turns, including their following assistant/tool responses, to keep verbatim during compaction (default: 2) + */ + tail_turns?: number + /** + * Token budget for retained recent turn spans during compaction + */ + tail_tokens?: number /** * Token buffer for compaction. Leaves enough window to avoid overflow during compaction. */ diff --git a/packages/sdk/openapi.json b/packages/sdk/openapi.json index b97d596b93..3ecb725d6d 100644 --- a/packages/sdk/openapi.json +++ b/packages/sdk/openapi.json @@ -9945,6 +9945,10 @@ }, "overflow": { "type": "boolean" + }, + "tail_start_id": { + "type": "string", + "pattern": "^msg.*" } }, "required": ["id", "sessionID", "messageID", "type", "auto"] @@ -11868,6 +11872,18 @@ "description": "Enable pruning of old tool outputs (default: true)", "type": "boolean" }, + "tail_turns": { + "description": "Number of recent user turns, including their following assistant/tool responses, to keep verbatim during compaction (default: 2)", + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 + }, + "tail_tokens": { + "description": "Token budget for retained recent turn spans during compaction", + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 + }, "reserved": { "description": "Token buffer for compaction. Leaves enough window to avoid overflow during compaction.", "type": "integer",