Skip to content

Add application team models#659

Merged
TThanos3000 merged 1 commit into
masterfrom
feature/application-team-model
Jul 21, 2026
Merged

Add application team models#659
TThanos3000 merged 1 commit into
masterfrom
feature/application-team-model

Conversation

@TThanos3000

Copy link
Copy Markdown
Collaborator

Добавляет базовый слой данных для индивидуальных и командных заявок.

Что сделано:

  • в Application добавлено поле participation_mode;
  • поддержаны значения undecided, individual и team;
  • для обратной совместимости default временно остается individual;
  • существующие Application получают individual через миграцию;
  • добавлена модель Team;
  • добавлена модель TeamMember;
  • добавлены роли captain/member;
  • добавлены статусы invited, accepted, declined, removed и left;
  • joined_at автоматически заполняется при первом переходе в accepted;
  • Team и TeamMember зарегистрированы в Django Admin;
  • participation_mode добавлен в ApplicationAdmin;
  • добавлены model validation и database constraints;
  • добавлена документация application-team-model.md;
  • обновлен case-championship-domain.md.

Database constraints:

  • одна Team на одну Application;
  • уникальность team + user;
  • не более одного accepted-капитана в Team;
  • роль captain разрешена только со статусом accepted.

Проверки:

  • 21 новый model test — passed;
  • partner_programs — 171/171 passed;
  • projects + invites — 83/83 passed;
  • makemigrations --check --dry-run — passed;
  • migrate --plan — passed;
  • manage.py check — passed;
  • py_compile — passed;
  • flake8 измененных Python-файлов — passed;
  • git diff --check — passed;
  • git status — clean.

Важно:

  • публичный Team API не добавлялся;
  • frontend не менялся;
  • TeamInvite, email и уведомления не добавлялись;
  • Project и Submission не менялись;
  • legacy Collaborator/Invite flow не менялся;
  • settings, Docker, nginx, workflows и deploy не менялись;
  • старые unrelated flake8 errors намеренно не исправлялись.

@TThanos3000
TThanos3000 merged commit 9102c85 into master Jul 21, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant