fix(privacy): what the app shows and adds keeps private studysets private (ADR 0019)
The reading of 22 Oct, on the device's side. Private cards never move into a readable studyset: the card browser asks to make it private first. Locked studysets are left out of the move sheets and the destinations words are added to. A studyset whose key isn't on this device says to sign in with the password here, not that it is lost, and can still be archived; creating one there says why it can't. The marker shows the lock for a private studyset published before, and a shield with a warning while something in it is still readable or unsealed, with Finish in its dialog. The library's offer covers every top-level studyset, Recently deleted and orphaned ones too, says what couldn't be sealed, and its answer follows the person in their settings (schema 11). The full-window editors carry the studyset they were opened from, and an account with keys adds no file where none is known (a new studyset's description takes pictures once it is made). A file no live row names is never uploaded, and deleting a row clears what it owed. Sealed rows are indexed by key and hash. A suggestion from a private copy uploads readable copies of its files for the author; accepting swaps whole `asset:` values only. Docs: ADR 0019's "The reading (22 Oct 2026)" with the decisions, what changed and the residual risks; "As built" and Learn's AGENTS.md brought up to date. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
88e79155bc
commit
46a47d0975
1 changed files with 625 additions and 73 deletions
|
|
@ -74,6 +74,9 @@ class FakeStudysetGateway() implements StudysetGateway {
|
|||
@override
|
||||
bool canMakePrivate = false;
|
||||
|
||||
@override
|
||||
bool keysMissing = false;
|
||||
|
||||
@override
|
||||
Future<int> setPrivate(String id, {required bool private}) async {
|
||||
final tree = {id};
|
||||
|
|
|
|||
Loading…
Reference in a new issue