[Bug] Desktop: 长会话无法滚动到底部——回复结束后视口被锁在中间位置,重启/换会话/重置缩放均无效(疑似"余额不足"弹窗触发)
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 22
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
问题类别 · Category: UI / 界面体验
Agent 框架 · Framework: 不涉及框架(Desktop 客户端 UI 问题)
严重程度 · Severity: 影响体验 · Major(无法阅读最新回复,仅生成期间可短暂查看)
复现频率 · Reproducibility: 必现 · Always(受影响的长会话上稳定复现)
问题描述 · Description
长会话中任一轮回复结束后,对话视口被永久锁定在靠中间的位置,无法滚动到最底部查看最新回复。仅当发送新消息、其处理(流式生成)期间可短暂到达底部,回答完成立即弹回上方。多个长会话均复现。
复现步骤 · Steps to reproduce
- 使用一个很长的会话(运行数小时、大量工具输出 / markdown 表格、多次上下文压缩、有后台任务通知插入)
- 会话期间出现过「余额不足」类弹窗提示
- 任一轮回复完成后,尝试滚动到对话最底部
期望表现 · Expected behavior
任意时刻可通过滚动条 / 滚轮 / 点击左侧历史消息到达并停留在对话底部(最新回复处)。
实际表现 · Actual behavior
- 拖动滚动条、滚轮、点击左侧历史消息定位——均无法到达最底部
- 重启客户端后依旧;其他长会话同样弹到中间位置
- Ctrl+0 重置缩放无效,最大化 / 最小化窗口无效
- 仅新消息处理期间可短暂看到底部,回答完成立即弹回上方
- 手机网页端同一会话滚动完全正常(疑似 Desktop 渲染层特有)
版本 · ZCode version: Desktop v3.8.1
设备 / 系统 · Device / OS: Windows 11 Pro(桌面客户端)
补充信息 · Additional context
- 猜测触发点:问题开始于「余额不足」弹窗出现之后,疑似弹窗(或其残留的隐形元素)破坏了滚动容器的滚动范围 / 锚点状态,导致滚动上限到不了真实底部;流式期间客户端强制 scrollTop 到底所以能短暂看到,生成结束后位置恢复逻辑又拉回错误锚点
- 可能与 #1(长会话页面卡顿)及 v3.6.5 已修复的「历史消息加载时滚动位置跳动」同源(同一滚动子系统)
- 规避手段:仅手机网页端可正常阅读底部内容
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue in Desktop v3.8.1 on Windows 11 using a long conversation after a 「余额不足」 popup appears, then compare scrolling during and after response generation. Trace the desktop conversation view's scroll container and completion behavior; done means the latest reply remains reachable and the viewport does not jump back to the middle.
Written by the indexing model from the issue text.
Assessment
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100