Files
GearBox/.planning/milestones/v2.2-phases/28-profile-and-logto-integration/28-03-SUMMARY.md
Jean-Luc Makiola 2853477a75
All checks were successful
CI / ci (push) Successful in 1m15s
CI / e2e (push) Has been skipped
CI / deploy (push) Has been skipped
chore: archive v2.2 User Experience Polish milestone
Phases 28-31 archived to milestones/v2.2-phases/
Requirements and roadmap snapshots archived to milestones/

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 16:00:35 +02:00

54 lines
1.8 KiB
Markdown

---
phase: 28-profile-and-logto-integration
plan: 03
subsystem: client, server
tags: [navigation, auth, logto-config]
key-files:
created: []
modified:
- src/client/components/UserMenu.tsx
- src/server/routes/auth.ts
- src/client/hooks/useAuth.ts
metrics:
tasks: 1/2
commits: 1
files-changed: 3
---
# Plan 28-03 Summary: Navigation, /me Extension, Logto Configuration
## What Was Built
1. **Profile navigation link** — Added "Profile" entry to UserMenu dropdown (above Settings), using circle-user icon from curated Lucide set. Only visible to authenticated users.
2. **Extended /me endpoint** — Returns `createdAt` field from user record for member-since display on profile page. Formatted as ISO string.
3. **AuthState type update** — Added optional `createdAt?: string` to the client-side AuthState interface.
## Task 2: Logto Console Configuration (PENDING - Human Action Required)
The following must be configured manually in the Logto admin console:
- D-07: Sign-in page branding (logo, colors, custom CSS)
- D-08: Custom domain (auth.gearbox.de) — optional
- D-09: Google and GitHub social sign-in connectors
- D-10: Email verification required at signup
- D-11: Password policy (8+ chars, mixed case, number)
## Commits
| # | Hash | Description |
|---|------|-------------|
| 1 | 1b00134 | feat(28-03): add profile navigation link and extend /me with createdAt |
## Deviations
- Task 2 (Logto Console config) is a human-action checkpoint — cannot be automated. Instructions are documented in the plan.
## Self-Check: PASSED
- [x] UserMenu has Profile link pointing to /profile
- [x] /me endpoint returns createdAt field
- [x] AuthState interface includes createdAt
- [x] Lint passes
- [x] All project tests pass (storage failures are pre-existing)