Що система зберігає і як довго
Політика зберігання даних і аудиту. Живе в репозиторії, а не в локальних нотатках, бо її виконує
код (AuditCleanupBackgroundService) і про неї треба знати, читаючи цей код.
1. Аудит проб і вмілостей
Section titled “1. Аудит проб і вмілостей”Що: BadgeProgressAuditEvent, ProbeProgressAuditEvent.
Скільки: 180 днів від OccurredAtUtc, далі — жорстке видалення.
Знімок виконавця обмежений цим переліком і нічим більше:
| Поле | Навіщо |
|---|---|
ActorUserKey |
звʼязати з людиною, якщо вона ще існує |
ActorName |
незмінний знімок імені на момент дії |
ActorRole |
незмінний знімок ролі на момент дії |
Note |
необовʼязковий коментар виконавця |
Імʼя й роль зберігаються знімком навмисно: запис аудиту має лишатися читабельним і тоді, коли людина пішла з куреня або змінила діловодство.
2. Онбординг
Section titled “2. Онбординг”Що: WaitlistEntry, Invitation.
Скільки:
WaitlistEntry— 30 днів після кінцевого стану (Rejected, абоApprovedForInvitation, чиє запрошення вже використане чи протерміноване);Invitation— 30 днів післяUsedAtUtcабоExpiresAtUtc.
Жорстке видалення. Це персональні дані (пошта, імена) людей, які не завершили онбординг — тримати їх довше немає підстави.
3. Журнал змін ролей
Section titled “3. Журнал змін ролей”Живе в логах застосунку й прибирається зовнішнім провайдером (Application Insights), очікувано — 365 днів. На рівні застосунку прибирати нічого не треба.
3а. Вкладка
Section titled “3а. Вкладка”Що: DuesEntry (операції каси гуртка й куреня) і DuesEntryEvent (слід кожної зміни).
Скільки: безстроково. Прибиральник їх не чіпає.
Це гроші: курінь звітує станиці, і запис, на який спирається поданий звіт, не може зникнути через
пів року. Тому операцію не видаляють навіть рукою скарбника — її позначають видаленою
(DeletedAtUtc), а кожна зміна лишає DuesEntryEvent зі знімком операції після зміни й ключем того,
хто її зробив.
3б. Точкування
Section titled “3б. Точкування”Що: ScoreAttendance (відмітки присутності), ScoreEntry (бали вручну), PrivateScoreEntry
(книга КВ) і ScoreTrailEvent (слід кожної зміни відмітки, бала, тарифу, етапу чи запису КВ).
Скільки: безстроково, як курінна історія: рейтинг минулих років лишається відкритим.
Відмітку знімають, а запис видаляють позначкою (RemovedAtUtc, DeletedAtUtc), не рядком — слід
показує, хто й коли поставив чи зняв бал.
4. Винятки
Section titled “4. Винятки”Записи, привʼязані до активного розслідування безпеки чи розгляду скарги, мали б виключатися з
прибирання прапорцем IsRetainedForInvestigation. Не реалізовано: зараз збереження таких
записів понад строк робиться руками в базі.
5. Прибиральник
Section titled “5. Прибиральник”IHostedService, раз на добу в неробочі години (≈03:00 UTC). Видаляє пакетами, щоб не тримати
блокувань на таблицях.