feat(profile): foundation, cloud sync, digest and login fix (0.15–0.22)#28
Merged
Conversation
Phase A: resolve name/avatar from profilePrefs in RoomPage, chip in header, useProfilePrefsSync. Add PROFILE_ROADMAP.md and useProfilePrefsDraft scaffold for Phase B. Co-authored-by: Cursor <cursoragent@cursor.com>
…messenger Unified draft hook with onAfterCommit, reload/discard, replacePrefs and saveStatus. Removes duplicate autosave and profileDraft state. Co-authored-by: Cursor <cursoragent@cursor.com>
Remove dead profileShell/hubClasses; drop gender/birthDate from messenger UI; document profilePrefs vs messenger appearance storage. Co-authored-by: Cursor <cursoragent@cursor.com>
Email toggles in profilePrefs, sidebar nav, overview tile; org/billing stay roadmap. Profile-only — no messenger changes. Co-authored-by: Cursor <cursoragent@cursor.com>
Unlock organization and billing sections with Preview UI, add profileSections lib, email-notifications completion task, and overview tile for signed-in users. Co-authored-by: Cursor <cursoragent@cursor.com>
Russian labels for enterprise tiers, guest toggle fix, completion task gating, overview org/billing tiles, badgePreview token, release 0.16.1. Co-authored-by: Cursor <cursoragent@cursor.com>
Phase E MVP: User.profileJson, GET/PATCH /api/auth/me/profile, client pull/push hook. Polish identity and security panels with cloud status. Release 0.17.0. Co-authored-by: Cursor <cursoragent@cursor.com>
POST/GET profile media on server, avatar/wallpaper paths in profileJson, conflict banner with merge strategies, media cache for Room and profile UI. Release 0.18.0. Co-authored-by: Cursor <cursoragent@cursor.com>
Graceful cloud API fallback (Локально + retry), unified avatar upload for /profile and messenger, notifications design polish, push prefs from messenger on commit. Co-authored-by: Cursor <cursoragent@cursor.com>
SMTP via RETROGEN_SMTP_* or console log in dev; notify RoomMember on session end; update notifications copy and roadmap Phase G. Co-authored-by: Cursor <cursoragent@cursor.com>
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR #28 — Profile foundation (0.15.0 → 0.22.0)
Ветка:
feature/profile-foundation→mainВерсия релиза
0.22.0 (
client/package.json) — итоговая версия PR после merge.Кратко
Единый центр настроек
/profile, облачная синхронизация prefs, медиа на сервере, email-уведомления, мост с мессенджером и комнатой, исправления входа и навигации.CHANGELOG по версиям
0.22.0 — Вход и навигация
/login(React Router 7: remountRoutesпо pathname).navigate()+returnTo=/profile./profileпри возврате на вкладку.0.21.0 — Дайджест, S3, pull в мессенджере
UserNotificationLog.local/ S3 + CDN redirect.0.20.0 — Email «Завершение ретро»
RoomMemberпослеPOST /api/rooms/:slug/end.RETROGEN_SMTP_*) или лог в консоль.0.19.0 — Messenger cloud bridge
profileAvatarUpload.ts; аватар на сервере из мессенджера.0.18.0 — Медиа и конфликты
POST/GET/DELETE /api/auth/me/profile/media/{avatar|wallpaper}.0.17.0 — Cloud sync MVP
GET/PATCH /api/auth/me/profile,User.profileJson.0.16.0–0.16.1 — Notifications, org/billing, polish
useProfilePrefsDraft.0.15.0 — Foundation
Миграции и env
npm run db:push -w server # или db:migrate, если история миграций чистаяОпционально в
server/.env:RETROGEN_SMTP_*,RETROGEN_APP_URLRETROGEN_PROFILE_MEDIA_BACKEND=s3+RETROGEN_S3_*RETROGEN_NOTIFICATIONS_SCHEDULER=false— отключить schedulerTest plan
npm run dev— client :5173, server :3000/profileс сессией/profileи мессенджере