diff --git a/static/ui.js b/static/ui.js index d209e151..66004f9b 100644 --- a/static/ui.js +++ b/static/ui.js @@ -6494,8 +6494,14 @@ function renderMessages(options){ const tsTitle=tsVal?(_fmtSv?_fmtSv(new Date(tsVal*1000),{}):new Date(tsVal*1000).toLocaleString()):''; const tsTime=_formatMessageFooterTimestamp(tsVal); const timeHtml = tsTime ? `${tsTime}` : ''; - const questionJumpBtn = (!isUser&&!m._live&&isTurnFinalAssistant) - ? _questionJumpButtonHtml(questionRawIdxByAssistantRawIdx.get(rawIdx)) + // #3114: show jump-to-question on every assistant message that has a + // resolvable question target, not just the turn-final one. Multi-step + // turns (tool_call -> assistant -> tool_call -> assistant) otherwise + // strip the button from every intermediate assistant bubble and the + // user loses the navigation affordance. + const _qJumpTarget=(!isUser&&!m._live)?questionRawIdxByAssistantRawIdx.get(rawIdx):undefined; + const questionJumpBtn = (_qJumpTarget!==undefined&&_qJumpTarget!==null) + ? _questionJumpButtonHtml(_qJumpTarget) : ''; const footHtml = `