Move done DOCREV short-terms, checklists, and handoffs into archive/ops and retarget relative links after Round20 close-out. Co-authored-by: Cursor <cursoragent@cursor.com>
2.0 KiB
2.0 KiB
title, status, created, updated, owner, branch, worktree, mutex
| title | status | created | updated | owner | branch | worktree | mutex |
|---|---|---|---|---|---|---|---|
| 职责单元格精确断言 | done | 2026-09-13 | 2026-09-14 | Cursor-Auto | fix/document-revision-duty-cell-assertion | - | document-revision-duty-cell-assertion |
职责单元格精确断言
目标
堵住第16轮 UI-13a:权限矩阵已打开,整行 innerText 含全部 select option,误命中「编制负责人」。改为读控件 value/badge,且 USER_B 必须精确 reviewer,不得接受 viewer 降级。
范围
web/src/lib/dutyCellAssertion.ts与单测UserProjectRightsModal职责控件可访问语义web/e2e/document-revision-runtime.spec.tsUI-13a- audit / remediation / CURRENT
非目标
- 不放宽 reviewer 只读;不删双击/无编辑提示检查
- 不碰证据;不合 dest;不启停容器;不 E2E;不 push
步骤
- 从
dev@dd5671e开分支并登记 mutex - 精确角色解析 + option 文案不得误判测试
- 产品控件 data-* + UI-13a 接线
npm test+npm run build并原子提交- 独立审查收紧:只接受 reviewer;viewer 与 canAssignLead=true 拒绝
验收标准
- select/badge 必须精确
reviewer;viewer/author/approver 拒绝 - 整行 option 文案不得推断职责
- select 必须不可配置且 disabled
- 现场 UI-13a(未跑)
相关链接
- Audit: ../../audit/2026-09-13-document-revision-duty-cell-assertion.md
- Remediation: ../../remediation/2026-09-13-document-revision-duty-cell-assertion.md
证据 / 备注
- mutex:
document-revision-duty-cell-assertion(新 mutex) - 基线:
dev@dd5671e - 验证(收紧后):
npx tsx --test src/lib/dutyCellAssertion.test.tsPASS(6);cd web && npm testPASS;npm run buildPASS - 未跑真实 UI-13a,不得标 done;不得 merge / 启停容器 / E2E / push