Docker Build and Push / build-image (push) Successful in 1m1s
问题定位: - 打卡页实际渲染的是 MergedView (CheckinPage 路由), 上次改的 HabitView 是未使用的旧组件, 打包时被 tree-shake, 线上自然无任何效果 - 任务列表长按抬起后一动即脱手: touch-action:pan-y 下手指出现纵向分量, WebView/渲染器直接把触摸判给滚动并 pointercancel, touchmove preventDefault 拦不住已决定的滚动 (看板可用只因该模式下页面无纵向可滚祖先) 修复: - 新增 ⠿ 拖动把手 (touch-action:none): 浏览器按规范完全不接管该触摸, 按下立即拖动, CDP 触摸仿真验证: 垂直拖动穿过可滚列表正常落点, 跨组(每天/每周/每月)正确拒绝; 任务行把手拖动换列, 打卡卡片把手组内排序 - useRowDrag/useHabitDrag 抽出 armListeners, 新增 bindHandle 立即激活路径 - MergedView: 组内排序改按 sortOrder (服务端已返回), 拖动落位乐观更新 + POST /checkin/habits/reorder, 失败回滚; 打卡点击加拖动余波保护 - 长按路径保留为补充入口 (不可滚场景仍可用)