@@ -8,14 +8,15 @@ import * as fs from "fs/promises"
88import { existsSync } from "fs"
99import { homedir } from "os"
1010import { join } from "path"
11- import type { SessionState , SessionStats , CompressSummary } from "./types"
11+ import type { SessionState , SessionStats , CompressSummary , PruneOrigin } from "./types"
1212import type { Logger } from "../logger"
1313
1414/** Prune state as stored on disk */
1515export interface PersistedPrune {
1616 // New format: tool/message IDs with token counts
1717 tools ?: Record < string , number >
1818 messages ?: Record < string , number >
19+ origins ?: Record < string , PruneOrigin >
1920 // Legacy format: plain ID arrays (backward compatibility)
2021 toolIds ?: string [ ]
2122 messageIds ?: string [ ]
@@ -64,6 +65,7 @@ export async function saveSessionState(
6465 prune : {
6566 tools : Object . fromEntries ( sessionState . prune . tools ) ,
6667 messages : Object . fromEntries ( sessionState . prune . messages ) ,
68+ origins : Object . fromEntries ( sessionState . prune . origins ) ,
6769 } ,
6870 compressSummaries : sessionState . compressSummaries ,
6971 stats : sessionState . stats ,
0 commit comments