Repository navigation
修复发送滚动与中栏交互,发布 0.19.2 - #15
Merged
Merged
Conversation
timeStarry
marked this pull request as ready for review
September 12, 2026 10:09
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
阅读历史时主动发送消息仍停留在旧位置,中栏每行的三点入口占据内容宽度,选中项又与列表背景使用相同色值。此版本让发送后的最新内容立即可见,并补齐中栏的选择与调宽体验。
Changes
Scope And Non-Goals
界面布局与会话滚动状态,覆盖 P2P 私密通道及 Workspace 的呈现层。没有 API、消息协议、schema、权限、配额、存储或审计变更;没有修改表情资源、SDK 或离线工具版本。本机新增存储只有中栏宽度,不包含消息或身份数据。
Risk Review
WORKSPACE_ENABLED=trueexactly.Risk notes: 本次不改变服务端写入或访问边界;沿用既有授权查询恢复最新时间线。重点风险是发送、历史定位、上传回执和切换会话间的竞争,以及 PointerCapture 取消和响应式断点。测试使用合成身份与可丢弃数据库,证据保留在忽略目录。
Validation
corepack pnpm test:最终 Web 346/346、SDK 8/8、离线工具 20 通过 / 1 个 PostgreSQL 专项跳过。corepack pnpm lint。corepack pnpm build;保留既有 >500 kB bundle 提示。node docs/design/ui-ux-rewrite/verify-docs.mjs:32 份文档,521 处本地链接/章节引用通过;git diff --check通过。node apps/web/src/ui/patterns/verify-workspace-history.mjs:历史前插、菜单与阅读锚点、历史请求期间新的阅读位置、迟到其他会话响应均通过。915fe79的真实 Go 专项 7/7(2.2 分钟)及完整 Workspace 58/58(6.4 分钟),零失败/跳过/重试;含原双用户流程、六项表情面板与新增中栏持按场景。915fe7966f7d77df9510e95b7a568c834676b698的 CI 34687222841 四项门禁全部通过,包括 Go race/analysis/PostgreSQL、构建及 Docker、P2P 隐私传输、完整 Workspace 浏览器。CI 发现并补充的回归:首轮 Workspace 门禁 57/58,旧双用户流程打开
history-26的“设为常驻消息”时菜单项位于视口外。原流程在本地首次复跑通过;独立真实组件用相同的程序化历史滚动确定复现了菜单 bottom 1028 超出 900px 视口,几何单测也复现了偏移视口内的越界。修复共享定位逻辑并补充确定性边界与交互测试,不修改旧用例的点击方式、超时或断言。7daaf39的四项 CI 已通过。该版本地追加的完整 Workspace 为 57/58:唯一失败是 390px 群聊长消息长按打开面板后,松手产生兼容点击而关闭面板。相同正式组件与真实触摸的受控复现证实,500ms 持按正常,1600ms 持按会超过从打开时起算的 900ms 抑制窗口;该触控 sheet 不经过刚修复的桌面定位分支。原失败证据保留,继续修复并在最终版本验证,不以重试替代修复。PostgreSQL schema、Docker 和部署配置没有修改;生产仍由既有 Go guarded coordinator 构建与验证候选镜像,保留数据权威。
UI/UX Evidence
已检查 1440px 桌面、390×844 手机与 320px 触控截图,确认选中项与背景分离、长按面板可达、文字图标居中且无横向溢出。自动化覆盖 1101/1100/761/760 断点、原色/苔原/暮色/米色/极简明暗、小字对比度、焦点与草稿 DOM 保留。截图仅为合成数据,保留于私有测试目录;原生设备和读屏未新增实机验收。
额外验证限制:整个工作台脚本在可选引擎的 harness 导航阶段超时,原日志没有引擎标签,不能报告整脚本或完整跨浏览器通过。独立小烟测中 Firefox 导航和渲染正常;Windows WebKit 可独立复现相同的
load等待超时,超时后页面已 complete 且标题渲染,无 pageerror/requestfailed。未修改产品或放宽原脚本超时来消除此结果。Migration, Release, And Rollback
发布 0.19.2,无数据迁移。按维护者本任务已有指令,在 CI 全部通过并合并后,以精确
origin/mainSHA 在生产 checkout 执行既有 guarded Go-to-Go 升级。生产预检确认 0.19.1 /512b661bace1181b937ce2ae1354427ae9b63000四服务健康,原镜像、私有恢复快照、外部配置和卷权威完整。回退使用该版本已验证镜像及当前数据权威,不回退数据库或启动退休 Node 服务。Merge Authorization
timeStarry执行最终合并;维护者已在本任务明确授权“检查通过后直接合并部署”。遵守保护分支,不使用管理员绕过。Production Verification
2026-09-12 已合并并上线 0.19.2,生产提交
182a6bf95b5ec8eba2974852590dd3541ec6ca50。合并树6338f4cf81a0f352a5d851016aa975f0c882c774与最终测试树完全一致;主分支 CI 34687703547 四项门禁也全部通过。main的 ff-only 更新;guarded Go-to-Go coordinator 成功退出,四项服务均为本提交、0.19.2、healthy,Workspace/worker 为 active。构建期间 npm 的一个依赖下载连接停滞;确认同一锁定包可正常下载后,仅重置隔离构建网络内属于该 pnpm 安装进程的单条已识别连接,原安装按锁文件恢复重试并完成。生产配置、依赖版本及校验方式保持原样,部署入口未重启或绕过。