Работающего релиза пока нет; архитектура и криптографические профили экспериментальны. Не используйте проект для production identities или хранения реальных секретов.
Не публикуйте secrets и воспроизводящие данные реальных пользователей в issues. Канал приватного сообщения об уязвимостях необходимо настроить до публичного релиза; контакт не задан и не выдумывается.
До выпуска обязательны проверки auth, ACL, recovery, revocation, sync, uploads и admin UI, а также независимый анализ криптографического дизайна.
Экспериментальные JSON-карточки описаны в ADR-021. Пароль и управляющий секрет не отправляются серверу; неправильный пароль/AEAD и ограничения KDF проверяются клиентами. Это не аппаратный vault и не полный master-seed профиль.
Отзыв grant закрывает сессии этого устройства. Если устройство уже владеет исходным root secret (как исходный Flutter-профиль), оно может намеренно выдать новый grant; нужна ротация root. Экспериментальный серверный API, Flutter UI и protected journal реализованы. Dart/WebCrypto проверяют root history; восстановление v2 работает в обоих клиентах. UI ротации в /space и pairing после ротации реализованы и проверены. Рабочие устройства из delegated-card не сохраняют этот управляющий секрет. Утёкшая карточка и пароль требуют отзыва recovery grant с каскадом дочерних устройств. Полное обнуление временных копий секретов в управляемой памяти не заявляется.
QR-камера включается только по явному действию. Flutter Windows использует camera_windows 0.3.0: официальные ограничения. В локальном BSD-пакете GetFilePathForPicture перенесён в Temp, чтобы кадры не попадали в Pictures/OneDrive. Приложение удаляет точный созданный кадр после обработки; при аварийном завершении процесса временный кадр может остаться в Temp. Серверу видео/кадры не передаются, микрофон не включается. Браузер использует camera=(self), microphone=() и закрывает tracks при завершении/отмене/скрытии вкладки.
Реально используемый storage backend — Dart/DPAPI. Active/journal теперь физически разделены безопасными partition filenames; encrypted write проходит через flushed temporary file и MoveFileEx(REPLACE_EXISTING | WRITE_THROUGH). Старый общий storage читается и мигрируется. Вызов crash checkpoint удалён compile-time из обычной сборки, включается только в отдельном drill target. Прерывается только созданный тестовый процесс с проверенным executable path и случайным namespace. Это проверка process crash; она не обещает сохранность при потере диска или повреждении всех резервных копий.
Экспериментальный ADR-024 добавляет роли и индивидуальные ACL каналов. Scope устройства и блокировка пространства ограничивают эти правила. Public preview раскрывает только метаданные; содержание требует сессии и read. История, журнал и каждый кадр подписки проверяют доступ под блокировками; уже переданные данные невозможно отозвать. Делегированный manage меняет метаданные, но не ACL или публичность. Подробности: ADR-024.
На новой базе действует first_login: первый клиент с успешной подписью входа получает owner. Доступный клиенту API позволяет ему претендовать на первоначальное владение; это намеренное изменение поведения по запросу пользователя. Статические страницы и metadata сами прав не дают. После выбора владелец не заменяется новым входом. Старые установки сохраняют свой owner/manual режим. Подробности: ADR-026.