Skip to content

One board lost the group subtask nesting (and the drag hint labels) that BoardView drew #1358

Closed

Description

@Birfy

来源:#1345 的只读核对(main 2083391cf1d946e240c67f37239752ff5c48725d)。删 BoardView 时把它原先渲染的两样东西一起删掉才看得见:一块板(#1326)从来没有把它们接过去。

事实(在 2083391c 的树上实测,不是推断):

  1. 分组板不再把子任务嵌在总任务下。 core/src/client/kanban.js 的 columnTree()(#51)仍算出 nests / loose,但一块板的 DOM 里没有 data-parent、也没有 Part of <title>:core/test/kanban.test.js 的两条旧断言在新宿主(UnifiedBoard)上直接 fail(assert.equal(all(notStarted).some(node => node.props?.['data-parent'] === overall.id), true) → actual: false)。现在子任务只是按自己的状态平铺在列里。
  2. 拖动时的列提示文案不再出现。 dropLabel() / columnTitle()(原 core/src/client/kanban.js:137、:143)随 BoardView 一起成了死代码,新的板只有 onDrop/onDragOver,不再渲染 Start task / Complete task 这两句提示;同一个测试里 assert.match(textOf(tree), /Start task/) 在新宿主上 fail。
  3. BoardView 本体是唯一还引用它们的实现:grep -c 'h(BoardView' core/src/client/kanban.js = 0,BoardView 只剩测试可达 —— 这就是 #1345 本身,另单跟踪。

为什么这不是「顺手删」:#1345 的验收要求旧断言在新宿主上不成立时先回报;这里回报的结果是——模型层(columnTree)的覆盖还在,渲染层的嵌套与提示文案是真的丢了,不是测试写法问题。

建议(等 Triage 定,不预设做法):把「子任务嵌在总任务下」与「拖放提示」在新板上重新画出来(delivery-view.js 的 DeliveryColumns 目前只画平铺卡片),或在产品上明确接受平铺、把 columnTree 一并删掉。两条都要有取舍,不该停在「两边各剩一半」。

复现:

cd core && node --import ./test/harness-resolve.mjs --test test/kanban.test.js

把 core/test/kanban.test.js 里的 UnifiedBoard 换回 BoardView 即绿;在 2083391c 上直接跑 #1345 的分支则是上面两条 fail。

Written-by: Dev4

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:uiWeb/desktop UI and copybugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions