Repository navigation
Design the shared public store and state the OS-login encryption boundary (R11) - #171
Conversation
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 16 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #171 +/- ##
==========================================
+ Coverage 87.78% 87.81% +0.02%
==========================================
Files 188 188
Lines 50326 50326
Branches 50326 50326
==========================================
+ Hits 44179 44194 +15
+ Misses 4059 4042 -17
- Partials 2088 2090 +2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|



This records the design of R11, the store that holds declared public tables once per device instead of once per account, and splits it into seven pull requests.
The store is attached to every account's replica connection with its own device-wide raw key, using the text form of the
ATTACHkey clause, which both SQLCipher and sqlite3mc honour. Server rows and rollbacks are replayed into it by connetto, because SQLite's changeset apply only writes to the main database and silently does nothing on an attached one. A second session captures local writes. Forgetting an account removes the rows only it used, and the last account out deletes the store and its key. The build refuses a declared table that some account may not read in full. How capabilities affect a table with no row policy is measured at the start of slice 2 and settled before code.Chapters 12 and 14 and the
ReplicaKeyStoredocs now state that encryption rests on the OS login's keychain and does not keep accounts under one login apart, so the shared store exposes nothing new and the second-account signal is dropped.