family-admin

FamilyAdmin

Collection family_admins — canonical-документ партнерських адмін-облікових записів для всіх Family. Поточна schema та unique index оголошені в @it-monkeys/backend-common.

Поля

  • directorId — ID директора з access token, який додав адмінку.
  • family — Family, до якої належить адмінка (Golden,Chathouse…)
  • login — login адмінки, збережений як string. Family adapter перетворює його на id_api, email або secret_id.
  • passwordEncrypted — зашифрований password; не входить у звичайні read projections.
  • statusactive, blocked.
  • partnerIds — ідентифікатори, отримані після перевірки адмінки на партнері: Golden idApi, Udate ulid і legacyId.
  • settings — додаткові поля конкретної Family, валідовані її schema.
  • validatedAt — час останньої успішної перевірки credentials.
  • createdAt / updatedAt — час створення й останньої зміни документа.

Відмінності Family

FamilyLogin у partner APIPassword у partner APIДодаткові поля
Goldenid_apipasswordчисловий idApi у partnerIds
PrimeemailpasswordcandidateSourceType у settings
Chathousesecret_idsecret_key
Udateemailpasswordulid, legacyId у partnerIds

Ідентифікатори

НазваЩо означає
familyAdminIdFamilyAdmin.id із collection family_admins. Усі нові зв’язки з адмінкою використовують тільки його.
adminLoginLogin адмінки на партнері. В FamilyAdmin зберігається як login; Golden id_api конвертується у string.

Поточні поля не мають одного змісту:

FamilyLegacy-полеПоточне значення
Goldengolden_admin, adminId_apiPartner id_api, number
Primeprime_adminMongo ID із prime_admin, string
ChathouseadminMongo ID із chathouse_admins, string
Udateudate_adminMongo ID із udate_admin, string
Client manageradmins[]Змішаний legacy ID залежно від Family

Legacy-поля не додаємо в canonical document. Під час backfill зберігаємо старий Mongo _id, де це можливо; Golden migration уже зберігає _id із golden_admins. Legacy-код отримує стару форму { id_api, password, isBlocked } через compatibility repository, який читає family_admins, розшифровує password і виконує явне перетворення.

Заповнити

  • Визначити правила вибірки адмінок для майбутньої ролі з глобальним доступом.
  • Залишити unique index { family, login }.
  • Затвердити validation schema для settings кожної Family.