12 August 2026, 00:00 (CST) 11 August 2026, 22:00 (CST)
2026年08月11日 22:00(东八区 / 北京时间)
看板缺陷修复:时间粒度 1–14 天 · 单日时段命名唯一 · 置顶完善
概述
三项修复:
- 时间细化:最小 1 天、最大 14 天;新建默认 今日 → 今日;编辑已有看板时开始时间锁定;卡片开始/截止按创建时间默认填充且不越界;
- 单日时段命名:
YYYY-MM-DD_上午 / _下午 / _晚上,保证同一天多张 1 天看板文件唯一; - 置顶完善:详情页解锁模式每张卡片均有置顶/取消置顶切换按钮,GUI 编辑器卡片面板按钮保留。
1. 时间粒度与约束
| 项 | 实现 |
|---|
| 最小 1 天 / 最大 14 天 | validate():daySpan < 1 不再报错(同日合法),> 14 报错 |
| 新建默认今日 | defaultState():weekStart = weekEnd = 今日,时段按当前小时预选(5–12 上午 / 12–18 下午 / 其余晚上) |
| 编辑时开始锁定 | 修改模式 weekStart 输入 disabled;时段同样锁定(文件名标识) |
| 最大时间不可选 | 结束日期 max = 开始 + 13 天(buildBoardPanel + applyDateBounds 双处生效) |
| 卡片默认日期 | GUI 新增卡片 / 详情页快捷添加:@start = @due = 今日,越界时自动夹取到 [week_start, week_end];后续可编辑 |
2. 单日时段命名唯一
2026-08-11_上午.md
2026-08-11_下午.md
2026-08-11_晚上.md
- Front Matter 新增
period(无 / 上午 / 下午 / 晚上),仅单天看板参与文件名(buildSlug()); - 多天看板忽略时段,文件名保持
YYYY-MM-DD; - 所有「目标文件」逻辑(模式徽标、流程指引、Token 同步、Codeberg 链接)统一改用
buildSlug(); - 列表卡片新增
data-slug(= page.slug),编辑器 existingSlugs 与修改判定按完整文件名; - 列表页 / 明细页展示时段徽标(
kanban-period-chip); verify-kanban-build.mjs 正则支持 日期_时段.md。
3. 置顶完善
- 详情页卡片徽标行:解锁模式下每张卡片显示置顶切换(未置顶 = 灰色 📌,已置顶 = 高亮「📌 置顶」),点击切换;
- 锁定只读模式仍显示置顶徽标(不可点击);
- GUI 编辑器卡片面板「置顶 / 解除置顶」按钮 + 画布 📌 指示保留;
- 置顶卡片始终排在同列表顶部(
sortCards() 置顶优先,多卡可同时置顶)。
4. 涉及文件
| 文件 | 作用 |
|---|
static/js/kanban-rules.js | period Front Matter 序列化 |
static/js/kanban-editor.js | 默认今日/时段、开始锁定、结束上限、卡片默认日期、buildSlug()、置顶按钮 |
static/js/kanban-board.js | 快捷添加默认日期、置顶切换按钮、GUI 事件携带 slug |
templates/kanban_list.html / kanban.html | data-slug、时段徽标 |
scripts/verify-kanban-build.mjs | 支持 日期_时段.md |
sass/kanban/style.scss | 时段徽标、置顶空闲态 |
content/kanban/kanban-mapping.md / _index.md | 命名与约束文档 |
5. 验证
node --check 四个 JS 通过;- 规则测试:现有 4 看板往返无损;
period 序列化保留; zola build 无错误,verify-kanban-build OK(含新的命名正则)。
相关链接:映射说明 · 周计划列表
11 August 2026, 20:00 (CST)