feat: add pre-compaction memory flush

This commit is contained in:
Peter Steinberger
2026-01-12 05:28:17 +00:00
parent cc8a2457c0
commit 7dbb21be8e
19 changed files with 583 additions and 22 deletions

View File

@@ -3,6 +3,7 @@ import { describe, expect, it, vi } from "vitest";
import {
DEFAULT_PI_COMPACTION_RESERVE_TOKENS_FLOOR,
ensurePiCompactionReserveTokens,
resolveCompactionReserveTokensFloor,
} from "./pi-settings.js";
describe("ensurePiCompactionReserveTokens", () => {
@@ -35,3 +36,24 @@ describe("ensurePiCompactionReserveTokens", () => {
expect(settingsManager.applyOverrides).not.toHaveBeenCalled();
});
});
describe("resolveCompactionReserveTokensFloor", () => {
it("returns the default when config is missing", () => {
expect(resolveCompactionReserveTokensFloor()).toBe(
DEFAULT_PI_COMPACTION_RESERVE_TOKENS_FLOOR,
);
});
it("accepts configured floors, including zero", () => {
expect(
resolveCompactionReserveTokensFloor({
agents: { defaults: { compaction: { reserveTokensFloor: 24_000 } } },
}),
).toBe(24_000);
expect(
resolveCompactionReserveTokensFloor({
agents: { defaults: { compaction: { reserveTokensFloor: 0 } } },
}),
).toBe(0);
});
});