test: specify compaction successor messages · openclaw/openclaw@b96e2a7
shakkernerd
·
2026-05-12
·
via Recent Commits to openclaw:main
File tree
src/agents/pi-embedded-runner
| Original file line number | Diff line number | Diff line change |
|---|
@@ -124,7 +124,31 @@ describe("rotateTranscriptAfterCompaction", () => {
|
124 | 124 | const header = requireValue(successor.getHeader(), "successor header"); |
125 | 125 | expect(header.parentSession).toBe(sessionFile); |
126 | 126 | expect(header.cwd).toBe(dir); |
127 | | -expect(successor.buildSessionContext().messages.length).toBeGreaterThan(0); |
| 127 | +const messages = successor.buildSessionContext().messages; |
| 128 | +expect(messages.map((message) => message.role)).toStrictEqual([ |
| 129 | +"compactionSummary", |
| 130 | +"user", |
| 131 | +"assistant", |
| 132 | +"user", |
| 133 | +"assistant", |
| 134 | +]); |
| 135 | +expect(messages[0]).toMatchObject({ |
| 136 | +role: "compactionSummary", |
| 137 | +summary: "Summary of old user and old assistant.", |
| 138 | +tokensBefore: 5000, |
| 139 | +}); |
| 140 | +expect(messages[1]).toMatchObject({ role: "user", content: "kept user", timestamp: 3 }); |
| 141 | +expect(messages[2]).toMatchObject({ |
| 142 | +role: "assistant", |
| 143 | +content: [{ type: "text", text: "kept assistant" }], |
| 144 | +timestamp: 4, |
| 145 | +}); |
| 146 | +expect(messages[3]).toMatchObject({ role: "user", content: "post user", timestamp: 5 }); |
| 147 | +expect(messages[4]).toMatchObject({ |
| 148 | +role: "assistant", |
| 149 | +content: [{ type: "text", text: "post assistant" }], |
| 150 | +timestamp: 6, |
| 151 | +}); |
128 | 152 | }); |
129 | 153 | |
130 | 154 | it("creates a compacted successor transcript and leaves the archive untouched", async () => { |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。