






























@@ -18,7 +18,6 @@ import {
1818import {
1919cleanupTempPaths,
2020createContextEngineBootstrapAndAssemble,
21-createContextEngineAttemptRunner,
2221expectCalledWithSessionKey,
2322getHoisted,
2423resetEmbeddedAttemptHarness,
@@ -277,81 +276,6 @@ describe("runEmbeddedAttempt context engine sessionKey forwarding", () => {
277276expect(params.sessionKey).toBe(sessionKey);
278277});
279278280-it("prechecks unwindowed context before submitting a windowed context-engine prompt", async () => {
281-const sessionPrompt = vi.fn(async () => {});
282-const fullHistory = [
283-{
284-role: "assistant",
285-content: [{ type: "text", text: "large historical context ".repeat(600) }],
286-timestamp: 1,
287-},
288-] as AgentMessage[];
289-const windowedMessages = [
290-{ role: "assistant", content: [{ type: "text", text: "small window" }], timestamp: 2 },
291-] as AgentMessage[];
292-const assemble = vi.fn(async () => ({
293-messages: windowedMessages,
294-estimatedTokens: 3,
295-}));
296-297-const result = await createContextEngineAttemptRunner({
298-contextEngine: { assemble },
299- sessionKey,
300- tempPaths,
301-sessionMessages: fullHistory,
302- sessionPrompt,
303-attemptOverrides: {
304-contextTokenBudget: 512,
305-},
306-});
307-308-expect(assemble).toHaveBeenCalledWith(
309-expect.objectContaining({
310-messages: fullHistory,
311-}),
312-);
313-expect(sessionPrompt).not.toHaveBeenCalled();
314-expect(result.promptErrorSource).toBe("precheck");
315-expect(result.preflightRecovery).toEqual({ route: "compact_only" });
316-});
317-318-it("keeps preflight overflow checks active for engines that own compaction", async () => {
319-const sessionPrompt = vi.fn(async () => {});
320-const fullHistory = [
321-{
322-role: "assistant",
323-content: [{ type: "text", text: "engine-owned large historical context ".repeat(600) }],
324-timestamp: 1,
325-},
326-] as AgentMessage[];
327-const assemble = vi.fn(async () => ({
328-messages: [
329-{ role: "assistant", content: [{ type: "text", text: "small window" }], timestamp: 2 },
330-] as AgentMessage[],
331-estimatedTokens: 3,
332-}));
333-334-const result = await createContextEngineAttemptRunner({
335-contextEngine: {
336- assemble,
337-info: {
338-ownsCompaction: true,
339-},
340-},
341- sessionKey,
342- tempPaths,
343-sessionMessages: fullHistory,
344- sessionPrompt,
345-attemptOverrides: {
346-contextTokenBudget: 512,
347-},
348-});
349-350-expect(sessionPrompt).not.toHaveBeenCalled();
351-expect(result.promptErrorSource).toBe("precheck");
352-expect(result.preflightRecovery).toEqual({ route: "compact_only" });
353-});
354-355279it("skips maintenance when afterTurn fails", async () => {
356280const { bootstrap, assemble } = createContextEngineBootstrapAndAssemble();
357281const afterTurn = vi.fn(async () => {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。