Data Normalization

    Problem

        Data Normalization

          We have troubles when the user mutates content on the web, for example updating a profile. Many of our queries return data about the same underlying resources, such as search, batch getAccount, (and the feed?).

          Because our clients use the ReactQuery cache, every query/request is cached separately. So the metadata for a profile (for example) is duplicated in many places around our cache and we need to be careful to keep them in sync.

          Currently, when something like the profile changes, we aggressively invalidate all things which might have changed. This aggressive invalidation results in heavier-than-necessary use of our API. We have no strategy for invalidating data loaded by the remix loader.

      The main problem is on web, so we are going to focus on fixing how web works

    Solution

      search

        return in the author, return the aliasAccount

      we need to define the way we

    Scope

    Rabbit holes

    No goes

    Search Example:

      there is two accounts: acct1 (Eric Desktop) and acct2 (Eric web)

      Eric desktop delegate to Eric web (link)

      there's a comment made by acct2 (Eric web) but we need to show "Eric Desktop"

      result: "comment content: author -> Eric desktop"

        acct1 -> Eric Web

        acct2 -> Eric Desktop

    {
      // ...search result data
      
    }

    move document examples

      docA