chore: planning artifacts + mcp.json update
- .mcp.json: Playwright MCP config - 08-UAT.md: Phase 8 UAT results - quick task summaries: 260630 user-settings, 260701 calendar domain Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
---
|
||||
slug: smtp-admin-move
|
||||
title: "SMTP aus Benutzereinstellungen in Admin verschieben"
|
||||
created: 2026-06-30
|
||||
status: in-progress
|
||||
---
|
||||
|
||||
# SMTP aus Benutzereinstellungen in Admin verschieben
|
||||
|
||||
## Goal
|
||||
SMTP-Konfiguration gehört in den Admin-Bereich, nicht in Benutzereinstellungen.
|
||||
|
||||
## Tasks
|
||||
|
||||
- [ ] 1. `settings-sidebar.tsx` — SMTP-Link entfernen
|
||||
- [ ] 2. `admin-sidebar.tsx` — SMTP-Eintrag hinzufügen (Mail-Icon)
|
||||
- [ ] 3. `apps/web/src/app/(portal)/admin/smtp/page.tsx` — neue Admin-Seite erstellen
|
||||
- [ ] 4. `apps/web/src/app/(portal)/settings/general/smtp/page.tsx` — löschen
|
||||
- [ ] 5. `de.json` + `en.json` — `header.admin.smtp: 'SMTP'` hinzufügen
|
||||
@@ -0,0 +1,37 @@
|
||||
---
|
||||
slug: user-settings-bugfix
|
||||
date: 2026-06-30
|
||||
status: in-progress
|
||||
---
|
||||
|
||||
# User Settings Bug Fixes
|
||||
|
||||
Fix two bugs found during Playwright verification of the account settings page.
|
||||
|
||||
## Bug 1: Stale password error message
|
||||
|
||||
**Problem:** After a failed password submit (e.g. wrong current password), the error message stays visible while the user types new values. It only disappears on the next submit.
|
||||
|
||||
**Fix:** Add `onChange` handlers to all three password inputs in `account-settings-form.tsx` that clear `pwError` and `pwMismatch` state when the user starts typing.
|
||||
|
||||
**File:** `apps/web/src/components/settings/account-settings-form.tsx`
|
||||
|
||||
## Bug 2: Header avatar no live update
|
||||
|
||||
**Problem:** After successful avatar upload, the avatar in the account settings form updates immediately, but the small header avatar (top-right) still shows the "A" initial until page reload. The header reads `user.hasAvatar` from the Zustand auth store, which is never updated after upload.
|
||||
|
||||
**Fix:**
|
||||
1. Add `avatarVersion: number` and `bumpAvatarVersion: () => void` to `auth-store.ts`
|
||||
2. In `account-settings-form.tsx`: after successful upload, call `bumpAvatarVersion()` AND update `user.hasAvatar = true` in the store via `setUser`
|
||||
3. In `header.tsx`: use `avatarVersion` from the store as a cache-busting query param on the avatar img src
|
||||
|
||||
**Files:**
|
||||
- `apps/web/src/lib/stores/auth-store.ts`
|
||||
- `apps/web/src/components/settings/account-settings-form.tsx`
|
||||
- `apps/web/src/components/layout/header.tsx`
|
||||
|
||||
## Tasks
|
||||
|
||||
- [ ] auth-store: add avatarVersion + bumpAvatarVersion
|
||||
- [ ] account-settings-form: clear errors on input change; call bumpAvatarVersion + update store hasAvatar on upload success
|
||||
- [ ] header: use avatarVersion as cache-busting param in avatar img src
|
||||
@@ -0,0 +1,18 @@
|
||||
---
|
||||
slug: user-settings-bugfix
|
||||
status: complete
|
||||
date: 2026-06-30
|
||||
commit: 88db54f
|
||||
---
|
||||
|
||||
# Summary
|
||||
|
||||
Fixed two UX bugs in the account settings page found via Playwright verification.
|
||||
|
||||
## Bug 1: Stale password error cleared
|
||||
Added `onChange` handlers to all three password inputs. `pwError` and `pwMismatch` now reset on first keystroke — no longer visible while user types new values between submits.
|
||||
|
||||
## Bug 2: Header avatar live update
|
||||
- Added `avatarVersion: number` + `bumpAvatarVersion()` to `auth-store.ts`
|
||||
- After successful upload: `bumpAvatarVersion()` + `setUser({...user, hasAvatar: true})`
|
||||
- Header `<img>` src uses `?v={avatarVersion}` — forces browser re-fetch when version bumps
|
||||
@@ -0,0 +1,9 @@
|
||||
---
|
||||
slug: calendar-domain-test-button
|
||||
status: complete
|
||||
completed: "2026-07-01"
|
||||
commit: 42daa87
|
||||
---
|
||||
|
||||
Domain-Feld (Exchange-only) und "Verbindung testen"-Button zu Kalenderquellen-Form hinzugefügt.
|
||||
12 Dateien, 214 Insertions. TypeScript clean.
|
||||
Reference in New Issue
Block a user