chore: rebuild CentOS 7 release package
This commit is contained in:
4
.trellis/tasks/08-16-sidebar-collapse-button/check.jsonl
Normal file
4
.trellis/tasks/08-16-sidebar-collapse-button/check.jsonl
Normal file
@@ -0,0 +1,4 @@
|
||||
{"_example": "Fill with {\"file\": \"<path>\", \"reason\": \"<why>\"}. Put spec/research files only — no code paths. Run `python3 .trellis/scripts/get_context.py --mode packages` to list available specs. Delete this line once real entries are added."}
|
||||
{"file": ".trellis/spec/frontend/quality-guidelines.md", "reason": "复核前端质量、回归和资源版本要求。"}
|
||||
{"file": ".trellis/spec/frontend/component-guidelines.md", "reason": "复核按钮可访问性与样式边界。"}
|
||||
{"file": ".trellis/tasks/08-16-sidebar-collapse-button/research/root-cause.md", "reason": "复核媒体条件与宽触控视口的根因假设。"}
|
||||
@@ -0,0 +1,4 @@
|
||||
{"_example": "Fill with {\"file\": \"<path>\", \"reason\": \"<why>\"}. Put spec/research files only — no code paths. Run `python3 .trellis/scripts/get_context.py --mode packages` to list available specs. Delete this line once real entries are added."}
|
||||
{"file": ".trellis/spec/frontend/quality-guidelines.md", "reason": "前端质量与回归要求,尤其是入口资源和测试约束。"}
|
||||
{"file": ".trellis/spec/frontend/component-guidelines.md", "reason": "按钮组件结构与可访问性边界。"}
|
||||
{"file": ".trellis/tasks/08-16-sidebar-collapse-button/research/root-cause.md", "reason": "侧栏媒体条件空档的调查证据与实施方向。"}
|
||||
28
.trellis/tasks/08-16-sidebar-collapse-button/prd.md
Normal file
28
.trellis/tasks/08-16-sidebar-collapse-button/prd.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# 修复左侧树折叠按钮
|
||||
|
||||
## 背景
|
||||
用户在平板横屏/宽触控视口中看到左侧会话与项目树完整展开,但用于收起整个左侧栏的按钮消失。项目节点自身的展开箭头仍正常,本任务不处理项目节点展开逻辑。
|
||||
|
||||
## 目标
|
||||
恢复现有侧栏折叠能力在宽触控视口中的可发现性和可操作性,并保持桌面鼠标与窄屏抽屉行为不回退。
|
||||
|
||||
## 功能要求
|
||||
1. 左侧栏展开时,聊天标题栏必须显示可点击、可触控、可键盘聚焦的“收起侧栏”按钮。
|
||||
2. 左侧栏折叠后,同一按钮必须保留并可恢复侧栏,标签与 `aria-expanded` 同步更新。
|
||||
3. 宽触控视口(宽度大于 768px、`pointer: coarse` 或无 hover)不得落入“按钮隐藏且点击无行为”的空档。
|
||||
4. 宽桌面鼠标视口继续支持固定折叠;如保留 hover 临时预览,只在设备真实支持 hover 时启用。
|
||||
5. 768px 及以下继续使用现有抽屉开关与遮罩,不改变其语义。
|
||||
6. 所有现有主题均能看到按钮;暗金荒野主题不得因专属选择器隐藏或压暗按钮。
|
||||
7. 不修改项目节点展开箭头,不修改任务看板业务逻辑,不触碰现有 task-board 脏改动。
|
||||
|
||||
## 验收标准
|
||||
- 目标平板横屏视口:展开态按钮可见;点击后侧栏收起;再次点击恢复。
|
||||
- 常规桌面视口:展开/折叠、持久化、hover/focus 行为正常。
|
||||
- 窄屏视口:按钮继续控制抽屉开关,遮罩可关闭。
|
||||
- 按钮具备可见焦点,`aria-controls="sidebar"` 与真实状态一致。
|
||||
- 侧栏专项回归、相关前端回归、语法检查和 `git diff --check` 通过。
|
||||
|
||||
## 非目标
|
||||
- 不重做侧栏视觉主题。
|
||||
- 不调整项目/会话树的数据或展开状态。
|
||||
- 不修改任务看板打开时是否隐藏全局导航控件的产品决策。
|
||||
@@ -0,0 +1,16 @@
|
||||
# 侧栏折叠入口初步调查
|
||||
|
||||
## 证据
|
||||
- `public/index.html` 已存在 `#menu-btn`,包含 `aria-controls="sidebar"` 和初始 `aria-expanded="true"`。
|
||||
- `public/app.js` 已缓存 `menuBtn`,并区分窄屏 drawer 与桌面 fixed collapse 两条点击路径。
|
||||
- 桌面折叠能力当前使用 `(width > 768px) and (hover: hover) and (pointer: fine)`。
|
||||
- `scripts/regression.js` 已有 `assertFrontendSidebarCollapseContract()`,覆盖 DOM、持久化、无障碍状态、窄屏 drawer 与桌面 hover rail。
|
||||
- 用户截图底部有触控设备 Home Indicator,且视口为横屏宽屏;这与 `width > 768px`、`pointer: coarse`、无 hover 的组合一致。
|
||||
|
||||
## 根因假设
|
||||
宽触控设备既不满足 `max-width: 768px` 的 drawer 条件,也不满足要求 `hover: hover`、`pointer: fine` 的桌面折叠条件,因此落入能力空档:现有按钮可能被 CSS 隐藏,即使存在于 DOM 中也不会进入任何有效点击分支。
|
||||
|
||||
## 实施方向
|
||||
- 宽屏固定折叠能力应按宽度提供,而不是按鼠标能力整体禁用。
|
||||
- hover 临时展开只属于鼠标增强,可继续用 hover/fine 条件隔离。
|
||||
- 先用本地源码与浏览器 computed style 验证假设,再做最小实现。
|
||||
26
.trellis/tasks/08-16-sidebar-collapse-button/task.json
Normal file
26
.trellis/tasks/08-16-sidebar-collapse-button/task.json
Normal file
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"id": "sidebar-collapse-button",
|
||||
"name": "sidebar-collapse-button",
|
||||
"title": "修复左侧树折叠按钮",
|
||||
"description": "",
|
||||
"status": "planning",
|
||||
"dev_type": null,
|
||||
"scope": null,
|
||||
"package": null,
|
||||
"priority": "P2",
|
||||
"creator": "shiyue",
|
||||
"assignee": "shiyue",
|
||||
"createdAt": "2026-08-16",
|
||||
"completedAt": null,
|
||||
"branch": null,
|
||||
"base_branch": "main",
|
||||
"worktree_path": null,
|
||||
"commit": null,
|
||||
"pr_url": null,
|
||||
"subtasks": [],
|
||||
"children": [],
|
||||
"parent": null,
|
||||
"relatedFiles": [],
|
||||
"notes": "",
|
||||
"meta": {}
|
||||
}
|
||||
Reference in New Issue
Block a user