Page MenuHomePhabricator

[keyserver] Determine which infos have invalid hashes based on specs
ClosedPublic

Authored by tomek on Aug 28 2023, 6:28 AM.
Tags
None
Referenced Files
F2827982: D8979.id30581.diff
Fri, Sep 27, 1:16 PM
F2827979: D8979.id30437.diff
Fri, Sep 27, 1:16 PM
F2827913: D8979.id.diff
Fri, Sep 27, 1:15 PM
F2827676: D8979.diff
Fri, Sep 27, 1:01 PM
Unknown Object (File)
Fri, Sep 20, 5:37 AM
Unknown Object (File)
Sun, Sep 15, 8:13 PM
Unknown Object (File)
Aug 29 2024, 3:11 AM
Unknown Object (File)
Aug 25 2024, 5:32 PM
Subscribers

Details

Summary

Check if a key is top level - it means that there are infos in the collection which aren't synchronized. Iterate over them and compute hashes for each item.
When a spec doesn't specify innerHashKey, return the values immediately - currently we do that only for currentUserInfo because there's exactly one current user.

https://linear.app/comm/issue/ENG-4631/migrate-checkstate-from-session-utils-to-a-spec

Depends on D8977

Test Plan

Modify keyserver db and check if the store get fixed.

Diff Detail

Repository
rCOMM Comm
Branch
state-sync
Lint
No Lint Coverage
Unit
No Test Coverage

Event Timeline

tomek requested review of this revision.Aug 28 2023, 6:46 AM

So it means that innerHashKey is defined only for collections, and should be null / undefined for top-level, non-iterable infos

This revision is now accepted and ready to land.Aug 29 2023, 2:21 AM

So it means that innerHashKey is defined only for collections, and should be null / undefined for top-level, non-iterable infos

Yes, exactly.