The schema is the contract between the client and the backend. Define it early so the group agrees on the data model before M2 implementation. - [ ] Define the core catalog: album, artist, track and genre, including their relationships - [ ] Define user-generated data: review and crate item - [ ] Define `searchAlbums` with a cursor-based connection, total count and planned facet counts - [ ] Define mutations for `upsertReview`, `deleteReview` and `toggleCrate` **Acceptance:** - `schema.graphql` describes the GraphQL contract for the catalog, search, reviews and crate. - `docs/data-model.md` explains the important relationships and modelling choices. - This PR deliberately does not implement PostgreSQL, a GraphQL server or resolvers. Those belong to M2 in #5 and #6.