Skip to content

Add typed social links API - #694

Merged
TThanos3000 merged 1 commit into
masterfrom
feature/dev-090-social-links-api
Aug 12, 2026
Merged

Add typed social links API#694
TThanos3000 merged 1 commit into
masterfrom
feature/dev-090-social-links-api

Conversation

@TThanos3000

Copy link
Copy Markdown
Collaborator

Что сделано

  • в UserLink добавлен nullable kind: telegram, vk, github, linkedin, website;
  • добавлена условная уникальность user + kind только для типизированных строк;
  • добавлен атомарный partial PATCH-контракт social_links;
  • отсутствие ключа сохраняет ссылку, null удаляет один тип;
  • неизвестные типы, некорректные и повторяющиеся URL возвращают validation error;
  • безопасный публичный профиль возвращает только social_links;
  • legacy-массив links сохранён для Angular и не удаляет типизированные ссылки;
  • существующие строки остаются с kind = null, data classification не выполняется;
  • добавлены миграция, тесты и документация.

Проверки

  • python -m py_compile для изменённых Python-файлов — пройден;
  • Black для новых и изменённых в рамках фичи Python-файлов — пройден;
  • Flake8 для новых и изменённых в рамках фичи Python-файлов — пройден;
  • manage.py check --tag models — пройден;
  • makemigrations --check --dry-run --skip-checks — изменений сверх миграции нет;
  • git diff --check — пройден.

Локальный PostgreSQL suite не стартовал: localhost:5432 недоступен. Полный Django check локально также блокируется отсутствующей системной библиотекой WeasyPrint gobject-2.0-0. PostgreSQL CI должен выполнить targeted и полный suite в штатном окружении.

Не изменялось

Angular, frontend, регистрация, onboarding и deploy-конфигурация не менялись.

@TThanos3000
TThanos3000 marked this pull request as ready for review August 12, 2026 11:30
@TThanos3000
TThanos3000 merged commit 10ccced into master Aug 12, 2026
5 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