Repository navigation
feat: кабинет эксперта с реальными проектами к оценке - #502
Merged
Merged
Conversation
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.
Что изменено
В меню появился «Кабинет эксперта». По умолчанию он показывает проекты, которые осталось оценить, по программам. Оцененные проекты и приглашения вынесены отдельно. Каждый проект открывает существующую форму оценки; из нее можно вернуться с сохранением вкладки, поиска, программы и страницы.
Зачем
Макет проверен по реальному коду: убраны придуманные частичные оценки, продолжение черновика и выбор неназначенного проекта. Дизайн: https://www.figma.com/design/tvog0fpEgWgEtr7KUTjbyE?node-id=959-4431.
Реализация
Angular/use-case/repository/HTTP adapter используют read projection собственных назначений. Поиск с debounce 250 ms, фильтр программы, страницы по 20 и состояние в URL. Устаревшие запросы отменяются, данные изолированы по аккаунтам. Сохранены подтверждение приглашения, обработка ошибок и обновление профиля. Навигационный returnUrl исключен из полей программы; обратная ссылка использует проверенный локальный UrlTree.
API
Зависит от backend PR PROCOLLAB-github/api#820. Его нужно выложить первым.
include=projectsдополняет прежнийevaluation/programsendpoint; старый summary contract не меняется. Запись оценки и принятие приглашения используют существующие endpoints и payloads.UI
Проверены все 13 экранов Figma, 387 текстовых узлов. Используются существующие Button/Field/Modal/Avatar и Mont; кнопки 32 px, центрированные модалки. Стрелка select — существующая тонкая иконка UI kit (Figma asset URL вернул HTTP 202 без содержимого). Различаются loading, error/401, no-access, no-assignments, unavailable, all-completed, no-results и invitations. Название настройки критериев «Оценивание» не менялось.
Permissions
Новых прав нет. UI использует серверные canRate/blockedReason; просроченные назначения нельзя открыть для новой оценки, сохраненные оценки доступны для просмотра. Ограничения формы и server submit не менялись. Кабинет не показывает чужие назначения.
Проверки
npm run build:prpassed.git diff --check; diff пересверен с актуальным dev. Чужие изменения certificate сохранены через обычный merge dev.Acceptance criteria
Не проверено
Пользовательская DEV-сессия конкретного эксперта и реальное email delivery; браузерная проверка использует изолированную БД и синтетические аккаунты. DEV workflow успешно завершен на
cc16cad1ba1a4a2b8757879ae0ff1652c33fc26e: format, lint, 2462 tests, build и публикация. Опубликованные frontend assets повторно проверены в браузере с изолированным API на 1440/390/360; runtime/server errors отсутствуют.Риски / migration
Сначала backend PR 820, затем этот frontend. Старый API показывает ошибку загрузки вместо пустого успешного кабинета. Новых зависимостей, миграций и изменений бизнес-правил нет. Production вне scope.