Dashboard › Code › splitSegments() infinite recursion on o…
019e2e20-95b3-7a9d-ab38-77d87eafecc4| Project | Hits | Last recalled |
|---|---|---|
| opencode-lore | 2 | 2026-06-22 |
splitSegments() infinite recursion on oversized single messages in packages/core/src/distillation.ts: recurses infinitely when a single message exceeds maxSegmentTokens (16384). findSplitIndex() returns messages.length (=1), so left = messages.slice(0, 1) produces an identical recursive call. Triggered on large tool outputs (~49KB+). Fix: add base case after the totalTokens <= maxTokens guard — if (messages.length <= 1) return [messages]. The oversized message becomes an indivisible segment.