Repository navigation
feat: Expand Settings page with sub-pages (version, team, password) #427
Copy link
Copy link
Closed
Labels
ready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agent
Description
Summary
Improve the Settings area of the Authsome dashboard by adding structured sub-settings: version info, team management, and password change — instead of the current minimal two-card layout.
Current state
Route: /settings → ui/src/app/(authenticated)/settings/page.tsx
Implementation: Renders SettingsView from authsome-dashboard.tsx, which shows only:
- Account card: email, role, principal ID
- Daemon card: version string, encryption label
// ui/src/components/authsome-dashboard.tsx — SettingsView (~lines 1488–1514)
<SectionHeader description="Local daemon and account context." title="Settings" />
// Two static KeyValue cards — no sub-navigation, no actionsRelated but elsewhere:
- Principals / team:
/principal(admin-only nav item) — separate from Settings - Password / account auth: hosted mode uses
HostedAccountService+ UI session JWT (src/authsome/server/routes/ui.py) — login/register flows exist at/loginbut no in-app password change - Version: shown inline in Daemon card; no dedicated about/version page
Proposed work
Restructure Settings as a hub with sub-pages or tabs:
| Sub-setting | Content |
|---|---|
| General / Account | Email, role, principal ID (current Account card) |
| Version / About | Daemon version, build info, links to docs/changelog |
| Team management | Invite/manage principals or team members (may consolidate or link to /principal) |
| Password & security | Change password (hosted accounts), session management |
Design considerations
CONTEXT.mdnotes authsome is single-tenant — "team" may mean principal membership / identity claims, not multi-org. Align copy and scope with domain model (Principal, IdentityClaimRecord).- Admin-only sections (team-wide principal management) should respect
data.account.isAdmin. - Match visual patterns from
ui/DESIGN.mdand consistency work tracked separately.
Relevant files
ui/src/components/authsome-dashboard.tsx—SettingsView,NAV_ITEMSui/src/app/(authenticated)/settings/page.tsxui/src/lib/authsome-api.ts— dashboard/account API typessrc/authsome/server/routes/ui.py— register, login, logoutsrc/authsome/server/hosted_account.py(if exists) — password operations
Acceptance criteria
- Settings has clear sub-navigation (tabs or nested routes under
/settings/*). - Version/about information is accessible in a dedicated sub-section.
- Hosted users can change password from the UI (API + form).
- Team/principal management is reachable from Settings (inline or linked) with correct role gating.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
ready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agent
Activity