07d54b5996
Заголовок задачи синхронизации
2026-05-22 00:20:49 +03:00
d3eac81660
Причина синхронизации и временная метка в логах
2026-05-21 22:30:40 +03:00
d0f490a3fd
refactor(sync): перевёл журнал на map по пути и убрал цикл debounce-sync
...
Журнал хранится как словарь path→entry, служебные пути исключены из sync.
Apply пишет файлы без записи в журнал; bootstrap не триггерит sync во время работы.
2026-05-21 22:05:57 +03:00
51e6f40587
fix(sync): стабилизировал синхронизацию, Yandex I/O и вёрстку карточки storage
...
Добавил TRASH вместо DELETE для moveToTrash, компакцию журналов и отчёт об ошибках apply.
Исправил проброс ошибок upload Yandex при close, CAS lock и загрузку OAuth-токена.
Упростил совместимость sync-групп (только encInfo), поправил растягивание StorageTree при недоступных meta.
2026-05-21 18:46:03 +03:00
467ed64426
fix(vault): исправил шифрование, meta Yandex и enc-meta при первом открытии
...
Remember key после encrypt, мягкий auto-open в UnlockManager,
StorageMetaLoadState без затирания meta на сетевых ошибках,
фильтр storages в YandexVault и создание .enc-meta при FileNotFound.
2026-05-21 11:05:14 +03:00
c58bcdc35b
Сильно улучшен UX при работе с Yandex vault
2026-05-21 01:40:30 +03:00
ffdab4563d
Исправлено множество предупреждений
2026-05-19 01:42:22 +03:00
f99d79fece
Переключение языка
2026-05-18 15:35:06 +03:00
f3f99aed5a
refactor(errors): унифицировал доменные ошибки и добавил failed-статус задач
2026-05-18 14:52:33 +03:00
3820a60d2c
Работающий TOTP 2fa
2026-05-17 18:59:54 +03:00
e562e4d9e9
feat(sync): перевёл группы синхронизации на Room и добавил контроль совместимости
2026-05-17 18:03:14 +03:00
5777f8e459
feat(storage): добавлены маршруты и экраны для управления текстовыми секретами и 2FA токенами
2026-05-13 20:39:55 +03:00
f551efe4a6
feat(ui): добавлены новые состояния и компоненты для отображения статуса работы
2026-05-13 17:22:31 +03:00
6c18a1d741
feat(sync): добавлен механизм снятия блокировки синхронизации для хранилищ
2026-05-13 14:43:27 +03:00
f38b3dfbb4
feat(sync): добавил механизм синхронизации хранилищ и управление группами
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-12 23:46:31 +03:00
61bcaa95d8
Исправлено много варнингов
2026-05-11 22:18:15 +03:00
3928ac5409
Большая реструктуризация проекта
2026-05-11 19:33:32 +03:00
d60cd9053a
refactor(vault): extract BaseStorage and align storage interfaces
...
Consolidate duplicated meta-info and clear logic into BaseStorage. Promote
system file accessors and DataPage-based flows into IStorageAccessor. Use Long
for vault disk space to support cloud byte counts. Combine local and remote
storages in VaultsManager so UnlockManager sees all backends.
Yandex Disk REST integration (phase B) is deferred to a follow-up change.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-03 20:25:59 +03:00
1034e134c2
Большой рефакторинг
...
Из domain выкинуты типы vault, теперь он ничего не знает о Yandex. Объявления провайдеров вынесены в vault-api, а реализации в data
2026-04-27 02:47:02 +03:00
75162e2d64
Новый конвейер задач и уведомлений
2026-04-21 01:52:31 +03:00
b3c00b1719
Добавлен Yandex
2026-04-19 00:22:05 +03:00
586e2b61fd
Ещё чистка
2026-04-18 22:47:49 +03:00
047eaa2f59
Небольшая чистка
2026-04-18 22:24:51 +03:00
d806e3a8a1
Добавлен foreground сервис
2026-04-18 21:38:09 +03:00
db9463c2c6
Полное управление шифрованием и ключами
2026-04-18 17:36:29 +03:00
3455b91bca
Новый юзкейс удаления хранилищ
2026-04-17 22:28:22 +03:00
51436401da
OpenedStorages больше не nullable
2026-04-17 22:16:28 +03:00
d965dd8609
UnlockManager больше не Vault
2026-04-17 22:15:59 +03:00
Пытков Роман
5fd96003db
IUnlockManager теперь IVault
2026-03-31 00:57:04 +03:00
Пытков Роман
8a80dac408
Поправлен клик сквозь экран загрузки
2026-03-30 12:43:35 +03:00
Пытков Роман
53fee48e64
Исправление для юнит теста
2026-03-30 05:43:56 +03:00
Пытков Роман
2d433671d0
Опциональное шифрование имён файлов
2026-03-30 05:42:23 +03:00
Пытков Роман
27b3e40362
Статичный IV для имён файлов
2026-03-30 04:50:30 +03:00
Пытков Роман
111e0216dc
Удаление кошельков
2026-03-27 04:21:39 +03:00
Пытков Роман
bf058db21b
Диалог изменения имени
2026-03-27 04:09:45 +03:00
Пытков Роман
9d68b780c8
Отображение хранилищ как деревья
2026-03-26 21:52:39 +03:00
Пытков Роман
4b7e12585e
Мета информация о хранилищах хранится в бд
2026-03-26 07:56:39 +03:00
Пытков Роман
5c05c9d2f1
Обновление времени при записи, StorageMetaInfo
2026-03-25 06:37:38 +03:00
51174dc2b2
Реализован UnlockManager
2026-03-24 09:26:34 +03:00
Roman Pytkov
4c54120f22
Тесты для Encryptor
2026-03-20 17:58:07 +03:00
Roman Pytkov
b439496db2
Проверка ключа
2026-03-20 17:25:10 +03:00
Roman Pytkov
87282178b7
Вынос шифрования в отдельный класс
2026-03-20 17:09:32 +03:00
Roman Pytkov
b7ee7dbaf4
Dispose для EncryptedStorage, скрытые системные файлы для LocalStorage
2026-03-20 16:57:52 +03:00
Roman Pytkov
7094517264
Dispose для EncryptedStorage
2026-03-20 13:35:47 +03:00
Roman Pytkov
ad7c210679
Небольшая правка
2026-03-20 13:30:37 +03:00
Roman Pytkov
12bd7babd8
Добавлено StorageEncryptionInfo для локальных хранилищ
2026-03-20 13:17:33 +03:00
Roman Pytkov
270f0d671d
Создана база данных
2026-03-20 12:11:25 +03:00
Roman Pytkov
c82fd305fc
compile-time проверка IStorageInfo
2026-03-20 07:07:28 +03:00
Roman Pytkov
9b11c071c1
sealed для IStorageInfo
2026-03-20 06:46:46 +03:00
Roman Pytkov
0dbaf3a2f5
Вынос IStorageInfo и IVaultInfo
2026-03-20 06:44:10 +03:00