openclaw/src
DukeDeSouth ea47ab29bd
fix: cancel compaction instead of truncating history when summarization fails (#10711)
* fix: cancel compaction instead of truncating history when summarization fails

When the compaction safeguard cannot generate a summary (no model, no API
key, or LLM error), it previously returned a "Summary unavailable" fallback
string and still truncated history. This caused irreversible data loss -
older messages were discarded even though no meaningful summary was produced.

Now returns `{ cancel: true }` in all three failure paths so the framework
aborts compaction entirely and preserves the full conversation history.

Fixes #10332

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: use deterministic timestamps in compaction safeguard tests

Replace Date.now() with fixed timestamp (0) in test data to prevent
nondeterministic behavior in snapshot-based or order-dependent tests.

Co-authored-by: Cursor <cursoragent@cursor.com>

* Changelog: note compaction cancellation safeguard fix

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-02-23 10:23:13 -05:00
..
acp test: dedupe fixtures and test harness setup 2026-02-23 05:45:54 +00:00
agents fix: cancel compaction instead of truncating history when summarization fails (#10711) 2026-02-23 10:23:13 -05:00
auto-reply test: optimize redundant suites for faster runtime 2026-02-23 13:57:34 +00:00
browser test: dedupe fixtures and test harness setup 2026-02-23 05:45:54 +00:00
canvas-host
channels Sessions: canonicalize mixed-case session keys 2026-02-22 23:27:08 -08:00
cli fix(config): keep write inputs immutable when using unsetPaths (#24134) 2026-02-23 02:51:13 -05:00
commands fix(models): refresh Moonshot Kimi vision capabilities 2026-02-23 12:44:23 +00:00
compat
config [Feature]: Add Gemini (Google Search grounding) as web_search provider (#13075) 2026-02-23 09:30:51 -05:00
cron test(cron): avoid delivery.mode type widening in isolated announce test 2026-02-23 11:45:18 +05:30
daemon doctor: clean up legacy Linux gateway services (#21188) 2026-02-22 19:18:59 -05:00
discord refactor(channels): dedupe hook and monitor execution paths 2026-02-22 21:19:09 +00:00
docs
gateway Gateway: stop repeated unauthorized WS request floods per connection (#24294) 2026-02-23 09:58:47 -05:00
hooks refactor: extract shared dedupe helpers for runtime paths 2026-02-23 05:43:43 +00:00
imessage refactor(channels): reuse runtime group policy helpers 2026-02-22 12:44:23 +01:00
infra fix(security): detect obfuscated commands that bypass allowlist filters (#24287) 2026-02-23 02:50:06 -05:00
line refactor(channels): dedupe hook and monitor execution paths 2026-02-22 21:19:09 +00:00
link-understanding chore: remove verified dead code paths 2026-02-22 09:21:09 +01:00
logging test(perf): dedupe fixtures and reduce flaky waits 2026-02-22 22:06:01 +00:00
markdown
media test(core): reduce mock reset overhead in targeted suites 2026-02-22 08:40:29 +00:00
media-understanding fix(agents): fall back to agents.defaults.model when agent has no model config (#24210) 2026-02-23 03:18:55 -05:00
memory refactor: extract shared dedupe helpers for runtime paths 2026-02-23 05:43:43 +00:00
node-host test: dedupe fixtures and test harness setup 2026-02-23 05:45:54 +00:00
pairing refactor(daemon): share runtime and service probe helpers 2026-02-22 21:19:09 +00:00
plugin-sdk fix(security): redact sensitive data in OTEL log exports (CWE-532) (#18182) 2026-02-23 01:35:32 -05:00
plugins Gateway: suppress tools.catalog plugin conflict diagnostics 2026-02-23 00:05:57 -06:00
process test: consolidate redundant suites and speed up timers 2026-02-23 04:44:42 +00:00
providers
routing Agents/Replies: scope done fallback to direct sessions 2026-02-22 13:30:30 -08:00
scripts
security fix(agents): fall back to agents.defaults.model when agent has no model config (#24210) 2026-02-23 03:18:55 -05:00
sessions Agents/Replies: scope done fallback to direct sessions 2026-02-22 13:30:30 -08:00
shared refactor: extract shared dedupe helpers for runtime paths 2026-02-23 05:43:43 +00:00
signal refactor(outbound): reuse signal uuid detection and payload types 2026-02-22 17:54:51 +00:00
slack test: dedupe fixtures and test harness setup 2026-02-23 05:45:54 +00:00
telegram fix(telegram): scope polling offsets per bot and await shared runner stop (#24549) 2026-02-23 09:43:47 -05:00
terminal test(core): use lightweight clears in runtime and telegram setup 2026-02-22 08:09:14 +00:00
test-helpers refactor: dedupe media and request-body test scaffolding 2026-02-22 18:37:25 +00:00
test-utils test: dedupe fixtures and test harness setup 2026-02-23 05:45:54 +00:00
tts
tui test: dedupe fixtures and test harness setup 2026-02-23 05:45:54 +00:00
types
utils refactor!: remove google-antigravity provider support 2026-02-23 05:20:14 +01:00
web test: dedupe fixtures and test harness setup 2026-02-23 05:45:54 +00:00
whatsapp WhatsApp: enforce allowFrom for explicit outbound sends (#20921) 2026-02-22 18:13:23 -05:00
wizard test: dedupe gateway browser discord and channel coverage 2026-02-22 17:11:54 +00:00
channel-web.ts
docker-image-digests.test.ts
docker-setup.test.ts Docker: precreate identity dir in docker setup 2026-02-22 16:33:53 -08:00
dockerfile.test.ts
entry.ts refactor(gateway): simplify restart flow and expand lock tests 2026-02-22 10:44:47 +01:00
extensionAPI.ts
globals.ts
index.ts
logger.test.ts
logger.ts
logging.ts
polls.test.ts
polls.ts
runtime.ts
utils.test.ts fix(utils): guard resolveUserPath for missing workspace input 2026-02-22 13:19:25 +01:00
utils.ts fix(utils): guard resolveUserPath for missing workspace input 2026-02-22 13:19:25 +01:00
version.test.ts test(core): increase coverage for sessions, auth choice, and model listing 2026-02-22 14:08:51 +00:00
version.ts