Fix/chat history style #662

Merged
k88936 merged 6 commits from fix/chat-history-style into master 2026-10-07 13:04:56 +08:00
Member

close #647
close #645

close #647 close #645
k88936 added 4 commits 2026-10-07 11:18:32 +08:00
- 加载行卸载加入 300ms 隐藏滞回:填充视口的自动加载连续翻页,两次之间只有一次 effect 回流,立即卸载会把加载行一帧内拆了又挂
- conversationScrollPolicy.ts 新增 HISTORY_LOADING_INDICATOR_HIDE_DELAY_MS,与显示延迟 150ms 配对
- useDelayedFlag 增加 hideDelayMs 参数,值转假后延迟再隐藏,转真仍立即显示
- 补回归测试:连续翻页之间小于隐藏延迟的空隙不卸载加载行,真正结束后照常卸载
- ADR 第 1 节记录隐藏滞回的动机与阈值
- useConversationScroll 新增 syncBottomFromLayout:按真实几何复核 isNearBottom,为真即恢复跟随、收起胶囊并清掉「有新回复」
- 布局补偿、turns 内容变化与 ResizeObserver/MutationObserver 回调都先走一次复核,内容塌回一屏以内不再依赖滚动事件
- 补回归测试:列表内容塌回一屏以内并触发布局变化,没有任何滚动事件也应收起胶囊
- ADR 第 3 节记录贴底判定不能只认 onScroll
- styles.css 把消息列表改成 flex 列容器并显式 gap: 0——原 gap: 14px 对块级容器无效,改成 flex 后会与子项的 margin 叠成双倍间距
- 列表子项 flex: 0 0 auto 防止内容溢出一屏时被纵向压缩,列表仍是唯一滚动区
- 胶囊 margin-top: auto:内容不足一屏时吃掉剩余空间顶到可见底边,内容溢出一屏时归零、交由 sticky bottom-3 上拉贴底
- DirectProjectScrollToBottomCapsule 增加稳定类名 project-chat-scroll-to-bottom、去掉 mt-1,并更新组件说明
- ADR 第 3 节与备选方案 2 同步新的定位方式
弹层打开时输入盒盖住「回到底部」胶囊
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 6m53s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 4m22s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 6m4s
Project CI / Frontend tests (pull_request) Successful in 3m34s
Project CI / Backend tests (pull_request) Successful in 8m12s
Project CI / Repository checks (pull_request) Failing after 6m49s
Project CI / AI game creator shell web tests (pull_request) Failing after 3m38s
Project CI / Native shell tests (pull_request) Successful in 8m57s
b99302dbfb
- styles.css 把 DirectProject 输入盒的 z-index 从 1 抬到 30:输入盒自己是层叠上下文,模型 / 附件菜单的 z-index 只在盒内有效,盒子不抬高会被列表里的胶囊(z-index: 10)盖住
- 30 仍低于拖拽落点提示(60)与设置弹窗(240)两个整屏浮层,它们照旧盖在输入盒之上
k88936 added 1 commit 2026-10-07 11:46:45 +08:00
Merge branch 'master' into fix/chat-history-style
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
2a1e7fb373
k88936 added 1 commit 2026-10-07 11:56:47 +08:00
删掉滚动回归测试,改为守卫「回到底部」不盖住输入盒弹层
Project CI / AI game creator shell Rust crates (pull_request) Successful in 4m39s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Failing after 5m59s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 6m0s
Project CI / Frontend tests (pull_request) Successful in 2m47s
Project CI / Backend tests (pull_request) Successful in 7m42s
Project CI / AI game creator shell web tests (pull_request) Failing after 3m33s
Project CI / Repository checks (pull_request) Successful in 7m2s
Project CI / Native shell tests (pull_request) Successful in 10m2s
05012a85c3
- 删除 useConversationScroll.test.tsx 里新增的两条用例:加载行隐藏滞回、内容塌回一屏后收起胶囊
- chatDialogFrameLayout.test.ts:消息列表改为 flex 列容器后 gap 实际为 0,断言由 14px 改为 0 并注明间距仍由子项 margin 提供
- chatDialogFrameLayout.test.ts:新增用例——胶囊的 z-index 必须低于输入盒,模型 / 附件菜单向上展开时盖住胶囊而不是被胶囊盖住
- project-development.suite.ts:输入盒 z-index 断言由 1 改为 30,并注明层叠关系由上面那条用例守卫
k88936 merged commit 5090bde7f3 into master 2026-10-07 13:04:56 +08:00
k88936 deleted branch fix/chat-history-style 2026-10-07 13:04:56 +08:00
Author
Member

errors are from codex/agc-error-convergence-20261004 分支(8ceada869 → 合并提交 2a1e7fb37)

errors are from codex/agc-error-convergence-20261004 分支(8ceada869 → 合并提交 2a1e7fb37)
Sign in to join this conversation.