UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

28 lines (27 loc) 1.17 kB
import { u as resolveStorePath } from "./paths-NEwU8m3X.js"; import { f as updateSessionStoreEntry } from "./store-Qsgtu-0y.js"; import "./sessions-D6zZvoxX.js"; //#region src/agents/embedded-agent-subscribe.handlers.compaction.runtime.ts /** * Runtime helpers for reconciling compaction counts after subscribe events. */ /** Persist the highest observed compaction count after a successful subscribed run. */ async function reconcileSessionStoreCompactionCountAfterSuccess(params) { const { sessionKey, agentId, configStore, observedCompactionCount, now = Date.now() } = params; if (!sessionKey || observedCompactionCount <= 0) return; return (await updateSessionStoreEntry({ storePath: resolveStorePath(configStore, { agentId }), sessionKey, update: async (entry) => { const currentCount = Math.max(0, entry.compactionCount ?? 0); const nextCount = Math.max(currentCount, observedCompactionCount); if (nextCount === currentCount) return null; return { compactionCount: nextCount, updatedAt: Math.max(entry.updatedAt ?? 0, now) }; } }))?.compactionCount; } //#endregion export { reconcileSessionStoreCompactionCountAfterSuccess };