Skip to content

[Grok/dsh 20] 鼠标、搜索与阅读位置 #152

Description

@Blackman99

Parent

#132

Ticket: 20

Status: ready-for-agent

User Stories: 11, 15, 18(见父规格)

What to build

用户能选择文本、滚动长会话、搜索并定位回合,在查看器或弹窗关闭后回到正确阅读位置。

Acceptance criteria

  • 复用官方选中、焦点、折叠、回合导航与弹窗返回语义,点击和拖拽不互相误触。
  • 流式更新、缩放、窄屏和长会话保持选中与阅读位置,展示和鼠标命中一致。
  • 全屏独有动作在 minimal 正确隐藏或解释,不通过不存在的视图假装支持。
  • 同一 dsh 会话以真实键盘/鼠标输入验证行为并保存关键截图,非仅首次渲染检查。

Blocked by

Delivery contract

用户于2026-09-20批准当前测试与任务拆分。按父规格的已安装产物/真实终端和公开协议测试验收;实际实现须带适用的文档、Changeset及必要检查。ready-for-agent表示任务已定义,不表示前置任务已完成,也不授权自动开始本轮实施、购买付费资源或发布软件版本。

Activity

  1. self-assigned this
    on Sep 21, 2026
  2. Blackman99 commented on Sep 21, 2026

    @Blackman99
    OwnerAuthor

    按用户2026-09-20的实施授权领取 Ticket20 / #152;本次只记录领取,未启动实施工作者,也不表示已实现。已重新读取 #132 及全部80票正文/评论和实际 blocked-by(native 177 边)。#141/#149/#160 已在 rewrite/grok-dsh-20260920 集成并关闭;当前独立就绪票为 #142、#150、#152、#153、#154、#165、#189、#193。本波并行领取前四张,未领取任何被阻塞后继(含 #155/#159/#183)。

    实施必须从独立集成树精确基线 2232130e9ce287aa85bc3270bb3383ab079e4efd 开始。前置 #149 已关闭,同一提交已保留在 rewrite/grok-dsh-20260920;集成证据见 #149 (comment) 。#160/#141/#161/#140/#139/#138/#137/#136/#135/#134/#133 仍为已集成关闭基线 #160 (comment) 、#141 (comment) 、#161 (comment) 、#140 (comment) 、#139 (comment) 、#138 (comment) 、#137 (comment) 、#136 (comment) 、#135 (comment) 、#134 (comment) 与 #133 (comment) 。

    范围按原验收:鼠标、搜索与阅读位置与冻结参考一致;fullscreen/minimal 下选择、滚动与导航保持正确语义。后续实施/审查子代理使用 My CPA - Grok 4.6(grk-4.6)。仅在实施、独立审查和集成验收通过后关闭。main、现有未跟踪文件及其他工作树不改动;不授权付费资源,#212仍须新的明确最终发布/默认切换批准。

  3. Blackman99 commented on Sep 22, 2026

    @Blackman99
    OwnerAuthor

    Ticket 20 / #152 不能集成。两位独立 grk-4.6 审查员均拒绝 worker HEAD 783c16216c511f4b5e219bc371b5cae247c27366(基线 2232130e9ce287aa85bc3270bb3383ab079e4efd 是祖先;范围 56043a9 → 9223eea → 0c88e91 → 783c162;此前 0c88e91 仍是 1 批准 / 1 拒绝)。未 cherry-pick、未推送、未关闭。隔离集成 HEAD 仍为 2232130e9ce287aa85bc3270bb3383ab079e4efd。main 仍为 43b5da1。

    集成控制器独立核对源码:

    • NavState::rebuild 只 restore reading bookmark,不按 entry/line_in_entry 重映射 SelectionSpan;无 packed 断言 resize/stream 后 TOKEN_GAMMA 选区仍在
    • painted_transcript_lines 给选中行加 | 字符,handle_mouse 只减 TRANSCRIPT_GUTTER=2,复制后列与命中不一致
    • Help / README.md / README.zh.md / packages/cli/README.md 仍写 Ctrl+Q/Ctrl+D 退出,而 scrollback Ctrl+D 已改为半页
    • MOUSE_TOGGLE_HINT 指向 ~/.grok/config.toml,本客户端读 $GROK_HOME/config.toml
    • packed scripts/rust-nav-pty-test.py 在 mock turn idle 后才滚;流式更新中的选中/阅读位置只有单元 streaming_and_resize_keep_reading_position。PARITY-152-scroll-input 未比较 auto/wheel/trackpad/invert/scroll_lines

    修复要求:在同一 worker 工作树 /Users/zhaodongsheng/.grok/worktrees/my-projects-codsh/subagent-01a0c27f-1e3c-7cb2-ac33-725888e8277a 上修复后独立再审。不要在集成分支上手合。#132 spec 与 #212 不关闭。

  4. Blackman99 commented on Sep 23, 2026

    @Blackman99
    OwnerAuthor

    Integrated onto rewrite/grok-dsh-20260920 as 4aace88 (cherry-pick of 0a55752e4149aeeb9cc3c1ce1c262b0745a78368, based on f2e2c5d).

    Evidence in the integration worktree:

    • pnpm run typecheck passed
    • TMPDIR=/tmp pnpm test: 81 files, 2284 tests passed
    • cargo fmt --check, cargo clippy --locked --workspace --all-targets -- -D warnings, and cargo test --locked --workspace passed (271 + 61 + 2 + 379)
    • packed TMPDIR=/tmp python3 scripts/rust-nav-pty-test.py exit 0; sessions nav-welcome-tab, nav-fullscreen, nav-mouse-off, nav-dock, nav-minimal; output /tmp/codsh-rust-nav-x31tupu8

    Pushed without force: f2e2c5d..4aace88 rewrite/grok-dsh-20260920.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions