Skip to content

CompactionResult

type CompactionResult =
| {
afterTokens: number;
beforeTokens: number;
compacted: true;
messages: ModelMessage[];
summarizedCount: number;
summary: string;
}
| {
beforeTokens: number;
compacted: false;
reason: "under-threshold" | "too-few-messages" | "summarizer-error";
};
{
afterTokens: number;
beforeTokens: number;
compacted: true;
messages: ModelMessage[];
summarizedCount: number;
summary: string;
}
afterTokens: number;
beforeTokens: number;
compacted: true;
messages: ModelMessage[];

Verbatim retained tail — never includes a compaction summary message.

summarizedCount: number;
summary: string;

Summary text for the system-note channel (addSystemNote, lifetime run).


{
beforeTokens: number;
compacted: false;
reason: "under-threshold" | "too-few-messages" | "summarizer-error";
}