Replies: 6 comments
|
Source-verified against master (99f6f02) — this is one root cause producing both of your observations, plus a llama.cpp-specific detail that explains the confusing logs. 1. The error chain (verified)Your case 'max-tokens': {
const error = new Error('summarization truncated at the token cap (incomplete checkpoint)') as Error & { code?: string }
error.code = 'MAX_TOKENS'
return error
}The summarization is a normal 2. The llama.cpp logs are a different mechanismWhat llama.cpp logs as "compaction" is server-side KV-cache compression / context shift — the server squeezes its cached state to fit the incoming prompt. That is not dsh's compaction. dsh's compaction is a durable checkpoint: an LLM call that writes a structured summary (the In your sequence, the llama.cpp logs almost certainly show the server compressing its KV cache to fit the summarization request itself — and here's the second mechanism worth knowing: 3. Why auto-compaction "never fires" (and it's the same root cause)
4. What to change (config, not code)
5. A note on the README/UX gapThis is the second report where "compaction" ambiguity (server KV compression vs durable checkpoint) produced a confusing failure (the first being the general "could not produce a useful summary" phrasing). If the maintainers want a cheap win: the |
|
Getting the same problem even though from LM Studio it appears to be successful {"type":"command/run","seq":126232,"time":1787151834532,"data":{"commandId":"cmd-171e9870-3","name":"compact","args":"","source":{"kind":"user"}}} 2026-08-19 23:07:54 [DEBUG] |
|
The LM Studio trace makes the boundary conclusive: One source-level correction to the earlier recommendation: The bounded routes are:
A successful durable attempt must show |
|
Same symptoms here, qwen3.8-27b via Llama.cpp, long sessions: manual /compact → "truncated at the token cap", auto-compaction never completing. I traced it to two distinct root causes in compaction-basic and wrote it up with a tested fix + full diff: #3465 |
|
The "compaction ran but the summary is useless" family is inherent to LLM summarization — a backend that never calls the model for compaction sidesteps it entirely. dsh-dcp swaps the summary step for deterministic extraction (verbatim paths/commands/errors/todos/user lines), inheriting the official trigger/retention/lock semantics. Zero model calls per compaction, stable output for identical input, CJK-aware token accounting. dsh plugin add @aiwayds/dsh-dcpCheckpoint format is compatible with the official compaction-basic one, so it is also a try-and-revert if you want to compare on your llama.cpp setup. |
|
Corroborating the token-cap half from another Qwen3.8-27B / llama.cpp deployment, @Yunado's root cause 1 matches what I measured. On my box the two I mitigated it differently, in case the shape is useful: rather than raising The taxonomy, in case others land here with a different error. 74
So the cap class was 2 of 25 here. The 15 are a different cause: the Useful tell for anyone triaging their own logs: read the duration. A |
Uh oh!
There was an error while loading. Please reload this page.
Not sure where to share this but this has a happened a few times using my local LLM running Qwen 3.8. I can verify the compaction happened successfully by looking at the llama.cpp logs however I would still see
Compaction could not produce a useful summary. The conversation is unchanged; the attempt is recorded in the session log..Perhaps another issue. This was a manual compaction operation as I didn't ever see the harness attempt to do it automatically (it would just hit the context limit and give up).
All reactions