[Bug] Korean particle "의" token degeneration loop in long-context output

Resolved 💬 3 comments Opened May 13, 2026 by kangminlee-maker Closed May 17, 2026

Bug Description
## Issue: Korean particle "의" token degeneration loop

Model: Opus 4.7 (1M context) / claude-opus-4-7
Language: Korean (존댓말 + technical terms)
Trigger: Nested possessive ("X 의 Y 의 Z 의 W") in dense paragraphs

Failure mode: Output enters degenerate loop, emitting "의 의 의 의"
indefinitely instead of intended words. Loss of intended meaning.

Reproduction context:

  • Technical work involving nested concepts (paradigm / phase / step).
  • Long Insight box paragraphs with dense Korean technical terms.
  • Loop typically emerges in the second half of the paragraph.

Example output (last 24h, this session):
[paste the exact output above — "Coverage 70.2% → 100% 의 paradigm-level impact:
모든 1,293 emerging + 1,766 신규 emerging 의 의 의 의 의 의 의 의 의 의 ..."]

Frequency: User requested correction 3 times (single session).

Mitigation attempted:

  • Decomposition of nested possessives in the memory rule (via colon / arrow / explicit subject-verb constructions).
  • Application was inconsistent — recurrence appeared under stress in the latter half of paragraphs.

Impact:

  • Loss of intended information.
  • Manual correction round-trips on the user's side.
  • Ineffectiveness of individual prevention through memory rules.

Recommended fix area:

  • Differentiation of Korean particles in tokenizer / generation-time repetition penalty.
  • Or training-level mitigation targeting long-context Korean technical writing.

Environment Info

  • Platform: darwin
  • Terminal: WarpTerminal
  • Version: 2.1.139
  • Feedback ID: 1e22c552-c326-4cb6-88c4-6634a6d87e21

Errors

[{"error":"Error: NON-FATAL: Lock acquisition failed for /Users/kangmin/.local/share/claude/versions/2.1.139 (expected in multi-process scenarios)\n    at z16 (/$bunfs/root/src/entrypoints/cli.js:2662:2257)\n    at tRH (/$bunfs/root/src/entrypoints/cli.js:2662:1337)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-12T14:26:09.546Z"},{"error":"AxiosError: timeout of 5000ms exceeded\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:121:13313)\n    at emit (node:events:92:22)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:120:3321)\n    at request (/$bunfs/root/src/entrypoints/cli.js:123:2467)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-12T21:29:29.066Z"},{"error":"Error: Request was aborted.\n    at makeRequest (/$bunfs/root/src/entrypoints/cli.js:51:6192)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-12T21:53:27.724Z"},{"error":"Error: Stream idle timeout - partial response received\n    at MkK (/$bunfs/root/src/entrypoints/cli.js:9021:14324)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-13T00:54:57.216Z"},{"error":"Error: ECONNREFUSED\n    at from (/$bunfs/root/src/entrypoints/cli.js:113:7862)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:121:12898)\n    at emitError (node:events:43:23)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:120:1149)\n    at emitError (node:events:43:23)\n    at <anonymous> (node:_http_client:243:22)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-13T02:41:06.856Z"},{"error":"Error: ECONNREFUSED\n    at from (/$bunfs/root/src/entrypoints/cli.js:113:7862)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:121:12898)\n    at emitError (node:events:43:23)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:120:1149)\n    at emitError (node:events:43:23)\n    at <anonymous> (node:_http_client:243:22)\n    at processTicksAndRejections (native:7:39)\n    at request (/$bunfs/root/src/entrypoints/cli.js:123:2467)\n    at async b9_ (/$bunfs/root/src/entrypoints/cli.js:245:277075)\n    at async AH8 (/$bunfs/root/src/entrypoints/cli.js:401:5122)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-13T08:18:59.018Z"},{"error":"Error: ECONNREFUSED\n    at from (/$bunfs/root/src/entrypoints/cli.js:113:7862)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:121:12898)\n    at emitError (node:events:43:23)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:120:1149)\n    at emitError (node:events:43:23)\n    at <anonymous> (node:_http_client:243:22)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-13T08:35:28.082Z"},{"error":"Error: ECONNREFUSED\n    at from (/$bunfs/root/src/entrypoints/cli.js:113:7862)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:121:12898)\n    at emitError (node:events:43:23)\n    at…

Note: Content was truncated.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗