Repository navigation
fix: исключать участника из команды проекта-заявки программы - #810
Merged
Merged
Conversation
8 tasks done
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.
Что изменено
Удаление участника из программы теперь исключает его из команды проекта-заявки этой программы и отзывает приглашения в заявку. Команда исходного проекта, аккаунт и регистрации в других программах сохраняются. Уже сданная заявка сохраняет оценки и назначения экспертов.
Зачем
При подаче существующего проекта создается отдельная копия-заявка. Удаление одной регистрации оставляло участнику доступ к ее команде и чату и могло блокировать сдачу оставшейся командой.
Реализация
Подписанный preview включает затронутые команды, приглашения и связи программ. Операция использует существующий порядок блокировок Project NO KEY UPDATE → программы → регистрации. Общий legacy Project нескольких программ отклоняется409 без изменений. Сохраняется прежнее предупреждение/отвязка заявки при удалении руководителя.
API
participants/remove-preview/добавляетconfirmation_version:2иteam_changes.participants/remove/требуетconfirmation_version:2; старый интерфейс с обещанием сохранить команды получает400 с просьбой обновить страницу. Старые preview отклоняются409. Внедрение API первым, затем Angular PROCOLLAB-github/procollab#473.UI
Контракт для существующего окна подтверждения; Angular показывает конкретные заявки и исключаемых участников. Макет и компоненты не меняются.
Permissions
Доступ организатора и object scope сохраняются на сервере. Отзываются и обработанные Invite, дающие READ. Уже открытый project socket проверяет текущее членство перед отправкой/приемом событий; формат клиентских сообщений и личные чаты сохранены.
Проверки
Acceptance criteria
Не проверено
Настоящие пользователи и SMTP намеренно не изменяются; browser business writes выполняются только в изолированном local PostgreSQL/Django с тестовой почтой.
Риски / migration
Миграций нет. API-first rollout требует новый frontend confirmation_version2. Legacy общий Project возвращает409, команды других программ не меняются. Production не затрагивается.
DEV deployments completed: API PR810 →1c424ff7 (run39587159832), frontend PR473 →cc95cda8 (run39587847132). Merge trees match tested sources. Production, real users and SMTP unchanged.