Черновик ПЗ

This commit is contained in:
2026-05-25 19:34:22 +03:00
parent adc3730b8d
commit 2b139a18b3
72 changed files with 3570 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
@startuml wallenc_02_vault_lifecycle
scale 3
title
Wallenc — пользовательский поток: жизненный цикл vault
и точки постановки в очередь синхронизации (проект)
end title
skinparam defaultFontName "DejaVu Sans"
skinparam state {
BackgroundColor #F8F8F8
BorderColor #333333
}
skinparam noteBackgroundColor #E3F2FD
skinparam noteBorderColor #1565C0
state "(Б) Список vault" as List
List --> Create : Создать vault
Create --> List : Vault создан
List --> EncryptDlg : Включить шифрование
EncryptDlg --> Encrypting : Подтверждение, мастер-ключ
state Encrypting {
state "Шифрование данных + запись метаданных" as EncWork
}
Encrypting --> List : Готово
note right of Encrypting
После успешной записи **коммита**
в историю Storage (проект):
UUID storage → **очередь синхронизации**
в Room (для таймера)
end note
List --> OpenDlg : Открыть зашифрованный
OpenDlg --> Opened : Ключ верный
OpenDlg --> List : Отмена / неверный ключ
state Opened {
state "Просмотр / работа с содержимым" as Browse
}
Opened --> List : Закрыть vault / блокировка
List --> RenameDel : Переименовать / удалить
RenameDel --> List : Подтверждение
note bottom of List
**Синхронизация (проект):** любое изменение,
порождающее новый **коммит** в Storage,
добавляет storage UUID в таблицу очереди;
**SyncService** по таймеру обрабатывает очередь,
сравнивает истории коммитов с удалённой копией
и приводит зашифрованное содержимое
к одному состоянию (без передачи ключей).
end note
@enduml