qwen-code/docs/developers/development
qqqys bf118a1220
feat(core): report why loop protection stopped a turn (#14858)
Two loop types cover two causes each: turn_tool_call_cap is an explicit
model.maxToolCallsPerTurn, the adaptive backstop or a stuck halt past
the soft cap, and global_tool_call_duplicate is the heuristic duplicate
detector or the duplicate provider tool-call id breaker. Each of these
stops now carries an additive loopReason, and cap stops carry the call
count and the limit that applied, on the LoopDetected event, the
loop_detected telemetry and the daemon turn_error. The SDK keeps the
detail on transcript blocks instead of dropping the loop type.

The headless CLI, the TUI loop dialog, OpenTUI and Web Shell (en and
zh-CN) explain each cause and what to change. No detector fires or
stops at a different point. The export renderer budget rises to
2,050,000 for the new i18n keys (+5,139 bytes measured).

Part of #14828.
2026-10-20 09:58:07 +00:00
..
_meta.ts docs(developers): document CI and release repository variables (#11129) 2026-09-28 10:36:29 +00:00
ci-variables.md docs(developers): document CI and release repository variables (#11129) 2026-09-28 10:36:29 +00:00
deployment.md fix(cli): restore OpenTUI banner, footer, and loading states; fix the OSS mirror flavor (#11437) 2026-09-09 09:26:07 +00:00
integration-tests.md fix(docs): update Coding Plan model list and fix stale references in developer docs (#5054) 2026-06-13 01:34:14 +08:00
issue-and-pr-automation.md ci: remove broken legacy scheduled PR triage workflow (#8434) 2026-08-03 10:20:42 +00:00
npm.md ci(pnpm): install with pnpm everywhere and retire package-lock.json (#11859) 2026-09-20 02:11:25 +00:00
telemetry.md feat(core): report why loop protection stopped a turn (#14858) 2026-10-20 09:58:07 +00:00