Document high-level dependencies between architecture components
Created by: felixfbecker
This is an "MVP" for documenting our cross-team dependencies better in the spirit of RFC 368: Communicating Inter-Team Functional Dependencies and other discussions, by simply adding "Dependencies" sections to each component we have in our high-level architecture overview.
Each dependency should reference another high-level architecture component, then explain in short bullet points the most important aspects of how the other component is being used. This can help teams understand how their components are used by other teams, e.g. for consideration in planning larger technical and functional changes (whether that is identifying a change could negatively affect another component, or positively help another component, e.g. by making something more performant).
It can also serve as a way to document and notify other teams when usage patterns change, by creating a PR to edit this page and tagging the other team as an FYI (for example, the way code insights uses search could change as we switch from the client-based to the backend-based approach).
I started filling out some dependencies for other teams as well to the best of my knowledge, if any of those seem wrong or incomplete, please feel free to push to this branch or make a follow-up PR. Each team should feel ownership over their own team's "Dependencies" section just like the rest of the component description, so please just treat what I added there merely as placeholders