Close the account chain UI: forced-change current password and recovery proposals #95

Merged
weichen merged 2 commits from fix/account-chain-ui into main 2026-10-16 08:03:14 +00:00
Owner

Fixes the two remaining account-chain breakages from the 2026-10-14 backend contract change (backend 8dfc223/b9c0a34):

  1. Forced password gate now reads the server-derived passwordChangeMode and requires the current password for current_required sessions (initial-password first login); grant_setup (activation/recovery key redeem) stays current-free.
  2. Admin user panel gains the recovery proposal panel (create/list/revoke) replacing the 410 key-issuing entry; owner-side confirmation UI lands in Settings → Account (MyAccountSettings) with in-place grant redeem.

Stacked on #94 (admin create contract migration). Evidence: npm test 300 passed, tsc build ok, knip 54<=55 (SELF in commit body). Dev-side pin bump follows after #94/#583 merge.

Fixes the two remaining account-chain breakages from the 2026-10-14 backend contract change (backend 8dfc223/b9c0a34): 1. Forced password gate now reads the server-derived passwordChangeMode and requires the current password for current_required sessions (initial-password first login); grant_setup (activation/recovery key redeem) stays current-free. 2. Admin user panel gains the recovery proposal panel (create/list/revoke) replacing the 410 key-issuing entry; owner-side confirmation UI lands in Settings → Account (MyAccountSettings) with in-place grant redeem. Stacked on #94 (admin create contract migration). Evidence: npm test 300 passed, tsc build ok, knip 54<=55 (SELF in commit body). Dev-side pin bump follows after #94/#583 merge.
weichen added 1 commit 2026-10-16 07:49:48 +00:00
Why: the forced password gate still submitted an empty current password
after the backend began requiring it (current_required), locking every
account seeded with an initial password out of the workbench, and the
admin user panel had no client for the owner-confirmed recovery
proposal contract that replaced one-time key issuing (HTTP 410).
Evidence: npm test 300 passed; tsc -b && vite build ok; knip issues
54 <= baseline 55 (SELF).
Impact: mode-aware ChangePasswordGate with current-password input,
admin recovery proposal panel, owner-side account settings section,
recovery proposal client methods; no backend changes.
Refs: backend 8dfc223, b9c0a34; frontend #94
weichen added 1 commit 2026-10-16 08:03:02 +00:00
weichen merged commit dbb5f0462f into main 2026-10-16 08:03:14 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: weichen/Agent-System-Frontend#95