3.0 KiB
3.0 KiB
title, task_id, status, created, updated, owner, task_type, policy_revision, branch, worktree, base_dev_sha, write_scope, mutex, review_state, integration_state, deployment, cleanup, remote_sync
| title | task_id | status | created | updated | owner | task_type | policy_revision | branch | worktree | base_dev_sha | write_scope | mutex | review_state | integration_state | deployment | cleanup | remote_sync | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 恢复管理台重置密码入口 | restore-admin-password-reset-2026-09-28 | done | 2026-09-28 | 2026-09-28 | Cursor | fix | AGENTS.md + agent-worktree-workflow @ 2026-09-21 | feature/restore-admin-password-reset-2026-09-28 | .worktrees/restore-admin-password-reset-2026-09-28 | 912957c44e |
|
auth | accepted | merged_local_dev | not_required | pending | not_requested |
恢复管理台「重置密码」
用户目标与授权
管理员在「用户与准入治理」重置用户密码:服务端生成随机临时口令;被重置用户下次登录必须修改密码,且仅这一次。来源:用户当次会话授权修复,禁止移除该能力。
检索
- 检索词:重置密码、
adminResetPassword、UsersSection、T20-F4。 - 命中:ISSUE-20260924-admin-reset-dead(resolved)。端点
POST /api/v1/admin/users/{id}/reset-password已在39f8c1d1合入,且d653e32e的基线725181de包含该提交。 - 采纳:不重做 API、审计表或强制改密弹窗。本任务只恢复被误删的 UI。根因不同,另立 ISSUE-20260928-admin-reset-ui-removed。
- catalog overlap(mutex
auth):hard/soft 均为空,无需 ack。
根因
d653e32e(T20-S1 F4-A)按过期设计注释删除了 UsersSection 的「重置密码」按钮和 handleResetUserPassword,并写明「端点未开通」。当时 F4-B 端点、authClient.adminResetPassword、must_change_password 与 FirstLoginPasswordModal 均已在 dev。同类入口(停用、编辑资料)未受影响。
变更
| 项 | 说明 |
|---|---|
| UI | 恢复确认框、adminResetPassword、一次性临时口令提示、成功通知 |
| 后端 | 无改动。随机 16 位口令、must_change_password=true、撤销会话、审计表保持 F4-B 行为 |
验证
见 测试报告。
ISSUE-20260928-admin-reset-ui-removed
- 预期:管理员可在用户与准入治理重置密码。
- 实际:按钮消失;后端路由仍在
internal/server/server.go。 - 已证实根因:F4-A 在端点已存在的基线上删除 UI,注释与
git merge-base事实不符。 - 修复:恢复
web/src/components/admin/console/sections/UsersSection.tsx入口。 - 状态:resolved。UI 已随
04d7fec4合入 local dev;证据见测试报告。
经验小结
删除「端点未开通」的界面前,用当前基线 SHA 核对路由是否已存在(git merge-base --is-ancestor),不要只信设计文档里的「待产品选型」。详见 LESSON-20260928-ui-dead-control。
禁止
- 未授权
git push/ 晋升 test/main - 临时口令写入 git、聊天或报告正文